
22 Jul
2005
22 Jul
'05
1:38 p.m.
Andrew Dyer wrote:
I am working with the soft i2c code on my target and I believe there is a problem in the send_ack() function.
[snip]
In my case changing the order to:
I2C_SCL(0); I2C_DELAY; I2C_ACTIVE;
I ported U-Boot to the AT91M55800A (ARM7DTMI) which has multi-driver capable GPIOs, but didn't want to spend the time to change the I2C code and left the ACTIVE/TRISTATE mechanism - and also came across the same problem. A 24C08 worked fine, but e.g. a ADV7181 would only give me a few consecutive reads.
So yes, I can confirm there is a problem and also that the above mentioned fix is OK.
Thomas
--
Thomas Kastner
Dipl.-Ing. (FH)
Entwicklung Hard- und Software
MarekMicro GmbH
Fuggerstr. 9
D-92224 Amberg
Tel: +49 96 21 / 97 32 - 124
Fax: +49 96 21 / 97 32 - 199
eMail: thomas.kastner@marekmicro.de
http://www.marekmicro.de
PGP: http://pgpkeys.pca.dfn.de/pks/lookup?search=0xA197D41B