
25 Nov
2013
25 Nov
'13
8:46 a.m.
Hello Dirk,
Am 21.11.2013 13:34, schrieb Eibach, Dirk:
While debugging an I2C problem I found in soft_i2c_read() and soft_i2c_write():
if(write_byte(addr>> shift)) { PRINTD("i2c_read, address not<ACK>ed\n"); return(1); }
and
if(write_byte(addr>> shift)) { PRINTD("i2c_write, address not<ACK>ed\n"); return(1); }
This means that these functions are left without sending a STOP condition to the bus and with SCL held low. Is that really intended?
This seems a bug to me ... could you send a patch?
bye, Heiko
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany