1. 程式人生 > >如何在Ubuntu下使用TF/SD 卡製作Exynos 4412 u-boot啟動盤

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

/** ****************************************************************************** * @author    Maoxiao Hu * @version   V1.0.1 * @date       Feb-2015 ****************************************************************************** * < COPYRIGHT 2015 ISE of SHANDONG UNIVERSITY > ******************************************************************************
**/ 硬體:迅為iTop 4412精英版 & TF卡 軟體:系統自帶終端即可 首先,我們應該清楚TF/SD卡可以看作一張完全空白的“白紙”,之所以有分割槽、分割槽格式的區別不過是在在這張“白紙”的某些特定位置寫入了一些資料來指示分割槽、分割槽格式。 其次,我們還應該清楚,在TF/SD啟動模式下,exynos 4412一上電,內部iROM會從TF/SD的第1個Block(第512個位元組開始)讀取8KB的資料到內部iRAM,然後從內部iRAM的0地址開始執行。 原理搞清楚了,那麼首先需要把TF/SD低階格式化-所有Block全部寫0x00

1、連線TF/SD卡,開啟終端

使用ls /dev/sd* 命令檢視所有連線到電腦上磁碟。 問題:在這裡為什麼不用df命令? 原因是假設你的TF/SD卡只有一個分割槽但這個分割槽已損壞,或者有多個分割槽但是沒有一個可以識別的分割槽,那麼此時df命令無法檢視到tf/sd卡,所以說直接列出dev下所有sd開頭的裝置,是終極方案。
(1)假設你的tf/sd卡只有一個分割槽,無論這個分割槽是否損壞,現象應該是類似這樣的: 插上tf/sd卡之前: NewImage 插上tf/sd卡之後: NewImage 很明顯多出的/dev/sdb就是本文後續操作的物件。 (2)假設你的tf/sd卡已有多個分割槽,無論這些分割槽是否損壞,現象應該是類似這樣的: 插上tf/sd卡之前: NewImage 插上tf/sd卡之後: NewImage 這裡多出5個裝置,但是我們仍然將/dev/sdb作為本文後續操作的物件。 注意:我這裡是/dev/sdb,但是還有可能是/dev/sdc等等其它符號,必須根據你實際出現的裝置名稱進行以下操作,否則有可能損壞系統分割槽,非常重要,切記!!!

2、使用16進位制模式開啟TF卡檢視資料(可跳過)

我們使用linux自帶命令hexdump檢視tf/sd卡中的資料: 命令為:

sudo hexdump -n 1048576 /dev/sdb

其中-n 1048576代表打印出前1M=1024*1024=1048576位元組的資料。

執行結果(部分)如下:

NewImage

*代表內容為0x00,為了節省空間故作省略。

3、清空TF卡上前1MB的資料

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

我們利用系統/dev下的zero裝置,清零tf/sd卡前1MB。

執行結果如下:

NewImage

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

再次hexdump檢視tf/sd卡資料,發現:

NewImage

前1MB空間成功清0x00。

4、燒寫uboot啟動檔案

在這裡,我們待燒寫的檔案為 u-boot-iTOP-4412.bin 這個檔案。

終端執行命令:

NewImage

if代表輸入檔案地址,以你u-boot-iTOP-4412.bin 這個檔案的實際地址為準,of代表輸出地址,以你tf/sd卡的實際裝置號為準。

到這裡,就可以將tf/sd卡插入開發板上電啟動了,為了證明我們燒寫無誤,我們執行後續操作。

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

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

在這裡,我們為了顯示方便,只打印前5KB資料,發現bin檔案被正確的複製到了sd卡的512位元組處:

NewImage

6、將TF卡接到開發板上,撥碼開關選擇TF啟動,上電:

NewImage

Done。

相關推薦

如何在Ubuntu使用TF/SD 製作Exynos 4412 u-boot啟動

