110Gd (IT8718F) のためにカーネルモジュール it87.c をビルドする (2)
110Gd (IT8718F) のためにカーネルモジュール it87.c をビルドする (1) - daily dayflower の続きです。
その後の奮闘(昨日の記事の追記参照)で insmod
を使った場合に it87.ko がきちんと ITE8718F を認識されるところまでは来ました。
あとは,modprobe
で正常に読み込みできるようにすればいいのですが……どうやら昨日も言及した extra, misc, updates, weak-updates というディレクトリにそれほどの意味はない((これらのディレクトリを使用しているドライバは外部スクリプト等で自力で insmod
しているようです))みたいなので,modprobe
を実行すると insmod
が自動的に実行されるようにすればよいでしょう。
まず it87.ko を /lib/modules/`uname -r`/updates
直下におきます。
次に modprobe.conf
の機能を使って,it87 をロードする際に insmod
を実行されるようにします。といっても modprobe.conf
を直接いじるのは今後のこと(=rpm 化)を考えると敬遠したいので,modprobe.d/update-it87
というファイルを作成して,そこに書くことにします。
# modprobe.d/update-it87 install it87 /sbin/insmod /lib/modules/`/bin/uname -r`/updates/it87.ko
これだけです。install
という設定子ではシェルコマンドを記述できるので,こんな感じで書けば大丈夫です。また,依存情報はカーネルモジュール自身に記述されているので,別途 i2c-isa, i2c-core, hwmon, hwmon-vid 等をロードする必要はありません。
ではロードしてみましょう。
% sudo /sbin/modprobe it87 % /sbin/lsmod | grep it87 it87 60204 0 hwmon_vid 35905 1 it87 hwmon 36553 1 it87 i2c_isa 39105 1 it87 i2c_core 56129 5 it87,eeprom,i2c_isa,i2c_ec,i2c_i801
無事ロードされました。
これで lm_sensors サービスからも自動的に読み込まれるようになりました。