u-boot-2010-06在mini2440上的移植


1.1 移植环境介绍

U-boot版本:u-boot 2010-6

Linux平台:虚拟机下Fedora 13

交叉编译工具:gcc-4.4.3

arm开发板:mini2440CPUS3C2440 SDRAM64MNor Flash2MNand Flash256M,网卡:DM9000EP

1.2 删减u-boot文件

删除arch目录下除arm目录以外的所有目录,arm\cpu目录下除arm920tmulu以外的所有目录,arch\arm\cpu\arm920t录下除s3c24x0目录以外的所有目录(该目录下的文件不要删),arch\arm\include\asm目录下除archs3c24x0目录以外的所有archxxxx目录(该目录下的文件不要删) 删除board目录下除samsung目录以外的所有目录,board\samsung目录下除smdk2410目录以外的所有目录 删除include\configs目录下除smdk2410.h文件以外的所有头文件。

 

1.3 修改顶层Makefile文件

# set default to nothing for native builds

ifeq ($(HOSTARCH),$(ARCH))

#CROSS_COMPILE ?=

#=========指定交叉编译工具========

CROSS_COMPILE ?= arm-linux-gcc 

Endif

 

smdk2410_config   :      unconfig

       @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 samsung s3c24x0

#仿照smdk2410,配置自己的开发板

mini2440_config   :      unconfig

       @$(MKCONFIG) $(@:_config=) arm arm920t mini2440 s3c24x0

 

开发板配置选项中各项的含义如下:

arm

CPU 的类型(CPU)

arm920t

其对应于cpu/arm920t 子目录

zcrarm

开发者/或经销商(vender),对应于board/zcrarm目录

mini2440

开发板的型号(BOARD),对应于board/ zcrarm /mini2440 目录

s3c24x0

片上系统(SOC)定义

 

1.4 /board 中建立mini2440 目录和文件

#cd board

#mkdir -p mini2440

#cp -arf  samsung/smdk2410/* samsung/mini2440/

#cd mini2440/

#mv smdk2410.c mini2440.c

 

1.5 修改mini2440 目录下的Makefile文件

LIB = $(obj)lib$(BOARD).a

#COBJS := sbc2410x.o flash.o

COBJS := mini2440.o flash.o

SOBJS := lowlevel_init.o

SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)

 

1.6 include/configs/中建立开发板配置文件

#cp include/configs/smdk2410.h include/configs/mini2440.h

 

1.7 测试编译环境(此问题在以前移植u-boot时出现)

至此,最基本的配置已经完成。

[root@angel u-boot-2009.11]# make mini2440_config

Configuring for mini2440 board...

ln: 创建符号链接 asm: 不支持的操作

make: *** [mini2440_config] 错误 1

出现错误了,会是什么原因呢?测试一下U-boot本身附带的配置:

[root@angel u-boot-2009.11]# make smdk2410_config

Configuring for smdk2410 board...

ln: 创建符号链接 asm: 不支持的操作

make: *** [smdk2410_config] 错误 1

依然是这个错误,于是猜测错误原因不是在自己的配置上,上网查了下,发现错误原因是:Windows分区使用此命令,Windows分区不支持linux上的链接。

恍然大悟啊,自己把U-boot解压在虚拟机的共享文件夹下了,修改文件夹路径,编译……OK.

  • 1
  • 2
  • 3
  • 4
  • 下一页

相关内容