u-boot-2010.03在tq6410上的移植详解(二)

来源:互联网 发布:北京建筑软件班 编辑:程序博客网 时间:2024/06/06 10:53

原创文章版权所有!如需转载,请注明出处: http://hi.baidu.com/liushuiyue1/myhome谢谢合作!!!!!

3)修改u-boot跟目录下的Makefile文件。查找到smdk6400_config的地方,在他下面按照smdk6400_config的格式建立smdk6410_config的编译选项,另外还要指定交叉编译器

 

#gedit Makefile

 

 

CROSS_COMPILE ?= arm-linux-        //指定交叉编译器为arm-linux-gcc

smdk6410_noUSB_config /

smdk6410_config      :      unconfig

      @mkdir -p $(obj)include $(obj)board/samsung/smdk6410

      @mkdir -p $(obj)nand_spl/board/samsung/smdk6410

      @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h

      @if [ -z "$(findstring smdk6410_noUSB_config,$@)" ]; then                   /

             echo "RAM_TEXT = 0x57e00000" >> $(obj)board/samsung/smdk6410/config.tmp;/

             $(MKCONFIG) $(@:_config=) arm arm1176 smdk6410 samsung s3c64xx;            /

      else                                                                /

             echo "RAM_TEXT = 0xc7e00000" >> $(obj)board/samsung/smdk6410/config.tmp;/

             $(MKCONFIG) $(@:_noUSB_config=) arm arm1176 smdk6410 samsung s3c64xx;       /

      fi

      @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk

*说明:arm    CPU的架构(ARCH)

       arm1176CPU的类型

       smdk6410 :对应在board目录下建立新的开发板项目的目录

       samsung:新开发板项目目录的上级目录,如直接在board下建立新的开发板项目的目录,则这里就为NULL

       s3c64xxCPU型号

*注意:编译选项格式的第二行要用Tab键开始,否则编译会出错

4)进入顶层目录nand_spl/board/samsung目录新建目录smdk6410,并将smdk6400下的文件复制到刚刚新建的smdk6410

 

#cd nand_spl/board/samsung //

#cp –ar smdk6400/* smdk6410/

 

5)测试编译新建的smdk6410开发板项目

 

#make smdk6410_config //如果出现Configuring for smdk6410 board...则表示设置正确

#make //编译后在根目录下会出现u-boot.binu-boot-nand.bin文件,则u-boot移植的第一步就算完成了

由于此版本的u-boot对于串口和时钟在开始配置文件中就已经初始化,对于ARM1176有很好的支持,利用从SD卡启动的ubootu-boot-nand.bin下载到nand flash中,同时将开发板上SW2设置到从Nand flash启动位置。利用SecureCRT.exe软件观察串口打印信息如下:

 

可以看到移植在tq6410上移植uboot已经成功。可是Nor flash2M可是信息上显示为0,是因为没有添加Nor flash的驱动引起的,而且开发板上自带的是DM9000AE100M网卡,而uboot默认支持CS8900所以开始添加uboot的相关功能。

移植是采用SD烧写nand flashuboot,为了方便烧写和调试首先移植网卡实现tftp下载。

原创粉丝点击