溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

VxBus Driver如何初始化

發(fā)布時(shí)間:2021-12-22 09:57:48 來源:億速云 閱讀:153 作者:小新 欄目:互聯(lián)網(wǎng)科技

這篇文章主要介紹VxBus Driver如何初始化,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

VxBus Driver的初始化一般分為三步,入口函數(shù)通常使用xxxRegister()的形式。如果VxWorks啟動(dòng)之后再去調(diào)用它 - 例如  在usrAppInit()里,它的加載過程會(huì)比較簡單。

VxBus Driver如何初始化

而WindRiver默認(rèn)提供的Driver,都是在OS的啟動(dòng)過程中加載的。通常,xxxRegister()是在sysHwInit()中注冊,具體的位置由CDF文件決定。其第一步初始化(*devInstanceInit)隨后被調(diào)用,例如X86的PCI Device,就是在注冊PCI Host Controller的Driver時(shí)調(diào)用。所以,所有PCI Device的Driver都會(huì)在這個(gè)Controller之前被注冊

VxBus Driver如何初始化

這個(gè)注冊過程大致是

$(BSP)/sysALib.s/sysInit() -> $(prj)/prjConfig.c/usrInit() -> $(BSP)/sysLib.c/sysHwInit() -> $(prj)/prjConfig.c/hardWareInterFaceInit() -> $(prj)/prjConfig.c/hardWareInterFaceBusInit() -> $(driver)/xxxRegister()
而后兩步初始化操作,都是在sysHwInit2()里調(diào)用的。區(qū)別是:第二步的(*devInstanceInit2)是直接被調(diào)用;而第三步的(*devInstanceConnect)是在一個(gè)  新任務(wù)中調(diào)用,這就導(dǎo)致它的  真正執(zhí)行時(shí)機(jī)很可能就是OS把所有功能都加載完成之后了
詳細(xì)的調(diào)用關(guān)系如下圖  

VxBus Driver如何初始化

以上是“VxBus Driver如何初始化”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI