include/configs/s5p4418_drone2.h:
#ifdef SPEC_PARTS
#define FASTBOOT_PARTS_DEFAULT \
"flash=mmc,2:2ndboot:2nd:0x200,0x7000;" \
"flash=mmc,2:bootloader:boot:0x8000,0x200000;" \
"flash=mmc,2:boot:ext4:0x00210000,0x03000000;" \
"flash=mmc,2:system:ext4:0x04100000,0x2F200000;" \
"flash=mmc,2:misc:emmc:0x33300000,0x00800000;" \
"flash=mmc,2:userdata:ext4:0x33B00000,0x0;"
所以在emmc中存在6个分区,但前两个分区在uboot和kernel中均不能显示。
注意,如果有效分效大于4个(上面的前两个分区不是有效分区),uboot会自动将第4个分区置为扩展分区,后面的分区都属于扩展分区中。
启动分区和android分区
在boot分区(第3个分区)是FAT32分区,它的文件有:
-
uImage
-
root.img.gz
-
logo.bmp
-
battery.bmp
-
update.bmp
root.img.gz是android编译输出目录out/product/s5p4418_drone2/root(没有包含system目录下的文件)下的文件cpio.gz(gzip)的格式。第4个分区system分区是andoird文件系统目录system的目录,它会在启动后挂载到/system目录下(userdebug编译模式默认以只读方式挂载,用户执行adb root; adb remount会以读写方式挂载)。
根据kernel的启动参数,android的根目录是在内存地址0x49000000处的(initramfs类型),所以它在挂载时以只读方式挂载的。