赞
踩
环境部署:在uboot中的serverip要设定为电脑tftp服务器ip;
设置:
set serverip 192.168.1.20
sa
1.1、烧录kernel
(1)SDRAM地址范围:80000000-83FFFFFF
(2)tftp得能通能下载,才能烧录。ip设置是:本地192.168.1.10,serverp是141
1.14.3、uboot的各环境变量介绍和设置
(1)网络地址:ipaddr 192.168.1.10, serverip 192.168.1.141
(2)bootcmd:
(3)bootargs:
tftp更新并重新烧写uboot的命令序列:
mw.b 0x82000000 ff 0x100000
tftp 0x82000000 u-boot-hi3518ev200.bin
sf probe 0
sf erase 0x0 0x100000
sf write 0x82000000 0x0 0x100000
注:
mw.b — 解释memory write;
.b — 代表以字节为单位;
0x82000000 — sdram中起始地址;
ff — 先把sdram这段清成ff;
0x100000 — 长度为1M;
tftp 0x82000000 u-boot-hi3518ev200.bin — 代表在服务器server下下载.bin文件到sdram中
sf probe 0 — 选择spi0作为下载方式;这里代表为以spi方式下载,因为使用的是spi flash。为了区分有多个spi 。
sf erase 0x0 0x100000 — 擦出的一个spi flash的起始地址以及长度;
sf write 0x82000000 0x0 0x100000 — 将程序从sdram中写到spi flash中,由sdram中起始地址0x82000000的数据,写到spi flash从地址0x0,长度为1M;
tftp更新并重新烧写kernel的命令序列:
mw.b 0x82000000 ff 0x300000
tftp 0x82000000 uImage_hi3518ev200
sf probe 0
sf erase 0x100000 0x300000
sf write 0x82000000 0x100000 0x300000
tftp更新并重新烧写rootfs的命令序列:
mw.b 0x82000000 ff 0xc00000
tftp 0x82000000 rootfs_hi3518ev200_64k.jffs2
sf probe 0
sf erase 0x400000 0xc00000
sf write 0x82000000 0x400000 0xc00000
这里的kernel和rootfs的解释和uboot下载说明大致相同的;
2.1 正确的bootcmd和bootargs对应的设置命令:
set bootcmd ‘sf probe 0;sf read 0x82000000 0x100000 0x300000;bootm 0x82000000’
set bootargs mem=32M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:1024K(boot),3072K(kernel),12288K(rootfs)
sa
注:
set bootcmd 中为什么有单引号‘’,因为其中有好几条指令。
sf probe 0 — 选中spi flash;
sf read 0x82000000 0x100000 0x300000 — 从flash的起始地址0x100000读取数据到sdram的起始地址0x82000000中,长度是0x300000。
bootm 0x82000000 — 然后bootm直接去启动就可以了,这时候启动的就是我们的内核镜像;
set bootargs 解释
mem=32M — 代表我们的内存大小;
console=ttyAMA0 — 代表我们的控制台是ttyAMA0(指使用串口几);
115200 — 波特率为115200;
root=/dev/mtdblock2 — 跟文件系统在我们的第2个分区(分区从0开始算起),第0个分区是uboot,第1个分区是kernel,第2个分区为文件系统;
rootfstype=jffs2 — 文件系统的类型为jffs2;
mtdparts=hi_sfc:1024K(boot),3072K(kernel),12288K(rootfs) — 代表了3个分区表,括号内代表分区名称。
特别注意:这里的mem=32M,有一个隐晦的表示,这里的Linux内核使用的内存大小设为32M,海思的mpp设置的内存大小是32M. 这个内存总大小是64M.
bootcmd和bootargs可以复制同时设置的。
3.1 mpp的部署
这里是要做两件事:
第一 是把ko文件部署到板子上
第二是把lib文件放到/usr/lib
第三是vi /etc/profile
写入:
cd /ko
./load3518e -i -sensor ar0130 -osmem 32 -total 64
第四是 设置网卡 同样是在 vi /etc/profile
ifconfig lo 127.0.0.1
ifconfig eth0 192.168.1.10
然后就可以测试应用程序了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。