uboot移植環(huán)境搭建

uboot只是bootloader這個(gè)子功能的一個(gè)軟件而已。
其最終功能就是啟動(dòng)加載kernel。

?:在uboot中輸入問號(hào)丑蛤,可以查看uboot支持的所有命令。


一撕阎、uboot常用命令

學(xué)習(xí)uboot和學(xué)習(xí)shell一樣受裹,知道其命令就可以使用了。
uboot中,不能像shell中一樣按TAB鍵補(bǔ)全棉饶。

1厦章、print

可以寫成縮寫:pri

查看uboot這個(gè)軟件的環(huán)境變量。

環(huán)境變量形式:變量名=變量值

2照藻、setenv袜啃、saveenv

(1)setenv:設(shè)置環(huán)境變量

添加一個(gè)新的變量
setenv abc 100 200:將100 200字符串賦給abc

修改一個(gè)已有變量
setenv abc 500

刪除一個(gè)已有變量
setenv abc

(2)saveenv : 保存環(huán)境變量

使用setenv設(shè)置的環(huán)境變量岩梳,是保存在內(nèi)存的一小塊空間(RAM)上的囊骤。因此,當(dāng)重啟后冀值,就不生效了也物。

把本次設(shè)置的環(huán)境變量從內(nèi)存寫到flash存儲(chǔ)器。

saveenv是一個(gè)通用接口列疗。

  • 如果配置的saveenv是nand flash滑蚯,就會(huì)寫到板子的nand flash中
    燒寫nand時(shí),必須先擦除(Erasing Nand...)抵栈,再燒寫(Writing to Nand...)告材。
  • 有些板子是nor flash,比如路由器古劲,因此可以配置燒到nor flash中
  • 有的還可以設(shè)置燒到SD卡中

3斥赋、ipaddr

uboot網(wǎng)絡(luò)層的設(shè)置,與ipaddr變量的變量名有關(guān)产艾。

setenv ipaddr 192.168.9.120:修改ipaddr變量的變量名疤剑。

uboot為了精簡,沒有集成ping命令的協(xié)議(ICMP)的echo包闷堡,所以如果用PC去ping板子隘膘,數(shù)據(jù)可以發(fā)過去,但是不會(huì)發(fā)送反饋信息杠览,因此永遠(yuǎn)ping不通弯菊。
所以要用板子去ping PC。

板子 ping PC

4踱阿、TFTP

uboot傳輸層管钳,通過TFTP驗(yàn)證通不通。

(1)C / S

C : 開發(fā)板

怎么用客戶端软舌?

// PC上:連誰才漆?哪個(gè)端口?做什么事葫隙?
./client server_ip port xxxx

// uboot
server_ip變成了通過環(huán)境變量serverip來取得
port:tftp這個(gè)命令寫死
xxxx:干什么事情栽烂,由tftp 這個(gè)命令通過輸入?yún)?shù)給 
tftp 20008000 abc 

S :PC
1)windows

  • tftpd:綠色的軟件安裝包躏仇。

2)linux

  • 32bit:sudo apt-get install tftpd-hpa
  • 64bit:sudo apt-get install tftpd openbsd-xinetd
(2)驗(yàn)證機(jī)器中是否運(yùn)行了TFTP
netstat -ua命令

5恋脚、nand

nand命令是uboot提供給程序員燒寫或修改nand flash設(shè)備的命令集合腺办。

flash的內(nèi)部結(jié)構(gòu)是按頁來分的,而不是按bit來分的糟描。

nand [動(dòng)詞] [內(nèi)存地址] [nand flash的內(nèi)部地址] [搬移大小]
// 動(dòng)詞:erase怀喉、write、read

例1:
把nand flash中5M空間讀到內(nèi)存地址21000000(默認(rèn)是16進(jìn)制)中船响,讀1k大小躬拢。

// 1M:2^20  ---> 1 0000...000 (2進(jìn)制:1后面20個(gè)0)---> 0x100000 (16進(jìn)制:1后面5個(gè)0)
// 5M:5 * 1M

nand read 21000000 500000 1024

// nand flash有個(gè)特性:在用之前,需先進(jìn)行初始化见间,即先擦除聊闯。擦除完才能write進(jìn)去。
nand erase 500000 1024    // write前需先erase
nand write 21000000 500000 1024

6米诉、bootm

該命令的功能就是啟動(dòng)kernel菱蔬。
但是bootm后,還在uboot中史侣,kernel并沒有真正啟動(dòng)起來拴泌。

7、go

