過程很坎坷表悬,操作很簡單扎运。
思路如下:
- 查找內(nèi)核是否支持AR8035網(wǎng)卡世吨,發(fā)現(xiàn)uboot的make menuconfig沒有明顯同名驅(qū)動。
在網(wǎng)上查到網(wǎng)卡驅(qū)動基本都一樣驶臊,而且AR8031的驅(qū)動就可以給8035用
image.png
從上面的文章中可以知道挪挤,這款芯片是硬件電路配置出一個“地址”
,暫時不知道干嘛用的关翎,手邊也沒有天嵌核心板電路圖扛门。- 通過這篇移植RTL8211E的文章uboot(2015.04-r0)網(wǎng)卡移植(RTL8211E)得到了很多有用信息。
image.png- 這位兄臺也是yocto環(huán)境纵寝,且uboot版本和我很接近论寨,我的是uboot-2016
- 從這些初始化流程我們可以去搜索關(guān)鍵代碼找到相應(yīng)文件(在uboot源碼目錄下執(zhí)行:grep -rn "phy_init" *)
- sabresd公版就是用的這個8035網(wǎng)卡,所以yocto里下載的源碼肯定有這個驅(qū)動(因?yàn)樵创a就是官方維護(hù)的)
- 只要找到這個宏就能確定到底使用的哪個系列的驅(qū)動爽茴,如果不是AR系列的話uboot肯定不能順利加載驅(qū)動(在uboot源碼目錄下執(zhí)行:grep -rn "宏名稱" *)
通過上面的步驟我們順利找到了這個宏
文章中提示到修改的地方
下面是我修改的代碼葬凳,通過文章標(biāo)題可知他和我的板子并不一樣,他是E9卡片板室奏,我是完整的開發(fā)板火焰,所以我已經(jīng)有心理準(zhǔn)備電路不一樣了。
通過gitk查看修改的代碼
修改了兩處胧沫,看到了他文章里網(wǎng)卡設(shè)備地址要改為5昌简,我卻改為了0,并不是我知道電路琳袄,我試過5江场,失敗了纺酸。
繼續(xù)尋找線索窖逗,我突然想起來了核心板里有天嵌自帶的uboot,他肯定支持的很好餐蔬,我們研究一下他的啟動參數(shù)碎紊。
天嵌官方啟動參數(shù)
我一開始只是搜索phy相關(guān)的日志佑附,前面并沒有找到什么有價值的東西,但是到上圖中的這句話我敏銳的回想起本文第二章圖的文章里面的日志仗考,這么相似又這么不同音同。
試試又不花錢,果斷修改地址為0秃嗜,make权均、dd、上電锅锨、成功_瓷蕖!