rokkonet

PC・Androidソフトウェア・アプリの開発・使い方に関するメモ

カーネルアップデート時のドライバーモジュールアップデートの自動化

2018 Dec. 31.
2018 Dec. 23.
2018 Nov. 14.
2018 Oct. 28.

【TVチューナー PT2 の例】

dkmsパッケージインストール

# apt update && apt install dkms

ソースファイル配置

$ cd PT2/DRIVER/SOURCE/driver/
$ make clean
$ sudo cp -r ./* /usr/src/pt1-17b4f7b5dccb/

dkms設定

/usr/src/pt1-17b4f7b5dccb/dkms.conf を次の内容で作成する。
PACKAGE_NAME="pt1"
PACKAGE_VERSION="17b4f7b5dccb"
CLEAN="make clean"
MAKE="make"
BUILT_MODULE_NAME="pt1_drv"
DEST_MODULE_LOCATION="/kernel/drivers/video/"
AUTOINSTALL="YES"
 

ドライバーインストール

"# make install"でインストールされたファイルを削除する。
  PT2/DRIVER/SOURCE/driver/Makefileに記述された "install: $(TARGET)"セクションの
  install -m 644 $(TARGET) /lib/modules/`uname -r`/kernel/drivers/video
  でインストールされた
  /lib/modules/`uname -r`/kernel/drivers/video/pt1_drv.ko
  を削除する。
 
# dkms install -m pt1 -v 17b4f7b5dccb 
 

インストール確認

# dkms status | grep pt1
pt1, 17b4f7b5dccb, 4.15.0-38-generic, x86_64: installed

ドライバーファイルの配置場所
 /lib/modules/`uname -r`/updates/dkms/pt1_drv.ko 
 

ドライバ読み込み確認

$ lsmod | grep pt1_drv
$ ls -l /dev/pt1*

ドライバ読み込み

# modprobe pt1_drv
 

アンインストール

# dkms uninstall -m pt1 -v 17b4f7b5dccb
 

ソースパッケージの登録削除

# dkms remove -m pt1 -v 17b4f7b5dccb --all