diff options
Diffstat (limited to 'common/soft_i2c.c')
-rw-r--r-- | common/soft_i2c.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/common/soft_i2c.c b/common/soft_i2c.c index 3d0e08c..b3642da 100644 --- a/common/soft_i2c.c +++ b/common/soft_i2c.c @@ -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; @@ -288,7 +285,10 @@ int i2c_probe(uchar addr) { int rc; - /* perform 1 byte read transaction */ + /* + * perform 1 byte write transaction with just address byte + * (fake write) + */ send_start(); rc = write_byte ((addr << 1) | 0); send_stop(); |