ubuntu 在 R40e 上 還有 Debian 在 Sempron 2600 上

2013年11月18日 星期一

i2c register in linux

linux kernel 在 register i2c device 時,會一一去 check 同一個 i2c 中,是不是有child 跟你的 id 一樣,
如果有,就 Failed regiser i2c device

driver/i2c/i2c-core.c

i2c_check_addr_busy( )

static int __i2c_check_addr_busy(struct device *dev, void *addrp)
{
        struct i2c_client       *client = i2c_verify_client(dev);
        int                     addr = *(int *)addrp;

        if (client && client->addr == addr)
                return -EBUSY;
        return 0;
}

... 應該要 print 一下 client->name.
這樣才知道 誰衝突了。

沒有留言:

標籤

網誌存檔