999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

ARM平臺(tái)下U-Boot的移植

2009-04-29 00:00:00馮忠?guī)X童英華
電腦知識與技術(shù) 2009年4期

摘要:該文介紹了U-Boot的頂層目錄結(jié)構(gòu)及其特點(diǎn),并以S3C2410為例子說明了U-Boot在ARM平臺(tái)下的移植。

關(guān)鍵詞:ARM平臺(tái);U-Boot移植

中圖分類號:TP316文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2009)04-0837-02

Transplanting of U-Boot under the ARM Platform

FENG Zhong-ling1, TONG Ying-hua2

(1.Department of Physics,Qinghai Normal University, Xining 810008, China; 2.Department of Computer, Qinghai Normal University, Xining 810008, China)

Abrstract: In this paper, U-Boot top-level directory structure and its characteristics are discriped, and the transplanting of U-Boot in the ARM platform be showed for the S3C2410 as special examples.

Key words: ARM platform; U-Boot transplanting

1 引言

Bootloader是嵌入式操作系統(tǒng)內(nèi)核運(yùn)行之前的一段程序,它類似于PC機(jī)中的BIOS程序,可以完成硬件的初始化,并建立內(nèi)存空間的映射圖的功能,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適的狀態(tài),為最終調(diào)用系統(tǒng)內(nèi)核做好準(zhǔn)備,是嵌入式系統(tǒng)中非常重要的一部分,也是系統(tǒng)運(yùn)行工作的必要組成部分。在嵌入式系統(tǒng)中常見的Bootloader有:VIVI、Blob、RedBoot、ARMboot、U-Boot等。本文將對U-Boot及其在ARM平臺(tái)下的移植作較詳細(xì)的介紹。

2U-boot工程簡介

最早,德國DENX軟件工程中心的Wolfgang Denk基于8xxrom的源碼創(chuàng)建了PPCBOOT工程,并且不斷添加處理器的支持。后來,Sysgo Gmbh把ppcboot移植到ARM平臺(tái)上,創(chuàng)建了ARMboot工程。然后以PPCBOOT工程和ARMboot工程為基礎(chǔ),創(chuàng)建了U-Boot工程。

現(xiàn)在U-Boot已經(jīng)能支持PowerPC、ARM、X86、MIPS體系結(jié)構(gòu)的上百種開發(fā)板,已經(jīng)成為功能最多、靈活性最強(qiáng)并且開發(fā)最積極的開放源代碼Bootloader。目前仍由DENX的Wolfgang Denk維護(hù)。

U-Boot的源碼包可以從http://sourceforge.net/project/u-boot下載,還可以訂閱該網(wǎng)站活躍的U-Boot Users郵件論壇,這個(gè)郵件論壇對于U-Boot的開發(fā)和使用都很有幫助。

3U-Boot源碼結(jié)構(gòu)

U-Boot源程序包在頂層目錄下有18個(gè)子目錄,分別存放和管理不同的源程序。這些目錄中所要存放的文件有其規(guī)則,可以分為三類:

第一類目錄與處理處理器體系結(jié)構(gòu)或者開發(fā)板硬件直接相關(guān);

第地類目錄是一些通用的函數(shù)或者驅(qū)動(dòng)程序;

第三類目錄是U-Boot的應(yīng)用程序、工具或者文檔。

表1列出了U-Boot頂層目錄下各級目錄存放原則。

U-Boot的源代碼包含對幾十種處理器、數(shù)百種開發(fā)板的支持??墒菍τ谔囟ǖ拈_始板,配置編譯過程只需其中的部分程序。

4 ARM平臺(tái)下的U-Boot移植

移植需在事先已建立好硬件開發(fā)環(huán)境并在PC上安裝好針對ARM的交叉編譯工具的情況下進(jìn)行。

在移植前,首先需要先分析一下U-Boot已經(jīng)支持的開發(fā)板,為了使U-Boot支持新的開發(fā)板,一種簡便的做法是在U-Boot已經(jīng)支持的開發(fā)板中選擇一種和目標(biāo)板接近的,并在其基礎(chǔ)上進(jìn)行修改,選擇的原則是:首先處理器相同,其次處理結(jié)構(gòu)相同,然后是以太網(wǎng)等外圍接口。這里具體以S3C2410 arm920t處理器為例,具體分析其移植過程。

U-Boot-1.1.2版本已支持S3C2410,移植主要步驟如下:

4.1 下載U-Boot包并解壓到指定目錄

$ cd/u-boot

$ tarjxvfu-boot-1.1.2.tar.bz2

$ cdu-boot-1.1.2

4.2 配置Makefile文件

1) 在Makefile中修改交叉編譯工具鏈前綴CROSS_COMPILE:

CROSS_COMPILE = arm–linux–

2) 修改Makefile文件,開發(fā)板添加新的配置選項(xiàng),使用已有的配置項(xiàng)目為例。

smdk2410_config : unconfig

@ . /mkconfig $(@ : _config = )armarm920tNULLs3c2410

參考上面兩行,添加下面兩行。

s3c2410_config : unconfig

@ . /mkconfig $(@ : _config = )armarm920tNULLS3C2410

4.3 移植U-Boot-1.1.2支持開發(fā)板

1) 在board目錄中建立s3c2410目錄,并復(fù)制smdk2410目錄中的內(nèi)容。

