资讯详情

U-boot移植需要修改哪些文件?

U-boot移植需要修改哪些文件?http://blog.csdn.net/sanlinux/article/details/5000260

最近关于linux移植已经停止了,看来以后要坚持!现在是的liux虽然移植不是很熟悉,但一定要坚持!加油!

U-boot移植需要修改哪些文件?在网上找专家u-boot移植的patch,过滤后,修改后的文件可能涉及以下几点,先列出,再慢慢确认,下一步,我们应该先了解一下u-boot目录结构方便u-boot移植工作,方向很重要!

在u-boot添加目标板支持(2410/2440)(board 目标板相关文件主要包括SDRAM、FLASH驱动)

1 u-boot-rat/board/hugerat/rat2410/config.mk 2008-12-15 23:03:59.000000000 0800 2 u-boot-rat/board/hugerat/rat2410/flash.c 2008-10-19 03:30:31.000000000 0800 3 u-boot-rat/board/hugerat/rat2410/lowlevel_init.S(SDRAM设置) 2008-12-10 19:08:15.000000000 0800 4 u-boot-rat/board/hugerat/rat2410/Makefile 2008-12-16 10:33:56.000000000 0800 5 u-boot-rat/board/hugerat/rat2410/nand_read.c 2008-12-16 11:14:08.000000000 0800 6 u-boot-rat/board/hugerat/rat2410/rat2410.c 2008-12-16 11:56:17.000000000 0800 7 u-boot-rat/board/hugerat/rat2410/u-boot.lds 2008-10-19 03:30:31.000000000 0800

8 u-boot-rat/board/hugerat/rat2440/config.mk 2008-12-16 16:32:08.000000000 0800 9 u-boot-rat/board/hugerat/rat2440/flash.c 2008-10-19 03:30:31.000000000 0800 10 u-boot-rat/board/hugerat/rat2440/lowlevel_init.S(SDRAM设置) 2008-12-10 19:08:15.000000000 0800 11 u-boot-rat/board/hugerat/rat2440/Makefile 2008-12-11 13:53:16.000000000 0800 12 u-boot-rat/board/hugerat/rat2440/nand_read.c 2008-02-29 23:23:10.000000000 0800 13 u-boot-rat/board/hugerat/rat2440/rat2440.c 2008-12-11 16:57:57.000000000 0800 14 u-boot-rat/board/hugerat/rat2440/u-boot.lds 2008-10-19 03:30:31.000000000 0800

 

common 独立于处理器体系结构的通用代码,如内存大小探测与故障检测

 15 +++ u-boot-rat/common/cmd_nand.c        2008-12-15 22:14:50.000000000 +0800

 

cpu 与处理器相关的文件

 16 +++ u-boot-rat/cpu/arm920t/s3c24x0/i2c.c        2008-12-05 14:25:37.000000000 +0800  17 +++ u-boot-rat/cpu/arm920t/s3c24x0/interrupts.c 2008-12-16 11:03:20.000000000 +0800  18 +++ u-boot-rat/cpu/arm920t/s3c24x0/nand.c       2008-12-16 10:55:28.000000000 +0800  19 +++ u-boot-rat/cpu/arm920t/s3c24x0/serial.c     2008-12-05 13:52:19.000000000 +0800  20 +++ u-boot-rat/cpu/arm920t/s3c24x0/speed.c      2008-12-05 15:01:07.000000000 +0800  21 +++ u-boot-rat/cpu/arm920t/s3c24x0/usb.c        2008-12-05 14:17:29.000000000 +0800  22 +++ u-boot-rat/cpu/arm920t/s3c24x0/usb_ohci.c   2008-12-05 14:11:34.000000000 +0800  23 +++ u-boot-rat/cpu/arm920t/start.S(时钟等设置)      2009-01-05 21:28:52.000000000 +0800   

driver 通用设备驱动,如CFI FLASH驱动(目前对INTEL FLASH支持较好)

 24 +++ u-boot-rat/drivers/mtd/nand/nand_base.c     2008-12-17 11:44:46.000000000 +0800  25 +++ u-boot-rat/drivers/mtd/nand/nand.c  2008-12-09 15:58:42.000000000 +0800  26 +++ u-boot-rat/drivers/mtd/nand/nand_util.c     2008-12-17 12:57:42.000000000 +0800  27 +++ u-boot-rat/drivers/net/dm9000x.c    2008-12-06 20:09:04.000000000 +0800  28 +++ u-boot-rat/drivers/rtc/s3c24x0_rtc.c        2008-12-05 14:15:15.000000000 +0800  29 +++ u-boot-rat/drivers/usb/usb_ohci.c   2008-12-05 14:28:30.000000000 +0800  

