i2cアドレスを所有するモジュールドライバを見つける方法は?

i2cアドレスを所有するモジュールドライバを見つける方法は?

Pythonを使ってI2Cバスを介して通信したいです。ただし、そのアドレスはすでに他のドライバーが使用しているアドレスなので使用できません。

# i2cdetect -y 0
    0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --    

# i2cget -y 0 0x1b
Error: Could not set address to 0x1b: Device or resource busy

私は以下の指示に従いました。この回答

# cat /sys/bus/i2c/devices/0-001b/modalias 
wm8731

この回答の作成者によると、wm8731は「このデバイスを使い続けるカーネルドライバの名前モジュールを無効にしても効果はありません。

# rmmod wm8731
Error: Module wm8731 is not currently loaded

このアドレスのドライバを無効にするにはどうすればよいですか?

ベストアンサー1

カーネル構成ファイルのカーネルソースコードでドライバを無効にした後、カーネルを再構築する必要があります。

おすすめ記事