溫馨提示×

溫馨提示×

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

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

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

發(fā)布時間:2021-09-27 10:25:59 來源:億速云 閱讀:194 作者:柒染 欄目:系統(tǒng)運維

本篇文章給大家分享的是有關(guān)如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

首先,我們應該清楚TF/SD卡可以看作一張完全空白的“白紙”,之所以有分區(qū)、分區(qū)格式的區(qū)別不過是在在這張“白紙”的某些特定位置寫入了一些數(shù)據(jù)來指示分區(qū)、分區(qū)格式。

/**

******************************************************************************

* @author    Maoxiao Hu

* @version   V1.0.0

* @date       Feb-2015

******************************************************************************

* < COPYRIGHT 2015 ISE of SHANDONG UNIVERSITY >

******************************************************************************

**/

硬件:迅為iTop 4412精英版 & TF卡

軟件:系統(tǒng)自帶終端即可

其次,我們還應該清楚,在TF/SD啟動模式下,exynos 4412一上電,內(nèi)部iROM會從TF/SD的第1個Block(第512個字節(jié)開始)讀取8KB的數(shù)據(jù)到內(nèi)部iRAM,然后從內(nèi)部iRAM的0地址開始運行。

原理搞清楚了,那么首先需要把TF/SD低級格式化-所有Block全部寫0。

1、連接TF/SD卡,打開終端

使用ls /dev/sd* 命令查看所有連接到電腦上磁盤。

問題:在這里為什么不用df命令?

原因是假設(shè)你的TF/SD卡只有一個分區(qū)但這個分區(qū)已損壞,或者有多個分區(qū)但是沒有一個可以識別的分區(qū),那么此時df命令無法查看到tf/sd卡,所以說直接列出dev下所有sd開頭的設(shè)備,是終極方案。

(1)假設(shè)你的tf/sd卡只有一個分區(qū),無論這個分區(qū)是否損壞,現(xiàn)象應該是類似這樣的:

插上tf/sd卡之前:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

插上tf/sd卡之后:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

很明顯多出的/dev/sdb就是本文后續(xù)操作的對象。

(2)假設(shè)你的tf/sd卡已有多個分區(qū),無論這些分區(qū)是否損壞,現(xiàn)象應該是類似這樣的:

插上tf/sd卡之前:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

插上tf/sd卡之后:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

這里多出5個設(shè)備,但是我們?nèi)匀粚?dev/sdb作為本文后續(xù)操作的對象。

注意:我這里是/dev/sdb,但是還有可能是/dev/sdc等等其它符號,必須根據(jù)你實際出現(xiàn)的設(shè)備名稱進行以下操作,否則有可能損壞系統(tǒng)分區(qū),非常重要,切記?。?!

2、使用16進制模式打開TF卡查看數(shù)據(jù)(可跳過)

我們使用linux自帶命令hexdump查看tf/sd卡中的數(shù)據(jù):

命令為:

sudo hexdump -n 1048576 /dev/sdb

其中-n 1048576代表打印出前1M=1024*1024=1048576字節(jié)的數(shù)據(jù)。

執(zhí)行結(jié)果(部分)如下:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

*代表內(nèi)容為0x00,為了節(jié)省空間故作省略。

3、清空TF卡上前1MB的數(shù)據(jù)

由于4412的uboot大小基本在幾百kB的量級,所以清空前1MB空間足夠用,注意這里的清空不是格式化,而是填充0x00。

我們利用系統(tǒng)/dev下的zero設(shè)備,清零tf/sd卡前1MB。

執(zhí)行結(jié)果如下:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

這里的count=2000代表清空2000個block,一個block=512B,2000個正好為1MB。

再次hexdump查看tf/sd卡數(shù)據(jù),發(fā)現(xiàn):

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

前1MB空間成功清0。

4、燒寫uboot啟動文件

在這里,我們待燒寫的文件為 u-boot-iTOP-4412.bin 這個文件。

終端執(zhí)行命令:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

if代表輸入文件地址,以你u-boot-iTOP-4412.bin 這個文件的實際地址為準,of代表輸出地址,以你tf/sd卡的實際設(shè)備號為準。

到這里,就可以將tf/sd卡插入開發(fā)板上電啟動了,為了證明我們燒寫無誤,我們執(zhí)行后續(xù)操作。

5、確認燒寫正確(可跳過)

我們需要確定從tf/sd卡的第一個block開始處,確實正確燒寫了u-boot-iTOP-4412.bin這個文件,下面我們對比一下,用到的命令同樣還是hexdump。

在這里,我們?yōu)榱孙@示方便,只打印前5KB數(shù)據(jù),發(fā)現(xiàn)bin文件被正確的復制到了sd卡的512字節(jié)處:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

6、將TF卡接到開發(fā)板上,撥碼開關(guān)選擇TF啟動,上電:

如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤

以上就是如何在Ubuntu下使用TF或SD卡制作Exynos 4412 u-boot啟動盤,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

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

AI