在学习过程中,如修改U-Boot的IP,修改启动方式等操作,可能会破坏原来的内核或文件系统,在此,介绍一下如何恢复默认的内核和文件系统。
在介绍之前,先说明一下SEED-DVS365的硬件连接:
q SW1所有位置调‘0’
q 用串口线将SEED-DVS365与PC机相连,一端接SEED-DVS365的J3,另一端接PC机的RS232口
q 用网线将SEED-DVS365与PC连接到同一网络中,SEED-DVS365的网络接口位置是T1
q EED- DVS365平台的S3连接12V电源
连接好之后,操作如下:
q 配置PC机端的超级终端,设置串口参数:波特率115200,数据位8,奇偶校验无,停止位1,数据流控制无
q 打开Windows PC机超级终端
q SEED-DVS365平台采用12V电源上电
1. Nand Flash擦除(全部)
1) 复位SEED-DVS365
2) 超级终端显示Hit any key to stop autoboot:4 时按下回车键
3) 输入:nand erase
4) 结果如下:
注:可能出现一些坏块,不管,继续。。。
2. 使用CCS3.3通过JTAG下载ubl、u-boot
1) 关闭电源,插上560仿真器,再上电。
2) 打开CCS3.3(CCS配置参见/SEED_DVS365/Test Demos under CCS/SEED-DVS365 Hardware Test.pdf)
3) 参见:/SEED_DVS365/Flash_Writer/ SEED-DVS365 Flash Write.pdf
4) 下面过程简写:
a) 加载GEL文件
b) 连接(ALT+C)
c) Load Program(NANDWriter_DM36x.out)
d) 运行(F5)
e) ubl:D:/UBL_DM36x_NAND.bin
f) u-boot:D:/u-boot.bin
5) 关闭电源,拔出560仿真器,再上电。
6) 查看默认的u-boot环境变量,如下:
3. 通过TFTP下载内核(uImage)到Flash
1) Linux服务器端TFTP服务器的架设(参见/SEED_DVS365/DaVinci Linux Develop Software
/SEED-DVS365 Development Software.pdf)
2) 把默认的uImage文件放到/tftpboot目录下
3) 参见:/SEED_DVS365/Flash_Writer/ SEED-DVS365 Flash Write.pdf
4) 下面简写u-boot配置命令:
a) setenv serverip 192.168.1.109 (linux服务器ip地址)
b) setenv ipaddr 192.168.1.144 (目标板ip地址)
c) setenv ethaddr 00:0C:29:94:D7:D6 (目标板网卡地址)
d) setenv bootcmd 'nboot 0x80800000 0 0x200000' (设置启动方式)
e) saveenv
f) 目标板重启,使MAC地址生效
g) setenv autostart no
h) saveenv
i) nand erase 0x200000 0x200000
j) tftp 0x80800000 uImage
k) nand write 0x80800000 0x200000 0x200000
l) setenv autostart yes
m) saveenv
n) 配置结果如下:
4. 通过TFTP烧写root文件系统
1) 参见:/SEED_DVS365/Root File System/SEED-DVS365 Root File System.pdf
2) Linux服务器端,把restore.sh和rootfs.tar.gz复制到/opt/nfs/mnt目录下。
3) 下面简写u-boot配置命令:
a) setenv bootargs mem=80M console=ttyS0,115200n8 noinitrd rw ip=192.168.1.144:255.255.255.0:192.168.1.254 root=/dev/nfs nfsroot=192.168.1.109:/opt/nfs video=davincifb:osd0=720x576x16,4050K dm365_imp.oper_mode=0 davinci_capture.device_type=4
b) saveenv(配置结果如下)
c) boot(出现问题,如下)
解决方法:在Linux服务器端执行:
# /etc/init.d/nfsserver restart
d) root(登录)
e) cd /mnt/
f) ./restore.sh
g) 重启系统,配置U-Boot环境变量
setenv bootargs mem=80M console=ttyS0,115200n8 noinitrd rw ip=192.168.1.144:255.255.255.0:192.168.1.254 root=/dev/mtdblock3 rootfstype=yaffs video=davincifb:osd0=720x576x16,4050K dm365_imp.oper_mode=0 davinci_capture.device_type=4
h) saveenv
i) boot