详解linux平台芯片烧写流程

详解将持续更新!

连接好开发板,重新启动,进入u-boot交互界面,执行如下操作:

一、配置网络# pri# setenv ipaddr 192.168.64.11 (注:ipaddr 为开发板IP)# setenv serverip 192.168.64.12 (注:serverip 为Windows主机IP)# setenv gatewayip 192.168.64.1(注:gatewayip 为网关)# saveenv# ping 192.168.64.12(如果能通,则继续往下做)二、烧写系统文件(先由tftp下载到ddr,再由ddr烧写到nandflash)首先,启动tftp服务,选择好待下载目标文件的路径,执行如下动作:注意:可以先tftp到内存,,然后用“bootm 地址”启动测试,不用去擦写nandflash1)烧写kernel// 将内核镜像下载到内存# tftp 0x40000000 uImage//可以用此命令验证内核是否能正常启动,免得当前的有问题又把原来正常的擦了# bootm 0x40000000// 从地址0x600000开始擦除0x500000字节大小的nandflash空间# nand erase 0x600000 0x500000// 将内存里的内核镜像烧写到nandflash# nand write 0x40000000 0x600000 0x5000002)烧写fs# tftp 0x40000000 rootfs.img # nand erase 0xe00000 0xf200000# nand write.yaffs 0x40000000 0xe00000 0xxxxx(0xxxxx根据执行tftp 0x40000000 rootfs.img下载的大小确定)3)烧写u-boot# tftp 0x40000000 u-boot.bin# nand erase 0x0 0x600000# nand write 0x40000000 0x0 0x600000三、重启进入u-boot交互界面,配置uboot的启动参数测试1(启动内核):// 设置启动命令:先从nandflash里读到内存,再从内存启动内核# setenv bootcmd nand read 0x40000000 0x600000 0x500000\; bootm 0x40000000// 保存以上设置参数# saveenv重启,观察效果。测试2(设置机器码):# setenv machid 0xXXX(根据自己情况而定)# saveenv重启,观察效果。测试3(启动本地文件系统):# setenv bootargs root=/dev/mtdblock4 init=/sbin/init console=ttySAC0,115200 rootfstype=yaffs rw# saveenv重启,观察效果。四、若要实现nfs挂载文件系统则进行如下操作:1、确保虚拟机virtualbox里的网卡为有线网卡(因为是通过网线挂载的)2、设置ip地址# setenv serverip 192.168.64.13# setenv ipaddr 192.168.64.11# setenv gatewayip 192.168.64.1# saveenv注:serverip为Windows里virtualbox里的ubuntu的IP测试4(挂载ubuntu里的根文件系统):# setenv bootargs root=/dev/nfs nfsroot=192.168.64.13:/mini_rootfs ip=192.168.64.11:192.168.64.1::255.255.255.0::eth0:off init=/linuxrcconsole=ttySAC0,115200# saveenv

重启,观察效果。

若不给自己设限,则人生中就没有限制你发挥的藩篱。

详解linux平台芯片烧写流程

相关文章:

你感兴趣的文章:

标签云: