Nanopi SDIO 接口驅動簡要分析

 

 

這裏比較關鍵的是 mmc_rescan 這個函數,它能夠探測出 sdio 總線上的器件如:sdio設備、sd卡、emmc 等,函數

系統初始化時會主動調用 mmc_rescan 來探測一次設備,spa

以後會調用延時 work: mmc_schedule_delayed_work(&host->detect, HZ)  以固定的頻率來探測設備,以保證有設備接入時能夠第一時間被檢測到,這種機制屬於熱插拔,而這種檢測的方式相似於 USB 的中斷傳輸方式。code

host->detect 被初始化爲: INIT_DELAYED_WORK(&host->detect, mmc_rescan),因此係統中在一直循環調用 mmc_rescan。blog

 

圖示的 sdio 設備是以 broadcom 無線網卡驅動爲例的,當初就是想分析 wifi 驅動,因此就牽連出了這麼多,接口

最後發現 broadcom 的驅動略龐大,貌似把 mac80211 給取替了,io

因此後來轉頭先分析 USB 接口的無線網卡,搞起來就就輕鬆許多,待這款網卡徹底基本分析透徹後寫出隨筆,再回來搞 broadcom。class

相關文章
相關標籤/搜索