1、首先編譯階段需要編譯出***.dtb;
2、假設用uboot啟動,把***.dtb載入到ram中,並把相應的位址傳遞給linux;
3、linux啟動後依次呼叫setup_machine_fdt、unflatten_device_tree和of_platform_populate完成裝置的註冊;此時所有的裝置都應該註冊到amba匯流排或者platform匯流排;
4、驅動初始化時就可以根據相應的id_table和of_match_table找到對應的裝置進行探測;
setup_machine_fdt函式詳解
linux裝置驅動 輸入子系統
輸入裝置都能用輸入子系統來寫,比如說按鍵 觸控螢幕 滑鼠等,但是有的輸入裝置不止用到了輸入子系統,比如說usb輸入裝置,他們還用到了usb子系統。我們以最簡單的按鍵 直接接到cpu上 為例介紹一下輸入子系統。輸入子系統將硬體相關的 與軟體相關的 分開寫,目的是為了以後編寫修改 簡便。軟體部分系統已經...
Linux裝置驅動之 input子系統
什麼是input input子系統處理輸入事務,任何輸入裝置的驅動程式都可以通過input輸入子系統提供的介面註冊到核心,利用子系統提供的功能來與使用者空間互動。輸入裝置一般包括鍵盤,滑鼠,觸控螢幕等,在核心中都是以輸入裝置出現的。下面分析input輸入子系統的結構,以及功能實現。linux中inp...
Linux裝置驅動 input輸入子系統
不同的輸入裝置 如按鍵 鍵盤 觸控螢幕 滑鼠等 都有它們的差異性 如中斷 讀鍵值 座標值是裝置相關的 及共同性 如輸入事件的緩衝區管理以及字元裝置驅動的file operations介面則對輸入裝置是通用的 因此在linux核心中設計了input輸入子系統來完成輸入裝置之間的共性工作,而我們只需要使...