Change the sequence of events in soft_i2c.c:send_ack() to keep from
authorWolfgang Denk <wd@pollux.denx.de>
Sun, 12 Mar 2006 23:50:48 +0000 (00:50 +0100)
committerWolfgang Denk <wd@pollux.denx.de>
Sun, 12 Mar 2006 23:50:48 +0000 (00:50 +0100)
incorrectly generating start/stop conditions on the bus.
Patch by Andrew Dyer, 26 Jul 2005

CHANGELOG
common/soft_i2c.c

index ac984168d4abb340cf709bade3948d229037ba69..889cfd5e9e1ec59761f53a3b4413750a2fc45239 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
 Changes since U-Boot 1.1.4:
 ======================================================================
 
+* Change the sequence of events in soft_i2c.c:send_ack() to keep from
+  incorrectly generating start/stop conditions on the bus.
+  Patch by Andrew Dyer, 26 Jul 2005
+
 * Fix bug in [id]cache_status commands for MPC85xx processors;
   should look at LSB of L1CSRn registers to determine if L1 cache is
   enabled, not the MSB.
index 48e3d3e1c2602766374c080fe68ab80f0d2bda6f..b3642dafc24564b44b151db1e4f0cffd50b3473e 100644 (file)
@@ -164,13 +164,10 @@ static void send_ack(int ack)
        volatile immap_t *immr = (immap_t *)CFG_IMMR;
 #endif
 
-       I2C_ACTIVE;
        I2C_SCL(0);
        I2C_DELAY;
-
-       I2C_SDA(ack);
-
        I2C_ACTIVE;
+       I2C_SDA(ack);
        I2C_DELAY;
        I2C_SCL(1);
        I2C_DELAY;