include U-Boot头文件;尤其configs子目录下与目标板相关的配置头文件是移植过程中经常要修改的文件

 30 +++ u-boot-rat/include/asm-arm/mach-types.h     2008-12-16 11:51:51.000000000 +0800  31 +++ u-boot-rat/include/common.h 2008-12-05 14:55:35.000000000 +0800  32 +++ u-boot-rat/include/configs/rat2410.h        2008-12-16 11:04:34.000000000 +0800  33 +++ u-boot-rat/include/configs/rat2440.h        2008-12-16 16:01:00.000000000 +0800  34 +++ u-boot-rat/include/linux/mtd/mtd.h  2008-12-15 21:20:57.000000000 +0800  35 +++ u-boot-rat/include/s3c24x0.h        2008-12-05 15:22:20.000000000 +0800   

lib_xxx 处理器体系相关的文件,如lib_ppc, lib_arm目录分别包含与PowerPC、ARM体系结构相关的文件

 36 +++ u-boot-rat/lib_arm/board.c  2008-12-06 20:22:40.000000000 +0800  

 37 +++ u-boot-rat/Makefile 2008-12-16 09:40:36.000000000 +0800

 

附件: U-Boot主要目录结构  - board 目标板相关文件,主要包含SDRAM、FLASH驱动;  - common 独立于处理器体系结构的通用代码,如内存大小探测与故障检测;  - cpu 与处理器相关的文件。如mpc8xx子目录下含串口、网口、LCD驱动及中断初始化等文件;  - driver 通用设备驱动,如CFI FLASH驱动(目前对INTEL FLASH支持较好)  - doc U-Boot的说明文档;  - examples可在U-Boot下运行的示例程序;如hello_world.c,timer.c;  - include U-Boot头文件;尤其configs子目录下与目标板相关的配置头文件是移植过程中经常要修改的文件;  - lib_xxx 处理器体系相关的文件,如lib_ppc, lib_arm目录分别包含与PowerPC、ARM体系结构相关的文件;  - net 与网络功能相关的文件目录,如bootp,nfs,tftp;  - post 上电自检文件目录。尚有待于进一步完善;  - rtc RTC驱动程序;  - tools 用于创建U-Boot S-RECORD和BIN镜像文件的工具;

 

分类:

第一类目录与处理器体系结构 或者开发板硬件 直接相关; 第二类目录是一些通用的函数或者驱动程序 ; 第三类目录是u-boot的应用程序、工具或者文档 。

 

