驅動無法執行到probe函式

2021-08-20 05:54:48 字數 382 閱讀 1534



驅動無法執行到probe函式

要進入probe  只有裝置名稱和驅動名稱一致才會進入,目前linux都採用dts 來管理系統資源,所以要注意dts中的裝置名稱和驅動中的名稱是否一致 包括是否有空格

例子:原來dts 沒有這一項的  自己從別處拷貝過來的  但是驅動是有現成的

gpio_keypad;

驅動:static const struct of_device_id key_dt_match = ,

{},};

明顯驅動的這個名稱帶了乙個空格  導致了和dts不一致 無法執行probe

另外是有可能是 platform_driver  寫法新老平台以及android版本存在不一致  建議找當前平台可以正常工作的驅動做參考

驅動註冊的probe函式

probe的呼叫 從driver register看起 int driver register struct device driver drv klist init與init completion沒去管它,可能是2.6的這個裝置模型要做的一些工作。直覺告訴我要去bus add driver。bus...

驅動註冊的probe函式

probe的呼叫 從driver register看起 int driver register struct device driver drv klist init與init completion沒去管它,可能是2.6的這個裝置模型要做的一些工作。直覺告訴我要去bus add driver。bus...

驅動註冊的probe函式

probe的呼叫 從driver register看起 int driver register struct device driver drv klist init與init completion沒去管它,可能是2.6的這個裝置模型要做的一些工作。直覺告訴我要去bus add driver。bus...