移植:說(shuō)時(shí)遲那時(shí)快,現(xiàn)在開(kāi)始移植工作(以下是我一步步重新做一遍,力求說(shuō)得詳細(xì)點(diǎn),感謝我吧^_^)我以B2板子的程序做為模板來(lái)做. #cd u-boot-1.1.2#cd board #cp -R dave myboard (這是我取的板子名字,可以換上你的,但是后面的也要跟著來(lái)?yè)Q哦^_^)
#cd myboard#mv B2 myboards3c44b0 (自己取個(gè)板子名) #cd myboards3c44b0 # mv B2.c myboards3c44b0.c 修改myboards3c44b0里面的Makefile, 把B2改成myboards3c44b0,編譯時(shí)如果報(bào)的其它類似找不到B2的錯(cuò)誤也是把相應(yīng)的B2改成myboards3c44b0來(lái)處理。
1)其中的myboards3c44b0.c文件是板的初始化代碼,看一下就知道,根據(jù)你的板上自帶的44binit.s來(lái)修改吧。memsetup.S文件主要是存儲(chǔ)器的初始化設(shè)置,其實(shí)也是44binit.s里面的一部分。
2)其實(shí)board這里要修改的不多,先跳過(guò)flash部分吧,我們來(lái)看一下cpu設(shè)置部分吧。u-boot-1.1.2里面已經(jīng)加入了對(duì)s3c44b0的支持,讓我們來(lái)看一下cpu/s3c44b0里面的部分吧。看到start.S這個(gè)文件了嗎?要修改的其實(shí)并不多,按照你的板設(shè)置一下中斷跳轉(zhuǎn)矢量就行了,或者上網(wǎng)查一下吧,應(yīng)該很容易看明的。其中cpu.c這個(gè)文件簡(jiǎn)直不用修改,再來(lái)看一下serial.c這個(gè)文件吧,改一下波特率的設(shè)置就行,就是你用多少M(fèi)的CPU頻率的話對(duì)應(yīng)的波特率參數(shù)設(shè)置問(wèn)題,其實(shí)B2已經(jīng)做得不錯(cuò)的了,很多子程序都不用自己寫(xiě)的了^_^,在我的板上是這樣設(shè)置的,參考一下吧:#if CONFIG_S3C44B0_CLOCK_SPEED==66 ,把所有的這些66改成60,原因,我的實(shí)驗(yàn)板上用的頻率是60(44B0頻率為64M)。然后其它分頻系數(shù),寄存器初始化設(shè)置,可以參考一下44blib.c,在這里我給出我的設(shè)置出來(lái)吧,可以參考一下。 case 115200:#if CONFIG_S3C44B0_CLOCK_SPEED==60divisor = 32; UFCON0 = 0x0; ULCON0 = 0x03; UCON0 = 0x245; UBRDIV0 = divisor; 我在這方面算術(shù)不好,所以都是參考人家的。
3)好,再加上個(gè)頭文件:cd u-boot-1.1.2/include/configscp B2.h myboards3c44b0.h這個(gè)頭文件其實(shí)要改的地方還挺多的,我等下再說(shuō)怎樣修改。先回到u-boot.1.1.2目錄,
4)在Makefile里面加上這部分,不會(huì)的話就模仿B2來(lái)寫(xiě)吧^_^在B2的這部分文件B2_config : unconfig @./mkconfig $(@:_config=) arm s3c44b0 B2 dave后面加上這部分:myboards3c44b0_config : unconfig @./mkconfig $(@:_config=) arm s3c44b0 myboard3c44b0 myboard 切記在@./mkconfig $(@:_config=) arm s3c44b0 myboard3c44b0 myboard前面的是Tab來(lái)的,萬(wàn)萬(wàn)不能用空格代替,因?yàn)樗强窟@個(gè)來(lái)識(shí)別命令的!
5)好,現(xiàn)在可以在u-boot-1.1.2目錄下執(zhí)行如下命令:Make distclean(還是用這個(gè)吧,比較徹底)Make myboards3c44b0_configMake看看有沒(méi)有錯(cuò),有錯(cuò)的話按著提示來(lái)改,如果沒(méi)錯(cuò)的話應(yīng)該就能生成u-boot.bin這個(gè)文件,現(xiàn)在還不能用哦,因?yàn)檫@幾是B2的一個(gè)仿制品而已(注:在我的機(jī)上到這一步可沒(méi)有報(bào)錯(cuò)哦,你一步步按著來(lái)做的話應(yīng)該也不會(huì)有什么錯(cuò)誤吧^_^)
u-boot移植日記2
更新時(shí)間: 2007-02-02 21:45:28來(lái)源: 粵嵌教育瀏覽量:1060
粵嵌動(dòng)態(tài)
推薦閱讀
- ·嵌入式實(shí)時(shí)操作系統(tǒng)的任務(wù)調(diào)度優(yōu)化策略與實(shí)踐
- ·湖北精實(shí)機(jī)電科技有限公司專場(chǎng)招聘會(huì)(長(zhǎng)沙校區(qū))
- ·信號(hào)量與互斥鎖在資源競(jìng)爭(zhēng)中的協(xié)同控制機(jī)制
- ·粵嵌科技2025年中總結(jié)大會(huì)召開(kāi)——擘畫(huà)產(chǎn)教融合新藍(lán)圖
- ·Linux字符設(shè)備驅(qū)動(dòng)框架解析:file_operations的核心作用與實(shí)現(xiàn)
- ·廣東朝歌數(shù)碼科技股份有限公司專場(chǎng)招聘會(huì)
- ·深化產(chǎn)教融合,共筑技能人才培養(yǎng)新生態(tài) —— 廣州華立學(xué)院到訪粵嵌從化校區(qū)為深化產(chǎn)教
- ·校企合作新突破 | 粵嵌科技與三亞學(xué)院共探產(chǎn)教融合新路徑
- ·粵嵌科技入選國(guó)家級(jí)職業(yè)數(shù)字展館聯(lián)合建設(shè)單位,賦能計(jì)算機(jī)程序設(shè)計(jì)員高技能人才培養(yǎng)
- ·嵌入式實(shí)時(shí)操作系統(tǒng)的性能優(yōu)化與實(shí)現(xiàn)路徑