. |-- board 目标板相关文件,主要包含SDRAM、FLASH驱动;  |   `-- EmbedSky |-- common 独立于处理器体系结构的通用代码,如内存大小探测与故障检测; 与体系结构无关的文件,实现各种命令的C文件。  |-- cpu 与处理器相关的文件  |   |-- 74xx_7xx |   |-- arm1136 |   |-- arm720t |   |-- arm920t  |   |   |-- at91rm9200 |   |   |-- imx |   |   |-- ks8695 |   |   `-- s3c24x0  |   |-- arm925t |   |-- arm926ejs |   |   |-- omap |   |   `-- versatile |   |-- arm946es |   |-- arm_intcm |   |-- at32ap |   |   `-- at32ap7000 |   |-- bf533 |   |-- i386 |   |-- ixp |   |   `-- npe |   |       `-- include |   |-- lh7a40x |   |-- mcf52x2 |   |-- microblaze |   |-- mips |   |-- mpc5xx |   |-- mpc5xxx |   |-- mpc8220 |   |-- mpc824x |   |   `-- drivers |   |       |-- epic |   |       `-- i2c |   |-- mpc8260 |   |-- mpc83xx |   |-- mpc85xx |   |-- mpc86xx |   |-- mpc8xx |   |-- nios |   |-- nios2 |   |-- ppc4xx |   |-- pxa Intel的PXA处理器 |   |-- s3c44b0 |   `-- sa1100 |-- disk disk驱动的分区处理代码  |-- doc |-- drivers   通用设备驱动程序,比如各种网卡、支持CFI的flash、串口和USB总线等  |   |-- lcd |   |-- nand  |   |-- nand_legacy |   `-- sk98lin |       `-- h |-- dtt 数字温度测量器或者传感器的驱动  |-- examples 一些独立运行的应用程序的例子  |-- fs 支持文件系统的文件,u-boot现在支持cramfs、fat、fdos、jffs2、yaffs和registerfs。  |   |-- cramfs 只读的文件系统 |   |-- ext2 |   |-- fat 读写SD卡等外围设备时用到的文件系统 |   |-- fdos |   |-- jffs2 可写的基于flash的文件系统,一般用于norflash  |   `-- reiserfs |-- include U-Boot头文件;尤其configs子目录下与目标板相关的配置头文件是移植过程中经常要修改的文件 ,还有对各种硬件平台支持的会变文件,系统的配置文件和对文件系统支持的文件。  |   |-- asm -> asm-arm |   |-- asm-arm  |   |   |-- arch -> arch-s3c24x0 |   |   |-- arch-arm1136 |   |   |-- arch-arm720t |   |   |-- arch-arm925t |   |   |-- arch-arm926ejs |   |   |-- arch-at91rm9200 |   |   |-- arch-imx |   |   |-- arch-ixp |   |   |-- arch-ks8695 |   |   |-- arch-omap |   |   |-- arch-pxa |   |   |-- arch-s3c24x0 |   |   |-- arch-s3c44b0 |   |   |-- arch-sa1100 |   |   |-- proc -> proc-armv |   |   `-- proc-armv |   |-- asm-avr32 |   |   `-- arch-at32ap7000 |   |-- asm-blackfin |   |   `-- cpu |   |-- asm-i386 |   |   `-- ic |   |-- asm-m68k |   |-- asm-microblaze |   |   `-- arch-microblaze |   |-- asm-mips |   |-- asm-nios |   |-- asm-nios2 |   |-- asm-ppc |   |-- bedbug |   |-- configs 这个目录是很关键的目录,保存了各个开发板相关的配置信息  |   |-- cramfs cramfs使用到的头文件 |   |-- galileo |   |-- jffs2  jffs2文件系统使用到的头文件 |   |-- linux  |   |   |-- byteorder |   |   `-- mtd  MTD设备使用到的头文件  |   `-- pcmcia |-- lib_arm 存放对ARM体系结构通用的文件,主要用于实现ARM平台通用的函数,与ARM体系结构相关的代码。  |-- lib_avr32 |-- lib_blackfin |-- lib_generic 通用的多功能函数实现。  |-- lib_i386 存放对X86体系结构通用的文件,主要用于实现X86平台通用的函数,与PowerPc体系结构相关的代码。 |-- lib_m68k |-- lib_microblaze |-- lib_mips |-- lib_nios |-- lib_nios2 |-- lib_ppc 存放对PowerPC体系结构通用的文件,主要用于实现PowerPC平台通用的函数,与PowerPC体系结构相关的代码。 |-- modules  |-- nand_spl |   `-- board |       `-- amcc |           `-- sequoia |-- net 与网络功能相关的文件目录,如bootp,nfs,tftp; 与网络有关的代码,BOOTP协议、TFTP协议RARP协议和NFS文件系统的实现。  |-- post 上电自检文件目录。尚有待于进一步完善;  |   `-- cpu |-- rtc 实时时钟RTC驱动程序  `-- tools 用于创建U-Boot S-RECORD和BIN镜像文件的工具;      |-- bddb     |-- easylogo     |-- env     |-- gdb     |-- logos     |-- scripts     `-- updater

 

 【20091214】

说明:

|- board目录下只留所配置的开发板的信息,其他板子的删除掉;

|- cpu目录下只留arm920t类型,其他的删除掉;

|- lib_*只留lib_arm目录,其他的删除掉;

|- *_config.mk只留arm_config.mk,其余的删除掉。

|-drivers目录只保留需要的驱动,其余的删除掉,如nand Flash,网卡,lcd等。

1、删除全新的uboot源码board下的所有内容,并将EmbedSky文件夹复制至全新的uboot源码下

2、复制EmbedSky.h至include/configs/目录下

3、给include/s3c24x0.h打补丁

4、给include/nand.h打补丁 

5、将modules文件夹复制至全新uboot源码根目录下

6、创建(复制)cpu/arm920t/s3c24x0目录下的nand_flash.c文件

7、给lib_arm目录下的文件打补丁

。。。。。。。。。

标签: rm7a传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台