




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Linux操作系統(tǒng)移植小組成員:李莉馮曉成董娟婷李文明第一部分嵌入式Linux軟件開(kāi)發(fā)環(huán)境構(gòu)建在Windows上安裝虛擬機(jī)VMware-6.5在虛擬機(jī)上安裝linux(利用光盤(pán)鏡像文件安裝fedora9)安裝VM-tools安裝交叉編譯工具鏈(后續(xù)移植過(guò)程中使用編譯器版本為arm-linux-gcc4.3.3)安裝其他必要工具獲取U-boot源碼(此處版本為u-boot2009.11)獲取linux內(nèi)核源碼(此處版本為linux-2.6.32.2),解壓安裝在fedora9的/opt/FriendlyARM/mini2440/目錄下。配置NFS服務(wù)器安裝串口終端(此處為secureCRT)及USB轉(zhuǎn)串口驅(qū)動(dòng)安裝USB下載程序DNW及其驅(qū)動(dòng)第二部分U-boot移植(一)
建立開(kāi)發(fā)板文件測(cè)試編譯環(huán)境修改頂層Makefile指定交叉編譯器
CROSS_COMPILE=arm-linux-添加開(kāi)發(fā)板配置文件
mini2440_config:unconfig @$(MKCONFIG)$(@:_config=)armarm920tmini2440samsungs3c24x0建立mini2440目錄和文件建立開(kāi)發(fā)板目錄/board/samsung/mini2440
將board目錄下的sbc2410x改名為mini2440并移至samsung目錄下,這樣一來(lái)就成功建立了開(kāi)發(fā)版目錄/board/samsung/mini2440,將該目錄下的sbc2410x.c改名為mini2440.c。修改/board/samsung/mini2440/Makefile
COBJS:=sbc2410x.oflash.o修改為COBJS:=mini2440.oflash.o在include/configs/建立開(kāi)發(fā)板配置文件將該目錄下的sbc2410x.h改名為mini2440.h測(cè)試編譯環(huán)境在u-boot根目錄下:makemini2440_configConfiguringformini2440board…make第二部分U-boot移植(二)
修改引導(dǎo)代碼關(guān)閉AT9200寫(xiě)的LED跳轉(zhuǎn)@ bl coloured_LED_init@ bl red_LED_on修改CPU頻率初始化設(shè)置 關(guān)閉看門(mén)狗、設(shè)置分頻比、禁止中斷(添加代碼較多,不再列出)。 修改lowlevel_init.s文件
匹配mini2440的存儲(chǔ)器配置。修改代碼重新定向部分 修改start.s文件、在mini2440目錄下添加nand_read.c文件、修改Makefile。增加LED1點(diǎn)亮(為了便于觀察)修改/cpu/arm920t/u-boot.lds連接文件
cpu/arm920t/start.o (.text)
board/samsung/mini2440/lowlevel_init.o(.text) board/samsung/mini2440/nand_read.o(.text)
第二部分U-boot移植(三)
修改初始化代碼修改lib_arm/board.c文件
LED3、LED4的點(diǎn)亮和打印信息的輸出
#ifdefined(CONFIG_MINI2440_LED) gpio->GPBDAT=0x0; #endif #ifdefined(CONFIG_CFB_CONSOLE) printf("%s\n",version_string); printf("modifiedbywuying\n\n"); #endif修改mini2440.c文件(內(nèi)容較多)
增加LCD初始化函數(shù)、修改GPIO設(shè)置、LED2的點(diǎn)亮、屏蔽nand控制器初始化代碼、添加網(wǎng)卡芯片(DM9000)的初始化函數(shù)。第二部分U-boot移植(四)
完善目標(biāo)板外設(shè)驅(qū)動(dòng)NandFlash相關(guān)代碼的修改添加yaffs(2)焼寫(xiě)功能添加NorFlash寫(xiě)入功能修改網(wǎng)絡(luò)相關(guān)代碼添加LCD顯示功能
注意:需要在drivers/vedio下添加驅(qū)動(dòng)文件s3c2410_fb.c添加SD卡讀取功能注意:添加3個(gè)驅(qū)動(dòng)代碼文件mmc.c、mmc.h、regs-sdi.h第二部分U-boot移植(五)
修正配置文件添加CONFIG_S3C2440條件定義
對(duì)于s3c2440好多代碼都是借用s3c2410的,所以要對(duì)所有條件編譯中有CONFIG_S3C2410的地方添加CONFIG_S3C2440,這樣才能編譯進(jìn)來(lái)。
Common/serial.c、cpu/arm920t/s3c24x0/下interrupts.c、timer.c、usb.c、usb_ohci.c和driver/i2c/s3c24x0_i2c.c、drivers/rtc/s3c24x0_rtc.c等11個(gè)文件進(jìn)行修改。修改配置文件include/configs/mini2440.h
此處主要做了以下修改: (1)去除了CS8900網(wǎng)卡的定義,添加了DM9000。 (2)使能了JFFS2、FAT文件系統(tǒng)。 (3)使能了USB、SD卡功能。 (5)使能了I2C、EEPROM功能。 (6)使能了LCD功能,以及BMP圖片顯示和字符console的功能。 (7)去除了AMD的NorFlash芯片的定義,增加SSTNorFlash芯片定義。第二部分U-boot移植(六)
編譯、下載重新編譯u-boot makeclean makemini2440_config make
編譯通過(guò)則生成u-boot.bin下載u-boot到開(kāi)發(fā)板NandFlash(此處用USB下載)從NandFlash重啟開(kāi)發(fā)板啟動(dòng),串口終端顯示如下圖,u-boot移植基本完成。第三部分Linux內(nèi)核移植解壓內(nèi)核源代碼
#cd/opt/FriendlyARM/mini2440 #tarxvzflinux-2.6.32.2.tar.gz指定交叉編譯變量
ARCH?=arm CROSS_COMPILE?=arm-linux-建立自己的目標(biāo)平臺(tái)(對(duì)mini2440.c的建立和修改) 復(fù)制mach-smdk2440.c并將其命名為mach-mini2440.c
修改時(shí)鐘源頻率(修改為12M) 將smdk2440替換為mini2440置菜單中的mini2440執(zhí)行menuconfig在菜單中增加mini2440的支持移植nand驅(qū)動(dòng)并修改分區(qū)信息移植yaffs2第三部分Linux內(nèi)核移植移植DM9000網(wǎng)卡驅(qū)動(dòng)激活RTC驅(qū)動(dòng)添加LCD背光驅(qū)動(dòng)移植LCD顯示驅(qū)動(dòng)設(shè)置LinuxLogo添加ADC驅(qū)動(dòng)移植SD卡驅(qū)動(dòng)配置USB外設(shè)第四部分利用U-boot引導(dǎo)內(nèi)核U-boot引導(dǎo)內(nèi)核步驟如下(我們使用nfs服務(wù)器) (1)用U-boot的mkimage工具處理內(nèi)核映像zImage。(2)通過(guò)網(wǎng)絡(luò)、串口、U盤(pán)、SD卡等方式將處理過(guò)的內(nèi)核映像傳輸?shù)絊DRAM的一定位置(30008000)。(3)然后使用”bootm“等內(nèi)核引導(dǎo)命令來(lái)啟動(dòng)內(nèi)核。uImage制作方法 編譯u-boot后,在u-boot/tools/目錄下生成mkimage文件,將其拷貝至/usr/local/bin目錄下,則mkimage命令可在fedora任意目錄下使用,執(zhí)行下面命令,則會(huì)在arch/arm/boot/目錄下生成zImage.img文件。
mkimage-n‘zImage'-Aarm-Olinux-Tkernel-Cnone-a0x30008000–e0x30008040-dzImagezImage.img
也可以在編譯內(nèi)核是直接執(zhí)行makeuImage命令,編譯完成會(huì)生成uImage文件,與上述zImage.img
相同作用的文件。第四部分利用U-boot引導(dǎo)內(nèi)核過(guò)程用交叉網(wǎng)線、串口線、USB線、電源線連接電腦和開(kāi)發(fā)板從
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 無(wú)障礙設(shè)施專(zhuān)項(xiàng)活動(dòng)方案
- 新冠來(lái)了我不怕活動(dòng)方案
- 新年幼兒園體能活動(dòng)方案
- 【長(zhǎng)治】2025年山西長(zhǎng)治市沁縣招聘事業(yè)單位工作人員和到村(社區(qū))工作大學(xué)畢業(yè)生60人筆試歷年典型考題及考點(diǎn)剖析附帶答案詳解
- 文物宣傳活動(dòng)方案
- 文化理念分享會(huì)活動(dòng)方案
- 新港美食活動(dòng)策劃方案
- 新人報(bào)道活動(dòng)策劃方案
- 數(shù)字貨幣活動(dòng)方案
- 春天公司一日游活動(dòng)方案
- 第十七章其他熔化焊接與熱切割作業(yè)課件
- 金融學(xué) 曹龍騏 02教材課件
- 2022年混凝土攪拌站建設(shè)項(xiàng)目可行性研究報(bào)告
- 《覺(jué)醒年代》朗誦稿
- 2022年社會(huì)學(xué)概論考試重點(diǎn)廣東海洋
- 路基工程質(zhì)量通病及防治措施
- 福建省中小學(xué)教師職務(wù)考評(píng)登記表
- 北京市中級(jí)專(zhuān)業(yè)技術(shù)資格評(píng)審申報(bào)表
- 工廠供電課程設(shè)計(jì)1
- 鼠害蟲(chóng)害防治管理制度
- PLM_項(xiàng)目建議書(shū)_PTC
評(píng)論
0/150
提交評(píng)論