首先,飛凌的OK6410開發板並不支持JLink燒寫uboot,只能通過SD卡來燒寫,這一點我事先並不知道,他們網店介紹裡並未說明,而且銷售人員也沒有做出任何提示,結果我花了整整一天時間嘗試所有通過JLink燒寫uboot的可能方法,結合網上個別人反映,最終意識到通過JLink完成uboot燒寫是不可能成功的了,後來在銷售人員那裡確認了這一點,對飛凌表示不滿。
本文引用地址:
http://www.eepw.com.cn/article/201611/319457.htm當時買板的時候沒有買SD卡,因為感覺沒什麼用,就想給老闆省點錢,現在沒SD卡不行了,但在尋找JLink燒寫uboot方法的過程中我發現其實只有在燒寫uboot的時候SD卡才是必需的,也就是一旦燒寫成功,以後再燒寫系統或程序就可以通過JLink或minicom了,所以我決定借一塊SD卡,謝天謝地SD卡很順利地借到了——kingston8G。於是按文檔說明收集必需的文件,由於帶的光碟裂了一個角不能正常讀取了(再次對飛凌表示不滿),只能從網上找,在飛凌官方論壇裡找到SD卡燒寫uboot的115網盤連接,但無論是網頁還是客戶端115網盤卻無法下載(除非開通VIP通過離線方式下載),再次對飛凌表示不滿,最終在網店裡發現他們給的一個華為網盤帳號,在網盤裡找到了需要的文件,通過華為網盤客戶端下載成功。
開始按照飛凌給的文檔一步一步的做,但在燒寫mmc.bin(256M版本),並複製u-boot.bin(256M版本)、rootfs.yaffs2(256M版本)和zImage後,SD卡啟動板子時LCD白屏,DNW串口無任何信息輸出,燒寫失敗。聯繫售後,他們說檢測一下卡的質量是否為正品,且最好不要用筆記本自帶讀卡器,因為已經有人反映自帶讀卡器燒寫失敗。同學的SD卡是用在相機裡,我想質量應該沒問題,於是又借來他的讀卡器,再來一遍,結果依舊白屏無任何信息輸出。繼續在網上查找原因,有人說win7兼容性不好,於是我在筆記本上linux下虛擬出的xp中再來一邊,仍舊白屏!無奈了,有人說白屏還有可能是SD卡接觸不好,噢奶奶的,剛買的板子就接觸不好?於是啟動前按著SD卡,並對著白屏的開發板上的按鍵,一頓亂按,咦?紅色led亮了,然後LCD有輸出了!奶奶的,它工作了!Fuck,Fuck,Fuck!
最終,uboot燒寫完成,斷點改用nandflash啟動,成功進入觸摸版linux。總結以下要點:
1.OK6410板必須通過SD卡啟動的方式燒寫uboot。
2.SD_writer在win7下需以管理員身份運行,並點format進行格式化(windows下自行格式化無效),否則會出現」……sd error」。
3.SD卡燒寫uboot完啟動時需要確保SD卡接觸良好,飛凌的SD卡槽接觸不好,需要往裡按,並且要按reset。進入linux後經測試發現,s1為reset鍵(板子上也有標註),s2、s3、s4、s5、s6、s7分別為上、下、左、右、確定、返回。
4.不要使用筆記本自帶SD卡讀卡器,雖然能夠成功燒入mmc.bin,但之後啟動白屏的概率在90%以上。使用單獨的讀卡器來燒寫,如果不行就換讀卡器,換SD卡,這是飛凌官方給的說法,總會換到一個OK6410感到合適的SD卡和讀卡器。
5.飛凌提供的《OK6410-A開發板LINUX3.0.1-2012-09用戶手冊》中有一項表述前後矛盾:
第11頁表格顯示:
rootfs.yaffs2-nand256m(用於觸控螢幕輸入的 yaffs2 文件系統,適用於
rootfs.yaffs2-nand2g(用於觸控螢幕輸入的 yaffs2 文件系統,適用於
而第21頁一鍵燒寫步驟中卻顯示:
rootfs.yaffs2-nand256m專門用於
rootfs.yaffs2-nand2g專門用於
讓人無所適從,我在1G-nandflash的開發板上使用了rootfs.yaffs2-nand2g,能夠啟動。後來燒nand256m,無法正常啟動。後來跟他們技術人員聯繫,他們說是技術手冊有誤,但rootfs.yaffs2-nand2g也有問題,論壇更新資料下載後無問題了。
總之,感覺飛凌的OK6410板子問題很多,健壯性太差,很容易出問題,而可能就是很小的原因就導致板子白屏、無響應,比如SD卡兼容問題,讀卡器問題,而且,uboot燒寫失敗沒有任何信息輸出,查找原因只能憑經驗和運氣。不過,還好最終燒寫成功了,可以開始ARM-Linux嵌入式體驗了。