Linuxデバイスドライバ開発 はじめの一歩
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
* Linuxデバイスドライバ開発 はじめの一歩 [#ya31929d]
#seo(description,Linuxのデバイスドライバの書き方をメモ)
#seo(keywords,Linux, Device Driver)
何もしないデバイスドライバを書いてみる。~
ソースファイル名は skel_drv.c
#highlight(c){{
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("GPL v2");
static int skel_init(void)
{
pr_info("%s\n", __FUNCTION__);
return 0;
}
static void skel_exit(void)
{
pr_info("%s\n", __FUNCTION__);
}
module_init(skel_init);
module_exit(skel_exit);
}}
#highlight(end)
Makefileはシンプルに1行だけ
obj-m := skel_drv.o
Makeの仕方は
$ make -C /lib/modules/`uname -r`/build M=`pwd` modules
クリーンする方法は
$ make -C /lib/modules/`uname -r`/build M=`pwd` modules ...
デバイス出来上がったデバイスドライバのロードは
$ sudo insmod skel_drv.ko
アンロードは
$ sudo rmmod skel_drv
実行確認
$ dmesg | tail
:
[472924.981255] skel_drv: loading out-of-tree module tai...
[472924.984092] skel_drv: module verification failed: si...
[472925.004224] skel_init
[472936.566017] skel_exit
これだけで、デバイスドライバを作った気になれる。
#ref(skel_drv_part1.tgz,,ソースコード ダウンロード)
#br
#include(Linuxデバイスドライバ開発,notitle)
#br
#htmlinsert(amazon_book.html);
終了行:
* Linuxデバイスドライバ開発 はじめの一歩 [#ya31929d]
#seo(description,Linuxのデバイスドライバの書き方をメモ)
#seo(keywords,Linux, Device Driver)
何もしないデバイスドライバを書いてみる。~
ソースファイル名は skel_drv.c
#highlight(c){{
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("GPL v2");
static int skel_init(void)
{
pr_info("%s\n", __FUNCTION__);
return 0;
}
static void skel_exit(void)
{
pr_info("%s\n", __FUNCTION__);
}
module_init(skel_init);
module_exit(skel_exit);
}}
#highlight(end)
Makefileはシンプルに1行だけ
obj-m := skel_drv.o
Makeの仕方は
$ make -C /lib/modules/`uname -r`/build M=`pwd` modules
クリーンする方法は
$ make -C /lib/modules/`uname -r`/build M=`pwd` modules ...
デバイス出来上がったデバイスドライバのロードは
$ sudo insmod skel_drv.ko
アンロードは
$ sudo rmmod skel_drv
実行確認
$ dmesg | tail
:
[472924.981255] skel_drv: loading out-of-tree module tai...
[472924.984092] skel_drv: module verification failed: si...
[472925.004224] skel_init
[472936.566017] skel_exit
これだけで、デバイスドライバを作った気になれる。
#ref(skel_drv_part1.tgz,,ソースコード ダウンロード)
#br
#include(Linuxデバイスドライバ開発,notitle)
#br
#htmlinsert(amazon_book.html);
ページ名: