大家好,现在遇到了一个问题,我用的是iMX6Q的开发板,自带了8G的eMMC。编译整个工程,将生成u-boot-6q.bin、recovery.img、boot.img、system.img通过mfgtools烧到目标板后,然后查看各个分区的大小,如下:
root@sabresd_6dq:/data/app # df
Filesystem Size Used Free Blksize
/dev 377.8M 136.0K 377.7M 4096
/sys/fs/cgroup 377.8M 12.0K 377.8M 4096
/mnt/secure 377.8M 0.0K 377.8M 4096
/mnt/asec 377.8M 0.0K 377.8M 4096
/mnt/obb 377.8M 0.0K 377.8M 4096
/mnt/shm 1024.0K 0.0K 1024.0K 4096
/system 502.0M 406.8M 95.2M 4096
/data 6.0G 196.1M 5.8G 4096 // data分区有6G的空间
/cache 495.8M 10.3M 485.6M 1024
/device 7.7M 1.0M 6.7M 1024
/mnt/shell/emulated 6.0G 196.1M 5.8G 4096
由于我们的开发有一些自己需要的应用放到了/data分区,故需要编译生成userdata.img这个包,于是我将
/device/fsl/sabresd_6q/BoardConfigCommon.mk中的
#BOARD_USERDATAIMAGE_PARTITION_SIZE := 6189744128//5.9G
这个打开,在out下生成了5.8G的userdata.img, 然后我将生成的u-boot-6q.bin、recovery.img、boot.img、system.im、userdata.img通过mfgtools烧到目标板后,重新上电开机,目标板一直重启。我怀疑是userdata.img太大了,于是将BOARD_USERDATAIMAGE_PARTITION_SIZE := 6189744128 这个改小,分别试了5.0G、4.5G、4.0G、3.5G、3.0G、2.9G、2.5G、2.0G,最后只有1.1G的userdata.img烧到目标板,才能正常起来,再次查看各分区大小,如下:
root@sabresd_6dq:/ # df
Filesystem Size Used Free Blksize
/dev 377.8M 136.0K 377.7M 4096
/sys/fs/cgroup 377.8M 12.0K 377.8M 4096
/mnt/secure 377.8M 0.0K 377.8M 4096
/mnt/asec 377.8M 0.0K 377.8M 4096
/mnt/obb 377.8M 0.0K 377.8M 4096
/mnt/shm 1024.0K 0.0K 1024.0K 4096
/system 502.0M 406.8M 95.2M 4096
/data 1.1G 211.9M 904.9M 4096
/cache 495.8M 10.3M 485.6M 1024
/device 7.7M 1.0M 6.7M 1024
/mnt/shell/emulated 1.1G 211.9M 904.9M 4096
现在的问题是:
(1)为什么前面没有编译并烧录userdata.img, 目标板有6.0G的/data分区?
(2)烧了userdata.img, 为什么其大小只能取1.1G,不能是6G。自带的eMMC有8G,应该够啊?
对了,system.img我设置的大小是510M, 如下:
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 534773760
请各位大神帮忙看看,不胜感激!
|