/** ****************************************************************************** * @author    Maoxiao Hu * @version   V1.0.1 * @date       Feb-2015 *****

如何在Mac使用TF/SD 製作Exynos 4412 u-boot啟動

/** ****************************************************************************** * @author    Maoxiao Hu * @version   V1.0.1 * @date       Dec-2014 ****

Ubuntu檢視SD裝置名的幾個方法

Ubuntu下使用SD卡查詢SD卡的裝置檔名:sudo fdisk -leg:Disk /dev/sdb:14.9 GiB,15931539456 位元組,31116288 個扇區單元:扇區 / 1 * 512 = 512 位元組扇區大小(邏輯/物理):512 位元組 / 512 位元組I/O 大小(最小/最

jLink V8除錯exynos 4412 u-boot的幾點補充

/** ****************************************************************************** * @author    Maoxiao Hu * @version   V1.0.0 * @date       Dec-2014

使用eclipse與jLink V8除錯exynos 4412 u-boot

# connect to the J-Link gdb servertarget remote localhost:2331# Reset the targetmonitor resetmonitor sleep 10# Setup GDB for faster downloads#set remote

MacSD燒錄樹莓派系統

err ucc sd卡 來源 mic cal com ner nth 1.mac 磁盤工具 抹掉sd卡 為fat 2. df -h 看清sd卡號 3. 卸載sd卡 diskutil unmount /dev/disk2s2 Volume UNTITLED on d

Linux格式化sd和重新分割槽

Linux下格式化sd卡和重新分割槽 寫這篇文章的最初是因為手邊有張sd卡被人分了區。結果在windows上8G的卡只能認出512M。為了把“被吞掉”的部分找回來,我們就要使用linux下強大的分割槽工具fdisk。 在進行下述

ubuntu雙顯示禁用獨顯

我的筆記本是Y460雙顯示卡,在ubuntu下預設開啟的是N卡,非常費電,而且平時工作集顯就可以了。下面的工作可以開機禁止獨顯,只使用集顯。 檢視你的系統是否有/sys/kernel/debug/vgaswitcheroo/switch這個檔案,如果有,在/etc/rc.local中新增下面兩句: ec

Ubuntu檢視顯示型號及NVIDIA驅動版本

檢視GPU型號 lspci | grep -i nvidia 檢視NVIDIA驅動版本 sudo dpkg --list | grep nvidia-* http://gwang-cv.github.io/2017/08/07/Ubuntu%E4%B8%8B%E

ubuntu主機顯示問題

檢視顯示卡驅動是否成功安裝 首先得安裝mesa-utils,在終端輸入命令: sudo apt-get install mesa-utils 然後再執行命令 glxinfo | grep rendering 如果結果是“yes”,證明顯示卡 驅動已經成功安裝。 本機測試如下,

STM32CubeMX的SDIO模式SD讀寫測試(附原始碼)

1.問題描述:使用STM32CubeMX,配置SDIO的4bit模式,對SD卡進行讀寫測試。 2.準備工作: 軟體版本:STM32CubeMX–4.22.0 ;KEIL5 硬體平臺:原子戰艦V3 (1)軟體設定: I. SDIO選擇,這裡選擇4

ubuntu 雙顯示Optimus筆記本 CUDA配置教程(成功解決黑屏問題)

Intel出於筆記本獨顯發熱量大的考慮開發了Optimus技術,在Ubuntu平臺上,實際上集顯負責二維渲染,獨顯負責三維渲染。(這裡我們要明確一個問題,intel的核芯顯示卡HD系列負責我們桌面的顯示!) 現在的CUDA SDK包含了Nvidia Driver Cuda

ubuntu檢視顯示驅動是否已經成功安裝

執行命令:glxinfo | grep rendering如果結果是“yes”,證明顯示卡驅動已經成功安裝。如果提示有問題,可能是系統裡面沒有安裝mesa-utils,安裝過程:在終端輸入命令:sudo apt-get install mesa-utils然後再執行命令:gl

C語言中linux檢視sdmount的位置

linux 查詢sd卡mount的位置: #include<sstream> //std::istringstream #include<stdio.h> //FILE and popen #include<string> ......其

Ubuntu安裝nodejs4.x,並實現開機自動啟動forever程序守護nodejs應用後臺執行

一、在Ubuntu下安裝nodejs4.x 官方文件的方法最簡單,不會出錯 Node.js v4.x: NOTE: If you are using Ubuntu Precise or Debian Wheezy, you might want to read a

50 在Ubuntu掛載exfat格式的行動硬碟/U

exfat檔案格式是唯一一個在OSX、win7和ubuntu系統下都能使用的檔案格式,其能被osx和win7原生支援,並且支援4G以上的檔案,但是ubuntu由於版權問題沒法直接支援exfat,所以當插入該格式行動硬碟的時候會提示無法掛載,此時可以通過如下方法解決: sudo add-apt-reposi

跟我一步一步製作一個基本的linux啟動

       原創文章,轉載請註明出處,謝謝!               作者:清林,部落格名:飛空靜渡 這是一篇自己很早寫的文章了,當時根據網上的一些教程一步一步製作,本來想把自己做的過程放到網上,可以西一值忙於公司專案,沒有時間,去年想放上來的時候發現csdn上傳不

nfs啟動u-boot啟動後從ubuntu tftp下載核心及裝置樹,檔案系統掛載在nfs伺服器目錄

U-Boot# setenv netargs "setenv bootargs console=${console} ${optargs}    root=/dev/nfs  rootfstype=nfsroot    nfsroot=${serverip}:${rootpath}   ip=${ipaddr

Android HTTP載文件並保存到本地或SD

create 信息 存儲設備 pub action 解決 成功 使用 文件是否存在 想把文件保存到SD卡中,一定要知道SD卡的路徑,獲取SD卡路徑: Environment.getExternalStorageDirectory() 另外,在保存之前要判斷SD卡

Ubuntu安裝程式的三種方法 ubuntu製作本地源

在ubuntu當中,安裝應用程式我所知道的有三種方法,分別是apt-get,dpkg安裝deb和make install安裝原始碼包三種。下面針對每一種方法各舉例來說明。 apt-get方法 使用apt-get install來安裝應用程式算是最常見的一種安裝方法了,比如我要安裝build-essenti