CubieBoard中文论坛

 找回密码
 立即注册
搜索
热搜: unable
查看: 9337|回复: 4

怎样制作用LiveSuit或者PhoenixCard_V309烧写的img

[复制链接]
发表于 2014-3-25 16:42:13 | 显示全部楼层 |阅读模式
最近看了很多人的开发文档跟烧了很多人的Img,大家都喜欢用SD卡来制作OS,正好我手上有原厂allwinner一位朋友送给我们的A20的开发板,于是按照大家说的去测试玩玩看,结果用SD卡制作的在U-boot的内存初始化有点差异导致不开机,后来我们根据自己以前做android上的DDR参数修改才可以胜利跑起来,之后就疯狂的找看看有没有怎么制作img然后烧到nandflash中的,结果找了没有找到。昨天还发了邮件问几个很厉害的人他们都没回复,后来晚上回家洗澡的时候想了想才想到其实很简单,因为之前一直做android开发,改写了它的打包方式,代码编译没有像原厂的那个布局,所以平时编译android都是按照自己的来不多大关注buildroot tools这些,因为当初布局repo仓库的时候讲求是方便所以把lichee放到android里面,改写了很多编译方式........
    在你会使用SD卡烧OS的时候,你的kernel跟debian或者ubuntu或者archlinux都已经准备好了,这个时候去以前做android开发上原厂丢给你们lichee源码中有buildroot  out  tools,然后你随便建个文件夹,比如wfliao,然后wfliao里面分别放buildroot跟out跟tools文件夹,然后cd到tools下修改pack,直接定制成你要打包的名字等等,修改的内容里面有说明,比如:
DEFINE_string 'chip' '' 'chip to build, e.g. sun7i' 'c'对着修改这几个变量,把他修改为常量,然后:
假如平行目录: buildroot  out  tools1:cp kernel编译出来的uImage    tools/pack/chips/sun7i/wboot/bootfs/
2ut/u-boot.bin 不用动它,必须要放一个在这里,在打包的时候它会自动到一个地方,这个你看下代码就知道了,
在没有找到合适的u-boot源码暂时用这个(因为github下代码非常慢,经常登陆不上,不知道是不是政府还是github的问题,所以没有去找Uboot的源码,直接用matson的,他制作了很多img,
我就顺便把他的一些启动时候要用到的关键文件直接拿来用)

3:
创建分区,理论上debian多大就创建差不多大的分区,但安装后会扩大分区,所以要又要注意根据自己的nand的大小适当修改,
这里我们可以设置为2G,4G等等,当一定会比分区烧写的那个小。因为pack里面是指rootfs.ext4,所以要用这个名字
dd if=/dev/zero of=rootfs.ext4 bs=1M count=2048
mkfs.ext4 rootfs.ext4
sudo mount -o loop rootfs.ext4 /mnt
然后cp你需要的debian或者ubuntu到mnt
然后sync下就可以sudo umount /mnt
4:打包
然后cd到tools下
./pack

出于爱好大家一起共同分享,系统起来后驱动就好办了。
欢迎大家一起探讨
wfliao@gps-e.com
wenfeng731@gmail.com



评分

参与人数 1威望 +10 金钱 +10 贡献 +10 收起 理由
cubieplayer + 10 + 10 + 10 很给力!

查看全部评分

回复

使用道具 举报

发表于 2014-4-1 05:15:11 | 显示全部楼层
精彩,批量生产设备的时候很需要这个方法
回复 支持 反对

使用道具 举报

发表于 2014-4-1 09:02:38 | 显示全部楼层
楼主好人啊!这教程论坛找了很久了,对我们这些小白来说很需要!
回复 支持 反对

使用道具 举报

发表于 2014-4-4 10:36:36 | 显示全部楼层
呵,有点乱
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|粤ICP备13051116号|cubie.cc---深刻的嵌入式技术讨论社区

GMT+8, 2024-4-28 13:10 , Processed in 0.023821 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc. | Style by Coxxs

返回顶部