用tftp的方式在u_boot下 烧写uImage内核

u_boot进行下载 uImage (一种kernel镜像文件)

首先,把编译好的uImage文件放在/tftpboot/目录下。用网线把开发板和电脑连上。

但PC上的网卡显示是没连接的,这一点是没有关系的,go on

1u_boot的命令行

[u_boot@SMDK2440A]# printenv   (打印变量) 并查看是否需要设置环境变量

结果如下:[u-boot@SMDK2440A]# printenv

bootargs=console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.72:/opt/rootfs ip=192.168.1.226:192.168.1.72:192.168.1.72:255.255.255.0:smdk2440a.embedclub.com:eth0:off

bootcmd=nand read 0x30008000 60000 500000;bootm 0x30008000

bootdelay=1

baudrate=115200

ethaddr=08:08:11:18:12:27

embedclub=bmp d 70000

   stdin=serial

stdout=serial

stderr=serial

lcdtype=w

ethact=dm9000

filesize=22E4EC

fileaddr=30008000

gatewayip=192.168.1.1

netmask=255.255.255.0

ipaddr=192.168.1.226

serverip=192.168.1.108

Environment size: 485/131068 bytes

 

2.例如:如果你的linuxIP192.168.1.108 则你得把serverip设置为192.168.1.108

  命令:[u-boot@SMDK2440A]# set   serverip   192.168.1.108  //设置tftp服务器的IP

        [u-boot@SMDK2440A]# saveenv                      //保存环境变量

3.利用tftp 进行下载:(首先要把编译好的uImage内核 复制到 /tftpboot/目录下)然后用如下命令进行下载:

[u-boot@SMDK2440A]# tftp  0x30008000   uImage    //tftpuImage下载到nandflash//0x30008000开始的单元里

 

执行命令结果如下:

dm9000 i/o: 0x20000300, id: 0x90000a46

DM9000: running in 16 bit mode

MAC: 08:08:11:18:12:27

operating at 100M full duplex mode

Using dm9000 device

TFTP from server 192.168.1.108; our IP address is 192.168.1.226

Filename 'uImage'.

Load address: 0x30008000

Loading: T #################################################################

         #################################################################

         ##########################

done

Bytes transferred = 2286828 (22e4ec hex)

(显然下载成功)

4.用命令[u-boot@SMDK2440A]#bootm   //启动内核 内核会自动加载nandflash中的Yaffs根文件系统的。
XP
和开发班的网络也通啦!

你可能感兴趣的:(ARM)