标签:ice count 编号 开源代码 兼容 block 思路 ima image
1.linux系统启动方式
bootloader->kernel->system
在嵌入式系统中内存为DRAM,inand flash 都不能直接启动需要被初始化。其中初始化程序在(bootloader中)。
解决思路是通过内部irom中的bl0代码引导执行uboot。
启动uboot可以有多种方式,可以使用内部emmc启动,sd卡启动,usb启动等多种方法。
由于优先级不同,用sd卡启动时除了必要的硬件配置(拨码开关等)也必须破坏内部emmc中的uboot才能通过sd卡启动uboot。
在linux系统下破坏uboot的方法:
破坏iNand中的bootloader以从SD2启动 linux下:
busybox dd if=/dev/zero of=/dev/block/mmcblk0 bs=512 seek=1 count=1 conv=sync sync
uboot下:
movi write u-boot 0x30000000
制作启动SD卡有两种方法
有2种烧写方法:一种是在windows中用刷卡工具去制作启动SD卡;
另一种是在linux中用dd命令。
linux系统的DD命令后面统一讲。
调试开发板时使用SecureCRT可以有效观看到系统的linux命令行界面,或者可以进入uboot界面。
2.刷机
2.1(使用fastboot)
插入sd卡启动的时候,通过SecureCRT可以进入uboot界面。
uboot下可以使用fastboot命令。连接电脑(需要安装相应驱动)。通过fastboot命令将bootloader,kernel,system可以下载到开发板中。
2.2(使用dnw)
刷机分2步:第一步刷x210_usb.bin,地址是0xd0020010;第二步刷uboot.bin,刷机地址是0x23e00000
3.linux系统下工具使用
由于windows下驱动或者兼容性等问题。部分软件使用十分麻烦。好在以上所有操作在linux系统下都有相应的工具。
3.1linux系统下的SD的烧写
连接进linux中,在命令行中:ls /dev/sd*查看,和之前对比,就知道SD卡在linux中的设备编号了,一般是/dev/sdb。
执行 ./nand_fusing.sh /dev/sdb(nand_fusing.sh是写好的一个脚本本质是通过dd命令)
3.2linux下的fastboot
fastboot在ubuntu下可以通过apt-get获取到。
使用:在uboot下输入fastboot连接到电脑上
fastboot常用命令: fastboot devices 命令用来查看当前连接的设备。(我们开发板看到的是:SMDKC110-01) fastboot flash xxx 命令用来烧录的 fastboot reboot 命令用来重启系统 fastboot flash bootloader android2.3/uboot.bin 烧uboot fastboot flash kernel android2.3/zImage 烧linux kernel fastboot flash system android2.3/x210.img 烧android rom
3.2linux下的dnw使用(裸机下载或刷机都可以使用)
linux下的dnw命令为一个网上找的开源代码。
使用格式如下
dnw -a <地址> <目标>
dnw -a 0xd0020010 len.bin
标签:ice count 编号 开源代码 兼容 block 思路 ima image
原文地址:http://www.cnblogs.com/PengfeiSong/p/6338211.html