Re: [問題] Driver的啟動順序問題?
※ 引述《lomoway10 (lomoway)》之銘言:
: 我有幾個driver,彼此有個啟動順序問題.
: 我要怎麼讓kernel知道要先啟動哪個driver.再去執行哪個driver呢?
: (這裡都是把driver合在kernel裡面,不是build module)
: 另一個問題.假設.順序已經對了.
: 但是第一個driver還沒有initial完.第二個driver已經開始啟動.
: 可是他卻因為第一個還沒完成.而出現probe失敗的訊息.導致initial失敗.
: 這種問題又該怎麼處理?
: 有沒有人有相關的經驗呢??
提供個人淺見,有錯請指正
1. 假設有兩個driver都由 module_init"啟動",所以level是一樣的
這時候,我通常會利用platform 的方式(技巧)來控制;
利用platform_device_register控制"啟動順序"
PS: Makefile也是個方法啦,只是這樣有點限制了driver...
2. Linux 現在的設計,driver的 probe() 還是sequential的吧?
do_initcalls()是一個接一個執行,不會有一個driver還沒有做完就做第二個的
case...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.229.127
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 7 之 7 篇):