uclinux在or1200上的移植 硬件平台 xilinx公司3e板

来源:百度知道 编辑:UC知道 时间:2024/06/23 18:09:04
新手~~请教一下怎样移植 需要自己编码么,怎样知道移植成功?谢谢
是Spartan-3E板

移植前的准备
(1)、首先读读uboot自带的readme文件,了解了一个大概。

(2)、看看common.h,这个文件定义了一些基本的东西,并包含了一些必要的头文件。再看看flash.h,这个文件里面定义了 flash_info_t为一个struct。包含了flash的一些属性定义。并且定义了所有的flash的属性,其中,AMD的有: AMD_ID_LV320B,定义为“#define AMD_ID_LV320B 0x22F922F9”。

(3)、对于“./borad/at91rm9200dk/flash.c”的修改,有以下的方面:
“void flash_identification(flash_info_t *info)”这个函数的目的是确认flash的型号。注意的是,这个函数里面有一些宏定义,直接读写了flash。并获得ID号。

(4)、修改:”./board/at91rm9200dk/config.mk”为
TEXT_BASE=0x21f80000 为TEXT_BASE=0x21f00000 (当然,你应该根据自己的板子来修改,和一级boot的定义的一致即可)。

(5)、再修改”./include/configs/at91rm9200dk.h”为
修改flash和SDRAM的大小。

(6)、另外一个要修改的文件是:
./borad/at91rm9200dk/flash.c。这个文件修改的部分比较的多。
a. 首先是OrgDef的定义,加上目前的flash。
b. 接下来,修改”#define FLASH_BANK_SIZE 0x200000”为自己flash的 容量
c. 在修改函数flash_identification(flash_info_t * info)里面的打印信息,这部分将在u-boot启动的时候显示。
d. 然后修改函数flash_init(void)里面对一些变量的赋值。
e. 最后修改的是函数flash_print_info(flash_info_t *