迅为itop4412烧写ubuntu,脱离tf卡启动

版权声明:本文为博主原创文章,转载请注明链接,[email protected],欢迎交流 https://blog.csdn.net/liboxiu/article/details/81772391

迅为itop4412烧写ubuntu,纠正了手册问题。手册上的步骤有一些纰漏。
环境:ubuntu12.04
工具:
SDFormater: sd卡分区后的格式化工具
Hyper Terminal: 串口调试用超级终端

我用的7寸屏,lvds-lcd接口,驱动选择iTOP4412_ubuntu_12.04_for_LCD_20141230.tar.gz,看准自己的型号。

步骤:

1.先在uboot下面, 如果卡容量较大将,tf卡重新分区,2700即为2.7G
分区。如果是2g卡,可以将2700改为1700,不再单写了:

fdisk -c 1 2700 50 50

fatformat mmc 1:1

ext3format mmc 1:2

ext3format mmc 1:3

ext3format mmc 1:4

这里有时候格式化到ext3format mmc 1:2中途报错,下一步直接不能执行,直接重启电源,在此执行上面的步骤,可行,没有做大量测试,先这么记下;真不行就用上面提到的工具格式化后再来,多试几次。

2、 首先把光盘中的文件镜像在ubuntu开发环境解压, 并拷贝到tf卡里面去.

在ubuntu下新建文件夹itop_4412,把压缩包iTOP4412_ubuntu_12.04_for_LCD_20141230.tar.gz 拷贝里面
然后解压。
输入df -l 找到2.7G盘符,

sudo cp -r  /home/topeet/itop_4412/*   /media/xxx(2.7G分区)

3、我用的8G的sd卡,分区后剩余空间4.7G,在这个盘里面建立sdupdate文件夹,把光盘资料ubuntu文件夹下的

 zImage, 
 zImage_sd,
 iTOP4412_ubuntu_12.04_for_LCD_20141230.tar.gz, 
 u-boot-iTOP-4412.bin

四个文件拷贝到sdupdate中。

如果用的sd容量较小,可以考虑用u盘,新建sdupdate文件夹,将相应文件拷贝其中,U盘插在靠近sd卡的usb口中。

**4、关键的一步在这里,手册中没有详细展开。导致用户基本无法实现最终的ubuntu在emmc中启动。
保证拨码开关一直是emmc启动不变,进行下面的步骤:**
在 /Android源码/ 文件夹中找到 iTop4412_uboot_20141224.tar.gz ,拷贝到ubuntu中解压,将u-boot-iTOP-4412.bin文件拷贝到解压之后的文件夹iTop4412_uboot之中。

执行 df -l
sd卡的盘符是sdb1 、sdb2 sdb3 sdb4

cd iTop4412_uboot
sudo su  获取root权限,之后
iTop4412_uboot# ./mkuboot  /dev/sdb  
会看到烧写成功提示

好了,有了这一步,成功一半。

5、还是按照手册走,先实现ubuntu在tf卡启动,拨码开关不动,还是emmc启动。

把卡插进开发板, 进uboot, 对mmc分个区:

fdisk -c 0 2700 300 300

fatformat mmc 0:1

ext3format mmc 0:2

ext3format mmc 0:3

ext3format mmc 0:4

烧写bootloader跟kernel, 记住, 这里烧的是sd卡的kernel

sdfuse flash bootloader u-boot-iTOP-4412.bin

sdfuse flash kernel zImage_sd

reset

会看到屏幕上的ubuntu界面,装上鼠标键盘,杠杆的。

6、下面的步骤用于完成emmc启动,脱离sd卡。

上面的系统启动后,超级终端输入:df -l

发现sd卡根本就没有被挂载,在/dev目录下,找到相应盘符,下面把sd卡手动挂载到开发板上:

mkdir /media/U /media/U1
mount /dev/mmcblk1p1 /media/U
mount /dev/mmcblk0p2 /media/U1

cd 进入/media/U
然后进入sdupdate文件夹,

cp -r  iTOP4412_ubuntu_12.04_for_LCD_20141230.tar.gz /media/U1

然后在/media/U1中解压:

tar -vxf iTOP4412_ubuntu_12.04_for_LCD_20141230.tar.gz

半小时后,解压完成。

7、重新给开发板上电进入uboot。

输入烧写指令:

sdfuse flash kernel zImage

重启:

reset

系统跑起来,yes,断电,拔出sd卡,再上电。ubuntu照样运行,至此,ubuntu烧写完成。中间若有拼写错误或者与自己的执行结果不一致,多检查调试,一切都太顺利也不利于深入掌握。

猜你喜欢

转载自blog.csdn.net/liboxiu/article/details/81772391