現在要把下面的驅動模組新增到核心樹中:
步驟:/*
module_param.ko num.c
*/#include #include #include #include static int num = 0;
static char* string="this is a test";
static int array[3]=;
static amount=3;
module_param(num, int, s_irugo|s_iwusr);
module_param(string, charp, s_irugo|s_iwusr);
module_param_array(array, int, &amount, s_irugo|s_iwusr);
module_parm_desc(num,"it's a test num");
module_parm_desc(string, "it's a test string");
module_parm_desc(array, "it's a test array");
static int __init module_param_init(void)
static void __exit module_param_exit(void)
module_init(module_param_init);
module_exit(module_param_exit);
module_license("gpl");
module_author("bang");
module_description("module study");
module_supported_device("none");
1、進入核心目錄把module_param.c放到drivers/module_param/目錄下
mkdir drivers/module_param
cp module_param.c drivers/module_param/
2、修改drivers目錄下的kconfig和makefile檔案
vimkconfig ---------》增加 source "drivers/module_param/kconfig"
vim makefile ---------》增加 obj-$(config_module_param) += module_param/
3、進入module_param 目錄,增加makefile、kconfig檔案
kconfig內容:
config module_param --------------------------(注意,這裡不是寫config_module_param)
tristate "module param" ---------------(標籤的命名是module param可以有三種選擇)
default y
---help---
this is my test
makefile內容:
obj-$(config_module_param) +=module_param.o
5、make menuconfig 選擇編譯方式
如果是選擇built-in 方式, 在make uimage時驅動會新增到uimage 映象中
如果是選擇modules的方式, make modules會在module_param目錄生成.ko檔案
openwrt增加核心模組的方法
下面就是增加核心模組的方法了 進入package目錄,建立模組目錄 cd backfire package mkdir example 進入example目錄,建立makefile檔案和 路徑 cd example touch makefile mkdir src makefile具體內容如下 th...
Ubuntu編譯核心驅動模組
1 編寫hello world.c核心模組原始檔 2 檢視核心版本。我的主機安裝的是ubuntu14.04核心版本是3.13.0 24 generic 3 編寫makefile指令碼 4 編譯與測試 執行make命令開始編譯,編譯通過。載入核心模組 insmod hello world.ko 檢視載...
核心驅動模組編寫規範
書寫格式範例 include include 模組入口函式規範 static int init func init void static void exit func exit void 關閉init中占用的資源 printk byebye s n module module init func ...