RK3568驅動指南|第二篇 字符設備基礎-第8章 驅動模塊編譯進內核實驗
然后將第三章編寫的hello.c文件拷貝到hello文件夾內。如下(圖8-2)所示:
輸入“touch Kconfig”命令創(chuàng)建Kconfig文件,Kconfig文件內容如下所示:
然后“touch Makefile”命令創(chuàng)建Makefile文件,Makefile文件內容如下所示:
obj-$(CONFIG_HELLO)+=helloworld.o
接下來修改上一級目錄的Kconfig文件和Makefile文件,也就是driver/char目錄。Makefile添加如下圖(圖8-3)所示內容。
obj-y += hello/
Kconfig添加如下圖(圖8-4)所示內容:
source “drivers/char/hello/Kconfig”
最后打開menuconfig圖形化配置工具,在配置界面選擇helloworld驅動。把驅動編譯進Linux內核,用 * 來表示,所以配置選項改為*。如果想要將驅動編譯為模塊,則用M來表示,配置選項改為M。這里我們選擇成 *
然后將光標移動到save,保存配置,如下圖(圖8-6)所示:
保存到.config文件,如下(圖8-7)所示:
退出配置界面,然后輸入以下命令便可以編譯源碼了。
編譯成功之后,進入到drivers/char/hello目錄下,可以看到會生成對應的.o文件。就說明已經(jīng)成功將驅動編譯進內核。
將編譯好的內核鏡像燒寫到開發(fā)板上后,在開發(fā)板系統(tǒng)啟動的時候也可以成功看到加載helloworld驅動,如下圖(圖8-10)所示:
如果在圖形化配置界面中選擇的M,也就是編譯成驅動模塊,則生成helloworld.ko文件如下圖(圖8-11)所示:
更多內容:可以關注北京迅為公眾號,B站搜索迅為RK3568開發(fā)板
*博客內容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。