**:
#include
#include
static int __init s5pv210_led_init(void)
{
return 0;
static void __exit s5pv210_led_exit(void)
{module_init(s5pv210_led_init);
module_exit(s5pv210_led_exit);
// module_***這種巨集作用是用來新增模組描述資訊
module_license(「gpl」); // 描述模組的許可證
module_author(「mark [email protected]」); // 描述模組的作者
module_description(「s5pv210 led driver」); // 描述模組的介紹資訊
module_alias(「s5pv210_led」); // 描述模組的別名資訊
簡單的說明:
__init 、__exit 、module_init、module_exit都在 中。
module_license、module_author、module_description、module_alias等都在中。
linux驅動模板
1 驅動作為核心模組存在,相當於乙個核心動態庫。2 驅動提供一系列實現好的介面,並將其註冊到作業系統中,等待作業系統按需呼叫。3 驅動的初始化 介面註冊等工作由init module函式完成。該函式類似於windows 驅動中的driverentry。4 init module主要完成以下工作 1 ...
裸機驅動模板
編寫裸機驅動,一般都比較隨意。這通常導致 不統一,移植性差。本例以spi flash來分析一種優秀的裸機驅動編寫模板。首先定義乙個裝置類。flash device class typedef struct flash dev s flash dev t structure of pointers t...
5 3 4 1 裝置驅動模板
http book.51cto.com 2007 08 16 09 37 蘇東 電子工業出版社易飛思公司 5.3.4 裝置驅動程式模板與實現 linux下的驅動程式雖然複雜,但是總結下來還是有很多的規律可尋。linux下的裝置驅動開始程式設計時顯得比較容易,可以輕鬆地開始驅動編寫,但是要把驅動寫好也...