<html><head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=euc-kr"><meta http-equiv="Pragma" content="no-cache"><style>Body {font-size:9pt; font-family: µ¸¿ò} P, TR, TD, DIV, SPAN {font-size:9pt; font-family: µ¸¿ò;} P{line-height:160%; margin-top:0; margin-bottom:0;}</style></head><body><P><font face="Times New Roman"><span style="font-size:10pt;">Hi
all~</span></font></P>
<p><font face="Times New Roman"><span style="font-size:10pt;">I have a question
of IBM I2C driver(drivers/i2c/busses/i2c-ibm_iic.c) on PPC440EP.</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">It is described
in PPC440EP's datasheet that PPC440EP provides iic-complying with the
spec. contained the phillips@</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">Semiconductors
document THE I2C Bus and How to Use It- bus interface. </span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">Simply, the i2c
protocol is as followed</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></p>
<P><font face="Times New Roman"><span style="font-size:10pt;">S Slave_Addr Wr [A] Addr [A] Data[A] ... [A] Data [A] P</span></font></P>
<p><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></p>
<P><font face="Times New Roman"><span style="font-size:10pt;">* S (1bit): Start Bit</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> P (1bit): Stop Bit</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Wr(1bit) : Write bit</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Slave_Addr(7bit
or 10bit): I2C Slave Device Address</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Addr(8bit): Internal
Register Address</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Data(8bit): Data</span></font></P>
<p><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">But, now I have
been programming the device driver of MDI180 VGA chip. When I change the MDI180's
register value using i2c,</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">it doesn't work.
After finding the reason, I found that MDI180's i2c is different from that of
Phillipse. </span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">The MDI180's i2c
protocol is as followed</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></p>
<P><font face="Times New Roman"><span style="font-size:10pt;">S Slave_Addr Wr [A] Addr1 [A] Addr2 [A] [Sr] Slave_Addr Wr [A] Data [A] Data
[A] ... [A] P</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;">* S (1bit): Start Bit</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> P (1bit): Stop Bit</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Wr(1bit) : Write bit</span></font></P>
<p><font face="Times New Roman"><span style="font-size:10pt;"> Sr(1bit):
Restart bit</span></font></p>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Slave_Addr(7bit): I2C Slave Device Address</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Addr1(8bit): MSB of Address</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Addr2(8bit): LSB of Address</span></font></P>
<P><font face="Times New Roman"><span style="font-size:10pt;"> Data(8bit): Data</span></font></P>
<p><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">It seems that
if I try to write Addr[15:0], Data[15:0] sequencely, it can be worked.
</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">For example, S Slave_Addr Wr [A] Addr [A] P
S Slave_Addr Wr Data[A] ] Data [A] P</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">But, It doesn't
work. Maybe stop bit between Addr[15:0] and Data[15:0] cause the problem.</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;"> So I tried
to modify the IBM's i2c device driver for implementing the MDI180 I2C protocol.
</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">But I found that
ppc440EP's i2c module is work using address and data buffer. So, it is impossible
to include </span></font></p>
<P><font face="Times New Roman"><span style="font-size:10pt;">I2C Slave Device Address
twice in one i2c packet or remove the stop bit between Addr[15:0] and Data[15:0].
</span></font></P>
<p><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">Is it possibe
to support non-standard i2c protocol(MDI180) using PPC440EP?</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">If it is possible,
please teach me the solution or patch that support non-standard i2c protocol(MDI180)?</span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;"> </span></font></p>
<p><font face="Times New Roman"><span style="font-size:10pt;">For easy understanding,
I attach the MDI180 I2C protocol document.</span></font></p>
<p> </p>
<p> </p>
<p> </p>
<P> Kijun, Kwon</P>
<p> </p>
---------------------------------------------------<br>±Ç±âÁØ(¿ìÆí¹øÈ£: 135-973)<br>¼¿ï °³²±¸ »ï¼ºµ¿ 159-9 µµ½É°øÇן¿ö 13Ãþ (ÁÖ)¾ÆÀ̵ð½º<br>ÀüÈ: 02-3429-9176<br>Æѽº: 02-561-9889<br>ÀüÀÚ¿ìÆí: gjkwon@idis.co.kr<br>ȸ»çȨÆäÀÌÁö: www.idis.co.kr<br>---------------------------------------------------<P> </P><P> </P></body></html>