android 4.0 上面修改了分区之后,重新烧录,重启后,kernel被破坏掉了

我把分区进行了调整,重启之后,kernel就启动不了了,开始一直认为是adb push 调用的问题,结果后来发现重启后,kernel就被破坏掉了。

分区表如下:

Creating 3 MTD partitions on "hi_sfc":
0x000000000000-0x000000100000 : "fastboot"
0x000000100000-0x000000180000 : "env"
0x000000180000-0x000000200000 : "envback"

Creating 16 MTD partitions on "hinand":
0x000000000000-0x000000100000 : "cfg"
0x000000100000-0x000000200000 : "cfgback"
0x000000200000-0x000000800000 : "recovery"
0x000000800000-0x000000e00000 : "recoveryback"
0x000000e00000-0x000001400000 : "deviceinfo"
0x000001400000-0x000001a00000 : "baseparam"
0x000001a00000-0x000002200000 : "logo"
0x000002200000-0x000002c00000 : "fastplay"
0x000002c00000-0x000014a00000 : "cache"
0x000014a00000-0x000015400000 : "misc"
0x000015400000-0x000015e00000 : "kernel"
0x000015e00000-0x000025e00000 : "system"
0x000025e00000-0x000038a00000 : "userdata"
0x000038a00000-0x000038f00000 : "commondata"
0x000038f00000-0x000039300000 : "blackbox"
0x000039300000-0x000040000000 : "sdcard"


每次调整分区之后,需要修改 /etc/vold.fstab 文件

里面有这么一句 

将sdcard分区挂载到/mnt/nand目录下

dev_mount block /mnt/nand auto /devices/virtual/mtd/mtd13/mtdblock13,因为这个mtd13正好对应的是kernel这个分区,这也就找到源头了,为啥kernel被破坏掉了。


将mtd13改成15,mtdblock13改成mtdblock15之后,重启机顶盒能够启动了。开始认为nand的flash是单独开始mtd的;


进入/dev/mtd下查看串行flash,是从mtd0 到mtd18的,也就是说sdcard对应的是mtd18,mtd15对应的是userdata分区


修改后,一切ok。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值