Goodix GT911
最重要的事情:检查I2C控制器是否好使;i2c-tools:
我用的是I2C-2,刚开始 I2C-2 一直读不出来东西,
出现 I2C 的 log:"timeout, ipd: 0x10, state: 1"时,此时 I2C 控制器工作正常,但是
cpu 无法响应 I2C 中断,此时可能 cpu0 被阻塞了(一般 I2C 中断都在 cpu0 上面,通过 cat
/proc/interrups 可以查看),或者可能是 I2C 中断位被关闭了。
当出现 I2C 的 log 类似:"timeout, ipd: 0x80, state: 1"时,看到 ipd 为 0x80 打印,可以
说明当前 SCL 被 slave 拉住,要判断被哪个 slave 拉住:
我出现的是"timeout, ipd: 0x10, state: 1,后来发现问题是 I2C的 时钟线在焊接电路的时候接地了(底板子上的器件都是硬件工程师手动焊接的);