把程序的PC指針指到一個(gè)地方惊橱,就能運(yùn)行起來蚪腐。
把kernel放到一個(gè)地方,go到該地方税朴,直接從kernel開始運(yùn)行回季,就啟動(dòng)了kernel。

go命令天生啟動(dòng)不了kernel掉房。


二茧跋、內(nèi)核啟動(dòng)條件

內(nèi)核并不是一個(gè)可執(zhí)行的東西,并不是把PC指針指過去就可以運(yùn)行卓囚。內(nèi)核啟動(dòng)是需要條件的瘾杭。

先bootm,再go哪亿。
環(huán)境變量中還必須有bootargs變量粥烁,該變量銜接了uboot和kernel。

1蝇棉、啟動(dòng)參數(shù)

root=:啟動(dòng)的根文件系統(tǒng)在哪個(gè)設(shè)備中讨阻。
設(shè)備信息(如Ram、NFS篡殷、flash)

init=:內(nèi)核啟動(dòng)后钝吮,第一個(gè)可執(zhí)行文件init進(jìn)程從哪里來。

console=:內(nèi)核啟動(dòng)時(shí),使用哪個(gè)設(shè)備作為控制臺(tái)奇瘦。

3個(gè)啟動(dòng)參數(shù)設(shè)置后棘催,內(nèi)核啟動(dòng)了,但是與用戶無法交互耳标,因?yàn)楦募到y(tǒng)還沒有醇坝。需要啟動(dòng)文件系統(tǒng)后,才能與用戶進(jìn)行交互次坡。

2呼猪、部署/燒寫文件系統(tǒng)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市砸琅,隨后出現(xiàn)的幾起案子宋距,更是在濱河造成了極大的恐慌,老刑警劉巖症脂,帶你破解...
    沈念sama閱讀 223,002評論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件乡革,死亡現(xiàn)場離奇詭異,居然都是意外死亡摊腋,警方通過查閱死者的電腦和手機(jī)沸版,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評論 3 400
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兴蒸,“玉大人视粮,你說我怎么就攤上這事〕鹊剩” “怎么了蕾殴?”我有些...
    開封第一講書人閱讀 169,787評論 0 365
  • 文/不壞的土叔 我叫張陵,是天一觀的道長岛啸。 經(jīng)常有香客問我钓觉,道長,這世上最難降的妖魔是什么坚踩? 我笑而不...
    開封第一講書人閱讀 60,237評論 1 300
  • 正文 為了忘掉前任荡灾,我火速辦了婚禮,結(jié)果婚禮上瞬铸,老公的妹妹穿的比我還像新娘批幌。我一直安慰自己,他們只是感情好嗓节,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,237評論 6 398
  • 文/花漫 我一把揭開白布荧缘。 她就那樣靜靜地躺著,像睡著了一般拦宣。 火紅的嫁衣襯著肌膚如雪截粗。 梳的紋絲不亂的頭發(fā)上信姓,一...
    開封第一講書人閱讀 52,821評論 1 314
  • 那天,我揣著相機(jī)與錄音绸罗,去河邊找鬼财破。 笑死,一個(gè)胖子當(dāng)著我的面吹牛从诲,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播靡羡,決...
    沈念sama閱讀 41,236評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼系洛,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了略步?” 一聲冷哼從身側(cè)響起描扯,我...
    開封第一講書人閱讀 40,196評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎趟薄,沒想到半個(gè)月后绽诚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,716評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡杭煎,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,794評論 3 343
  • 正文 我和宋清朗相戀三年恩够,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片羡铲。...
    茶點(diǎn)故事閱讀 40,928評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蜂桶,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出也切,到底是詐尸還是另有隱情扑媚,我是刑警寧澤,帶...
    沈念sama閱讀 36,583評論 5 351
  • 正文 年R本政府宣布雷恃,位于F島的核電站疆股,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏倒槐。R本人自食惡果不足惜旬痹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,264評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望讨越。 院中可真熱鬧唱凯,春花似錦、人聲如沸谎痢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,755評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽节猿。三九已至票从,卻和暖如春漫雕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背峰鄙。 一陣腳步聲響...
    開封第一講書人閱讀 33,869評論 1 274
  • 我被黑心中介騙來泰國打工浸间, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人吟榴。 一個(gè)月前我還...
    沈念sama閱讀 49,378評論 3 379
  • 正文 我出身青樓魁蒜,卻偏偏與公主長得像,于是被迫代替她去往敵國和親吩翻。 傳聞我的和親對象是個(gè)殘疾皇子兜看,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,937評論 2 361

推薦閱讀更多精彩內(nèi)容