$ cpsmdk2410/* s3c2410

并將部分文件重命名。如下:

board/s3c2410/config.mk

board/s3c2410/flash.c

board/s3c2410/s3c2410.c

board/s3c2410/Makefile

board/s3c2410/memsetup.S

board/s3c2410/u-boot.lds

2) 為開發(fā)板添加新的配置文件,再修改。

$ cpinclude/configs/smdk2410.h include/configs/s3c2410.h

如果是為一顆新的CPU移植,還要?jiǎng)?chuàng)建一個(gè)新的目錄存放CPU相關(guān)的代碼。

4.4 配置開發(fā)板

$ make s3c2410_config

4.5 編譯U-Boot

$ make

執(zhí)行make命令,編譯成功可以得到U-Boot映像。有些錯(cuò)誤是跟配置選項(xiàng)有關(guān)系的,通常打開一些功能選項(xiàng)會(huì)帶來一些錯(cuò)誤,一開始可以盡量跟參考板配置相同。

4.6 添加驅(qū)動(dòng)或者功能選項(xiàng)

在能編譯通過的基礎(chǔ)上,還要實(shí)現(xiàn)U-Boot的以太網(wǎng)接口,F(xiàn)lash擦寫等。

4.7 調(diào)試U-Boot源代碼

直到U-Boot在開發(fā)板上正常啟動(dòng)。

4.8 通過JTAG 電纜將目標(biāo)板與計(jì)算機(jī)并口連接

燒寫U-Boot到flash,燒寫完成后,復(fù)位實(shí)驗(yàn)板,串口終端就會(huì)顯示U-Boot的啟動(dòng)信息。

5 結(jié)束語

本文較為詳細(xì)地介紹了U-Boot源代碼構(gòu)成,以及為開發(fā)者提供了在ARM平臺(tái)下移植U-Boot的過程與方法,在移植過程中強(qiáng)調(diào)其可操作,步驟清晰,對嵌入式系統(tǒng)的Bootloader開發(fā)有重要的參考意義。

參考文獻(xiàn):

[1] 李亞鋒,歐文盛.ARM嵌入式Linux系統(tǒng)開發(fā)從入門到精通[M].北京:清華大學(xué)出版社,2007.

[2] 馬忠梅,李善平.ARM Linux嵌入式系統(tǒng)教程[M].北京:北京航空航天大學(xué)出版社,2006.

[3] 孫紀(jì)坤,張小全.嵌入式Linux系統(tǒng)開發(fā)——基于ARM[M].北京:人民郵電出版社,2006.

[4] 李巖,榮盤祥.基于S3C44B0X嵌入式uCLinux系統(tǒng)原理及應(yīng)用[M].北京:清華大學(xué)出版社,2005.

主站蜘蛛池模板: 成人第一页| 久久精品人人做人人爽97| 精品久久人人爽人人玩人人妻| 日本在线免费网站| 国产成人精品免费视频大全五级| 亚洲欧美另类中文字幕| 一级毛片中文字幕| 青青草国产精品久久久久| 久996视频精品免费观看| 免费jjzz在在线播放国产| 免费人成黄页在线观看国产| 欧类av怡春院| 日韩午夜福利在线观看| 波多野结衣一区二区三区四区视频 | 国产你懂得| 国产精品无码一区二区桃花视频| 97se亚洲综合在线天天| 久久亚洲日本不卡一区二区| 免费高清毛片| 黑人巨大精品欧美一区二区区| 狠狠色成人综合首页| 黄色国产在线| 天堂成人av| 三级视频中文字幕| 无码免费试看| 无码高清专区| 亚洲美女视频一区| 欧美综合激情| 国产综合亚洲欧洲区精品无码| 国产一级视频在线观看网站| 婷婷成人综合| 亚洲欧美成aⅴ人在线观看| 成人字幕网视频在线观看| 成人午夜天| 国产精品免费久久久久影院无码| 国产日韩欧美精品区性色| 国产一级片网址| 婷婷五月在线| 亚洲精品午夜无码电影网| 国产精品内射视频| 毛片a级毛片免费观看免下载| 久久久精品无码一区二区三区| 国产福利小视频高清在线观看| 99无码熟妇丰满人妻啪啪| 久久精品一卡日本电影| 日韩精品久久久久久久电影蜜臀| 一级毛片a女人刺激视频免费 | 国产精品成人免费视频99| 亚洲婷婷六月| 国产日韩av在线播放| 欧美日韩国产精品va| 人妻中文字幕无码久久一区| 极品尤物av美乳在线观看| 国产精品网址在线观看你懂的| 国内精品自在欧美一区| 亚洲乱码在线播放| 一区二区在线视频免费观看| 99草精品视频| 免费a在线观看播放| 国产日韩欧美在线视频免费观看| 久久亚洲美女精品国产精品| 免费看美女自慰的网站| 亚洲精品手机在线| 久草国产在线观看| 亚洲欧美日韩中文字幕一区二区三区| 国产尤物视频在线| 日韩不卡高清视频| 午夜天堂视频| 国产亚洲精品无码专| 精品视频在线一区| 久久99蜜桃精品久久久久小说| 三上悠亚一区二区| 欧美精品伊人久久| 亚洲综合色在线| 国产微拍精品| 国产成人高清在线精品| 2020国产在线视精品在| 欧美午夜视频在线| 精品久久人人爽人人玩人人妻| 久久人体视频| 中文字幕无线码一区| 亚洲精品中文字幕午夜|