[U-Boot] soft i2c behaviour on address not <ACK>ed

Eibach, Dirk Eibach at gdsys.de
Thu Nov 21 13:34:30 CET 2013


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?

Cheers
Dirk
------------------------------------------------------------------------------------------------
Besuchen Sie unseren Blog auf
http://blog.gdsys.de

oder folgen Sie uns auf:
twitter: http://twitter.com/#!/gdsys
facebook: http://www.facebook.com/pages/Guntermann-Drunck-GmbH/318396891518396
Google+ : https://plus.google.com/100228872787564309232/ 
YouTube: http://www.youtube.com/user/GuntermannDrunck
------------------------------------------------------------------------------------------------
Guntermann & Drunck GmbH Systementwicklung 
Dortmunder Str. 4a 
D-57234 Wilnsdorf - Germany 
Tel: +49 (0) 27 39 / 89 01 - 100  Fax: +49 (0) 27 39 / 89 01 - 120 
E-Mail: mailto:sales at gdsys.de Web: http://www.gdsys.de
------------------------------------------------------------------------------------------------
Geschaeftsfuehrer: 
Udo Guntermann - Martin Drunck - Reiner Ruelmann
HRB 2884, Amtsgericht Siegen - WEEE-Reg.-Nr. DE30763240
USt.-Id.-Nr. DE 126575222 - Steuer-Nr. 342 / 5835 / 1041
------------------------------------------------------------------------------------------------
DQS-zertifiziert nach ISO 9001:2008
------------------------------------------------------------------------------------------------






More information about the U-Boot mailing list