Ticket #845 (new bug)

Opened 2 years ago

N516: Sometimes I2C controller goes crazy

Reported by: jekhor Owned by: jekhor
Priority: normal Milestone: bluesky
Component: kernel Version: post-0.2 snapshot
Keywords: Cc:
Blocked By: Blocking:

Description

Sometimes lm75 initialization fails with message:

[   78.990000] lm75: probe of 0-0048 failed with error -145

Oscilloscope showed that SCL clock generates continuously in this case.

related code:

                timeout = TIMEOUT;
                while ((i2c_jz_readb(JZ_REG_I2C_SR) & JZ_I2C_SR_DRF) && timeout)
                        timeout--;

                if (!timeout) {
                        dev_warn(&adap->dev, "DRF timeout, length = %d\n", length);
                        i2c_jz_disable();
                        return -ETIMEDOUT;
                }

This bug reproduces very rarely and hard to debug.

Note: See TracTickets for help on using tickets.