從0到1燒寫u-boot詳細教程
拿到一塊嶄新的ARM開發板基本是一臉懵逼,想著怎麼用串列埠與之通訊,怎麼把u-boot.bin檔案燒寫進入。很多人在這裡就止步了其實這裡很簡單,接下來就給大家講解一下。
一.開發環境:
主機:Ubuntu12.04
開發板:Exynos4412
U-boot:2010.03
二.製作SD卡啟動盤
2.1 格式化SD卡
把準備好的SD卡插入windows上,把SD卡採用FAT32檔案系統格式化。
如果格式不成功,推薦實現https://www.fageka.com/i/0VqTTe24509,下載它自動化強制格式FAT32檔案系統格式。
2.2 燒寫啟動用的U-boot.bin
SD卡接入Ubuntu系統,使用命令" df -l "確認新接入的碟符,我們這裡的碟符是/dev/sdb1
這裡我們把要燒寫工具包和和要燒寫的u-boot.bin搬到Ubuntu系統中。這是要說明一下這裡的u-boot.bin採用的是2010.03的版本,這個版本的U-boot.bin具有sdupdate命令的操作功能,在後面我們會使用這個命令把SD中的檔案拷貝到開發板的eMMC分割槽中。大家可自己製作,這裡我們製作了一個該系列板子通用的u-boot.bin檔案和通用的燒寫工具包。連結:
拷貝到Ubuntu系統中:(檔案展示)
在這裡執行命令: ./u_build.sh sd_write
命令實現: dd if(input file)= u-boot-fs4412.bin(2010) of= /dev/sdb seek = 1(512位元組) 在sd卡上建立sdupdate在目錄下存放要燒寫的uboot ----->u-boot-fs4412.bin(2013)
一個指令碼指令就自動化執行所有的燒寫流程。
2.3 分割槽SD卡
把開發板的撥碼開關置於SD卡啟動模式,啟動開發板進入uboot模式,執行下面命令:
-----> fdsik -c 1 300 300 300
-----> fatformat mmc 1:1
-----> ext3format mmc 1:2
-----> ext3format mmc 1:3
-----> ext3format mmc 1:4
SD卡製作完畢
三.SD卡內的檔案燒寫進eMMC
3.1 建立sdupdate資料夾
把SD插入windows系統,新建資料夾“sdupdate”,把要燒入的檔案放入資料夾,這裡把你現在需要的u-boot.bin加入,這裡的u-boot.bin是用於對開發板進行初始化,需要什麼功能,玩家自己去設定,與前面的哪個2010.03的U-boot.bin(只用做SD啟動的引導和sdupdate功能)不一樣。
3.2 燒寫
將SD卡插入開發板,設定開發板為SD卡啟動模式,啟動開發板
---使用命令“sdfuse flashall”,就可以將uboot,核心以及檔案系統更新到開發板的eMMC中,這裡選擇只更新U-boot
整個過程簡單,照者來做,如果問題,請聯絡我。