歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

U-Boot-2010-03在S3C2440上的移植

一、准備移植

1.1)平台及硬件介紹

u-boot版本:u-boot-2011-03
Linux平台:Ubutu 10.10
交叉編譯工具:arm-linux-gcc-4.3.2

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

arm-linux-gcc-4.3.2.tgz下載在Linux公社的1號FTP服務器裡,下載地址:

FTP地址:ftp://www.linuxidc.com

用戶名:www.linuxidc.com

密碼:www.muu.cc

在 2011年LinuxIDC.com\4月\Ubuntu 10.10 建立交叉編譯工具4.3.2

下載方法見 http://www.linuxidc.net/thread-1187-1-1.html

U-Boot源代碼下載地址 http://www.linuxidc.com/Linux/2011-07/38897.htm

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

目標板子:             Micro2440
        CPU:           S3C2440
        SDRAM:      64M
        Nor Flash:   39F1601 2M
        Nand Flash: K9F2G08 256M
        網卡:           DM9000EP

1.2)實現功能:

a):支持NORFLASH讀寫

b):支持NANDFLASH讀寫

c):支持NORFLASH引導Linux內核

d):支持NANDFLASH引導內核

e):支持DM9K網卡

f):支持TFTP、TFTP下載

g):支持YAFFS文件系統

h):支持JFFS2文件系統

1.3)獲取u-boot-2011-03源碼 u-boot-2011-03.tar.bz在:點擊獲取u-boot-2011-03源碼

       Uboot啟動流程圖如下

二、建立屬於自己的開發板項目<eilian240>

2.1)源碼解壓進入Uboot主目錄<大家都懂的>

#tar jaxvf u-boot-2010.03.tar.bz2
#cd cd u-boot-2010.03

2.2)克隆目標板<借簽smdk2410>

a)創建eilian240文件

#cd board/samsung/

#mkdir eilian240

#cp -fr smdk2410 eilian240

#cd eilian240

#mv smdk2410.c eilian240.c

2.3)修改eilian240下的Makefile<為什麼我想大家都懂的>

       修改COBJS    := smdk2410.o flash.o --->COBJS    := eilian240.o flash.o

2.4)創建板級頭文件

#cd include/configs/

#cp -fr smdk2410.h eilian240.h

2.5)修改Uboot根目錄下的Makefile文件

#vi Makefile

       修改約164行:CROSS_COMPILE?= arm-linux-

       在約3049行添加:

eilian240_config    :    unconfig
    @$(MKCONFIG) $(@:_config=) arm arm920t eilian240 samsung s3c24x0

*說明:arm    :CPU的架構(ARCH)

             arm920t:CPU的類型

            eilian240:對應在board目錄下建立新的開發板項目的目錄

             samsung:新開發板項目目錄的上級目錄,如直接在board下建立新的開發板項目的目錄,則這裡就為NULL

             s3c24x0:CPU型號

2.6)測試編譯新建的<eilian240>項目

a)回到Uboot主目錄

b)測試:

#make eilian240_config

   如果出現Configuring for eilian240 board...表示設置成功

#make

    編譯完成後在uboot主目錄下生成uboot.bin文件:至此uboot移植第一步完成

Copyright © Linux教程網 All Rights Reserved