1. 程式人生 > >platform 平臺驅動——設備的寫作流程

platform 平臺驅動——設備的寫作流程

vim num 編譯 說明 rds clas config compile HA

說明:在內核源碼裏會有很多已經實現的驅動,對於我們來說只需要寫好設備文件即可,但是我們如何知道驅動需要那些數據,以及有哪些驅動呢?

解決:

1.首先在內核源碼目錄下執行執行菜單配置命令:

  make menuconfig ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-

  產生菜單如下技術分享圖片

2.然後進入要用到驅動,如我要編譯按鍵驅動,所以在 Device Drivers/ Input device support /Keyboards/GPIO BUTTON ,選中後編譯<*>進內核,然後我們寫device數據即可。但是我們怎麽知道驅動需要用哪些數據呢?

3.我們可以在GPIO BUTTON下選擇下面的Help,可以查看驅動代碼的存放路徑,如圖:

技術分享圖片

4.有上圖可以看到驅動文件在源碼下的路徑為 drivers/input/keyboard/ ,但是下面有很多文件,具體在哪裏呢?

5.在源碼目錄下打開上面路徑下的Makefile文件,命令:vim drivers/input/keyboard/Makefile ,在裏面搜索上面 的宏 KEYBOARD_GPIO,結果如下

技術分享圖片

6.其中gpio_keys.c即是按鍵驅動文件,

7.進去後查看probe函數和對應的結構體,寫device文件。

platform 平臺驅動——設備的寫作流程