九鼎创展论坛

标题: x4418刷机中存储分区和启动参数的疑惑? [打印本页]

作者: duwu891229    时间: 2015-8-7 16:48
标题: x4418刷机中存储分区和启动参数的疑惑?
#进入uboot,fastboot
mmc.2: ubootpak, img : 0x200, 0x78000
mmc.2: 2ndboot, img : 0x200, 0x4000
mmc.2: bootloader, img : 0x8000, 0x70000
mmc.2: boot, fs : 0x100000, 0x4000000                                        //内核、根文件系统, 64M
mmc.2: system, fs : 0x4100000, 0x28e00000                                //QT5或ubuntu或android文件系统
mmc.2: cache, fs : 0x2cf00000, 0x21000000
mmc.2: misc, fs : 0x4e000000, 0x800000
mmc.2: recovery, fs : 0x4e900000, 0x1600000
mmc.2: userdata, fs : 0x50000000, 0x0

#进入linux,fdisk -l
/dev/mmcblk0p1            2048      133119       65536   83  Linux                        //boot, 64M
/dev/mmcblk0p2          133120     1472511      669696   83  Linux                        //system
/dev/mmcblk0p3         1472512     2553855      540672   83  Linux                        //cache
/dev/mmcblk0p4         2553856    15269887     6358016    5  Extended                //misc+recovery+userdata
/dev/mmcblk0p5         2555904     2572287        8192   83  Linux                        //misc
/dev/mmcblk0p6         2574336     2619391       22528   83  Linux                        //recovery
/dev/mmcblk0p7         2621440    15269887     6324224   83  Linux                        //userdata
/dev/mmcblk0boot0
/dev/mmcblk0boot1

我觉得
mmc.2: boot, fs : 0x100000, 0x4000000 对应/dev/mmcblk0p1
包含了内核和根文件系统,足以支持内核启动。

mmc.2: system, fs : 0x4100000, 0x28e00000对应/dev/mmcblk0p2
包含QT5或ubuntu或android文件系统。

为什么刷ubuntu后引导参数是,我的开发板printenv的输出,可以正常启动ubuntu
bootcmd=ext4load mmc 2:1 0x48000000 uImage;bootm 0x48000000
bootargs=root=/dev/mmcblk0p7 rw rootfstype=ext4


为什么刷linux(只刷ubootpak.bin和boot.img,不需要QT5的文件系统)后,文档中给出的引导参数是
bootcmd=ext4load mmc 2:1 0x48000000 uImage;bootm 0x48000000
bootargs=root=/dev/mmcblk0p2 rootfstype=ext4 lcd=vs070cxn tp=gslx680-linux

都与/dev/mmcblk0p1不相干?

作者: yubang    时间: 2015-8-8 09:34
/dev/mmcblk0p1,里面放的是boot.img,而boot.img中包含uImage,root.img.gz,一些logo等;
当引导的是android,需要用到root.img.gz,此时与/dev/mmcblk0p1相关,即:
ext4load mmc 2:1 0x48000000 uImage 和
ext4load mmc 2:1 0x49000000 root.img.gz


当引导的是qt,或者Ubuntu,只用到这里面的uImage
ext4load mmc 2:1 0x48000000 uImage

至于是/dev/mmcblk0p2还是/dev/mmcblk0p7,跟你把ext4格式的文件系统烧写到那个分区有关;
作者: duwu891229    时间: 2015-8-8 15:58
本帖最后由 duwu891229 于 2015-8-8 16:26 编辑

#boot.img和system.img文件定义
在android系统中:
boot.img代表了内核和根文件系统,system.img代表android文件系统?

在ubuntu系统中:
boot.img代表了内核,system.img代表“根文件系统和ubuntu文件系统”的混合体?

在linux(qt)系统中:
boot.img代表了内核,system.img代表“根文件系统和qt文件系统”的混合体?

为什么android文件系统和linux根文件系统无法“混合”,android设计如此吗?


#制作linux的boot.img时,只需要uImage,不需要ramdisk。

mkuserimg.sh -s ${BS_DIR_TARGET}/boot ${BS_DIR_TARGET}/boot.img ext4 boot 67108864

把文件夹boot(仅仅包含uImage)打包为“ext4 boot 67108864”的文件用于刷内核,也是可以的?




欢迎光临 九鼎创展论坛 (http://bbs.9tripod.com/) Powered by Discuz! X3.2