当用户对 SEED-VPM6467 下的内核驱动源码进行调整或者添加新的设备驱动后,需
要对内核进行从新编译配置,编译生成内核镜像后,能够经过 tftp 下载到 SEED-VPM6467
平台上启动,进行测试,下面详细介绍 Linux 内核的烧写。linux
Windows 上可使用 SolarWind TFTP Server 或者其它 TFTP 服务器端软件,用户可
以经过 Internet 获取:对软件进行正确配置,如读写使能,TFTP 根路径等。
Red Hat 的 Linux 系统安装时已经安装了 TFTP 服务器,其根路径是/tftpboot。
将 System Restore 目录下的 uImage 文件拷贝到 TFTP 服务器的根路径下,Windows
平台下须要启动 TFTP 服务器端软件。windows
主机端串口使用 PC 机 windows 系统自带的超级终端便可。配置以下:
点击 PC 机左下角开始-->程序-->附件-->通信-->超级终端;在“您的区号(或城市号)
是什么(C) ?”下键入 010 后点击肯定;再次点击肯定,在新弹出的对话框中输入你喜欢的
名称, 如 davinci; 在新的对话框中的“链接时使用”下选择你但愿使用的串口设备, 点击肯定 ;
然后在端口设置选项中配置波特率 115200,数据位 8,奇偶校验无,中止位 1,数据流控
制无。
也可以使用第三方软件,如:putty。其配置参数同配置 windows 系统自带的超级终端一
样。服务器
经过 TFTP 服务进行 SEED-VPM6467 内核的烧写,首先须要将 u-boot 烧写到
NORFlash 中,烧写方法参考 SEED-VPM6467 Flash Write User's Guide.pdf,下面详细介
绍一下 SEED-VPM6467 的硬件配置网络
置,另外一端接:PC 机的 RS232 口;ide
接口位置是 J9;测试
硬件链接完成后,便可经过 TFTP 服务下载内核。操做以下:ui
中止位 1,数据流控制无;spa
信息,以下图:server
图 1blog
示提示符 SEED-VPM6467 # ;
下面配置 U-Boot 环境变量用于 TFTP 下载内核启动;
Target# setenv serverip xxx.xxx.xxx.xxx
此处的 xxx.xxx.xxx.xxx 为 TFTP 服务器的 IP 地址,根据实际网络设置决定;
Target# setenv ipaddr xxx.xxx.xxx.xxx
此处的 xxx.xxx.xxx.xxx 为 SEED-VPM6467 的 IP 地址,根据实际网络设置决定;
Target# setenv ethaddr 00:0C:29:94:D7:D6
Target# setenv bootcmd bootm 0x42040000
Target# save
Note:从新上电的做用是使刚刚设置的 MAC 地址生效
Target# setenv autostart no
Target# save
Target# nand erase 0x100000 0x00400000
Target# tftp 0x81180000 uImage
Target#nand write 0x81180000 0x100000 0x00400000
Target# setenv bootcmd 'nand read 0x80800000 0x00100000
至此, uImage 已经烧写完成。 但此时系统不能启动 Linux 命令提示行, 须要向 flash
烧写 root 文件系统。
Linux 的目录结构的最顶层是一个被称为“/”的根目录。 系统加载 Linux 内核以后,就会
挂载一个设备到根目录上。 存在于这个设备中的文件系统被称为根文件系统。 全部的系统命
令,系统配置以及其余文件系统的挂载点都位于这个根文件系统中。
当 SEED-VPM6467 NAND Flash 中的文件系统须要更新/修复时,能够经过如下操做
进行文件系统的数据恢复。
NAND Flash 文件系统的更新/修复须要网络文件系统的支持,用户安装好 DaVinci
Linux Develop Software 下的开发套件后,按照文档操做能够很简单的配置 NFS。
将 System Restore 目录下的 Restore_rootfs.tar.gz 文件拷贝到 nfs 服务器的/opt 路径
下.并解压.
经过 nfs 服务进行 SEED-VPM6467 根文件系统的烧写,一样须要将 u-boot 烧写到
NAND Flash 中, 烧写方法参考 SEED_VPM6467 软件用户指南.pdf, 并进行以下硬件链接:
置,另外一端接:PC 机的 RS232 口;
接口位置是 J9;
硬件链接完成后,便可经过 TFTP 服务下载内核。操做以下:
中止位 1,数据流控制无;
信息,以下图:
图 2
示提示符 SEED-VPM6467 # ;
Target# setenv bootargs mem=120M console=ttyS0,115200n8 root=/dev/nfs
nfsroot=192.168.253.84:/home/linux/nfs rw
ip=192.168.253.101:192.168.253.1:255.255.255.0Target# protect off 0x42240000
+0xdc0000
Target# save
Target# boot
稍后会进入从 nfs 启动的系统下。
root@192.168.253.101:~# cd /opt
root@192.168.253.101:~# tar zxvf Restore_rootfs.tar.gz
root@192.168.253.101:~# flash_eraseall /dev/mtd2
root@192.168.253.101:~# mount -t yaffs2 /dev/mtdblock2 /mnt
root@192.168.253.101:~# cd Restore_rootfs
root@192.168.253.101:~# cp * /mnt -arf
稍后拷贝结束后系统已恢复完。
Target# setenv bootargs 'mem=120M console=ttyS0,115200n8
root=/dev/mtdblock2 rootfstype=yaffs2
ip=192.168.253.101:255.255.255.0:192.168.253.1 eth=4a:0f:10:00:ff:28'
Note:以上 IP 地址仅为参考;
Target# save
Target# boot
至此 内核及文件系统已恢复完成板卡上电回自动从 NAND FLASH 启动系统
【uboot参数设置参考】
setenv serverip 192.168.253.65
setenv ipaddr 192.168.253.101
setenv gatewayip 192.168.253.1
tftp下载内核nfs启动
---nfs------
setenv bootcmd 'tftp 0x80700000 uImage;bootm'
setenv bootargs mem=120M console=ttyS0,115200n8 root=/dev/nfs nfsroot=192.168.253.66:/home/linux/nfs rw ip=192.168.253.101:192.168.253.1:255.255.255.0
系统烧写
Creating 4 MTD partitions on "nand_davinci.0":
0x00000000-0x00100000 : "bootloader"
0x00100000-0x00500000 : "kernel"
0x00500000-0x04500000 : "cramfs"
0x04500000-0x08000000 : "filesystem"
*******************************
-------uImage---
nand erase 0x100000 0x00400000
tftp 0x81180000 uImage
nand write 0x81180000 0x100000 0x00400000
----bootm----------
setenv bootargs 'mem=120M console=ttyS0,115200n8 root=/dev/mtdblock2 rootfstype=cramfs ip=192.168.253.224:255.255.255.0:192.168.253.1 eth=4a:0f:10:00:ff:28'
setenv bootcmd 'nand read 0x80800000 0x00100000 0x00300000;bootm 0x80800000'
擦mtdblock3
nand erase 0x04500000 0x03500000
nandflash+NFS启动
setenv serverip 192.168.253.226
setenv ipaddr 192.168.253.224
setenv gatewayip 192.168.253.1
setenv bootargs mem=120M console=ttyS0,115200n8 root=/dev/nfs nfsroot=192.168.253.66:/home/linux/nfs rw ip=192.168.253.101:192.168.253.1:255.255.255.0
————————(SEED-VPM6467 Root File System User's Guide)
1 烧写 UBL 到 到 EEPROM
2 烧写 U-BOOT 到 到 NAND FLASH
3 uImage 烧写和更新的操做