Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4135879
  • 博文数量: 241
  • 博客积分: 15936
  • 博客等级: 上将
  • 技术积分: 25293
  • 用 户 组: 普通用户
  • 注册时间: 2007-03-27 11:22
个人简介

Fedora-ARM

文章分类
文章存档

2016年(3)

2014年(1)

2013年(3)

2012年(50)

2011年(61)

2010年(26)

2009年(27)

2008年(21)

2007年(49)

分类: LINUX

2008-03-01 14:01:48

移植U-Boot.1.3.1到S3C2410和S3C2440

(本文介绍的uboot已经很旧,请到uboot-2009.01获取最新版本代码补丁)

   在9月份移植u-boot1.2.0到S3C2410AL以及10月份在将其移植到s3c2440之后,就再没怎么碰U-Boot了。现在U-Boot已经更新到了1.3.1版本,我决定趁过年的时间看看U-Boot的变化,并移植到S3C2440和S3C2410。这次移植主要是依据以前的移植记录,将S3C2440和S3C2410的移植修改合并了,还加了U-Boot对JFFS2和USB支持配置。至于网卡的支持,沿用以前1.2.0的修改记录(支持的网卡:CS8900、DM9000和AX88796A),这里不再赘述,请看我以前的移植记录。

对于YAFFS文件系统的镜像烧写功能,网上已有高人做了相关补丁,我还没时间研究,待有时间研究完后再写出相关的移植记录。

以下提供所有修改过的文件的压缩包(.rar文件),如果想省时间直接将其复制到相应文件夹,修改\include\configs\tekkaman2440.h(SBC2440V4+DM9000)中的配置就好了(tekkaman2440.h_2410 是2410 (博创UP-NETARM2410-S+AX88796A)的配置文件,修改文件名为tekkaman2440.h即可使用)。

请自行修改Makefile中的编译器路径!(老版本,不支持yaffs烧写,使用nand_legacy)

文件:u-boot-1.3.1.rar
大小:121KB
下载:下载


以下是进一步学习后的改进版(暂时只支持2410),使用nand驱动,支持Xmodem传输和yaffs镜像烧写(我使用Linux2.6.24.3内核):

文件:u-boot-1.3.1.tar.gz
大小:118KB
下载:下载

以下是配套的yaffs镜像制作工具:

文件:mkyaffsimage.tar.gz
大小:7KB
下载:下载

Xmodem传输是参考了上的补丁。

yaffs烧写除了参考了中的补丁外还主要参考了嵌入式中国中的文章。在这里谢谢hiboy的分享


修改记录如下(大致如下,若有遗漏以压缩包中文件为准(老版本,不支持yaffs烧写,使用nand_legacy)):

 

阅读(32547) | 评论(57) | 转发(9) |
给主人留下些什么吧!~~

chinaunix网友2009-03-24 17:41:24

你好 我按照你的方法 插入U盘后显示U-Boot> usb start (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found U-Boot> fatls usb 0 No Fat FS detected 什么原因啊 FAT格式配置过了的啊

chinaunix网友2009-03-23 18:25:55

博主你好,我用的是友善mini2440的板子,最近搞dm9000的移植,现在ping功能可以实现了,却无法使用tftp下载内核,重复出现“Retry count exceeded”错误,不知道什么地方出了问题

chinaunix网友2009-03-11 19:32:59

博主你好,看了你的文章收获很大。 由于我是2410 所以把你条件编译的2440的部分都没有用 结果编译通过了,板子也点亮了,但是串口打印信息里说FLASH在0x180这个位置的校验出错 并且PING,TFTP,DPCH这些命令都不能使用,我明明把CFG_CMD_PING和NET这些命令都加在我的板头文件里的,甚至直接写到命令包含的头文件那里都不行。不知道哪里出了问题 实在很苦恼,我和前面一位朋友的情况一样 也必须要屏蔽CFG_CMD_ELF才可以不然要出错,编译器是3.3.2,3.4.1都不成

chinaunix网友2009-03-07 11:30:53

版主你好 按照你的方式uboot已经基本可以使用,但是现在想知道你在U盘中读取内核的那段是如何实现的。。。。

chinaunix网友2009-02-26 01:06:21

博主你好,我按你的方法作,结果如下 env_nand.c:63: warning: `struct nand_chip' declared inside parameter list env_nand.c:63: warning: its scope is only this definition or declaration, which is probably not what you want env_nand.c:65: warning: `struct nand_chip' declared inside parameter list env_nand.c:67: error: parse error before "nand_info" env_nand.c:67: warning: type defaults to `int' in declaration of `nand_info' env_nand.c:67: warning: data definition has no type or storage class 希望博主能给予帮助