在jelly berry的串口输出的信息中看到这样两段:
一、
[ 0.000000] Kernel command line: console=ttyFIQ0 androidboot.console=ttyFIQ0 init=/init initrd=0x62000000,0x00210000 mtdparts=rk29xxnand:0x00002000@0x00002000(misc),0x00004000@0x00004000(kernel),0x00008000@0x00008000(boot),0x00008000@0x00010000(recovery),0x000C0000@0x00018000(backup),0x00040000@0x000D8000(cache),0x00300000@0x00118000(userdata),0x00002000@0x00418000(kpanic),0x00100000@0x0041A000(system),-@0x0053A000(user) bootver=2012-12-07#1.22 firmware_ver=4.0.4二、
[ 4.672035] 10 cmdlinepart partitions found on MTD device rk29xxnand
[ 4.678385] Creating 10 MTD partitions on "rk29xxnand":
[ 4.683618] 0x000000400000-0x000000800000 : "misc"
[ 4.689506] 0x000000800000-0x000001000000 : "kernel"
[ 4.695275] 0x000001000000-0x000002000000 : "boot"
[ 4.700852] 0x000002000000-0x000003000000 : "recovery"
[ 4.706775] 0x000003000000-0x00001b000000 : "backup"
[ 4.712906] 0x00001b000000-0x000023000000 : "cache"
[ 4.718717] 0x000023000000-0x000083000000 : "userdata"
[ 4.725835] 0x000083000000-0x000083400000 : "kpanic"
[ 4.732336] apanic: Bound to mtd partition 'kpanic'
[ 4.737210] apanic: No panic data available
[ 4.741548] 0x000083400000-0x0000a3400000 : "system"
[ 4.747779] 0x0000a7400000-0x0001d0c00000 : "user"这两段的MTD分区完全不同,请问MTD的分区是在哪里定义的,怎么会有这种差异?Android内核
一、
[ 0.000000] Kernel command line: console=ttyFIQ0 androidboot.console=ttyFIQ0 init=/init initrd=0x62000000,0x00210000 mtdparts=rk29xxnand:0x00002000@0x00002000(misc),0x00004000@0x00004000(kernel),0x00008000@0x00008000(boot),0x00008000@0x00010000(recovery),0x000C0000@0x00018000(backup),0x00040000@0x000D8000(cache),0x00300000@0x00118000(userdata),0x00002000@0x00418000(kpanic),0x00100000@0x0041A000(system),-@0x0053A000(user) bootver=2012-12-07#1.22 firmware_ver=4.0.4二、
[ 4.672035] 10 cmdlinepart partitions found on MTD device rk29xxnand
[ 4.678385] Creating 10 MTD partitions on "rk29xxnand":
[ 4.683618] 0x000000400000-0x000000800000 : "misc"
[ 4.689506] 0x000000800000-0x000001000000 : "kernel"
[ 4.695275] 0x000001000000-0x000002000000 : "boot"
[ 4.700852] 0x000002000000-0x000003000000 : "recovery"
[ 4.706775] 0x000003000000-0x00001b000000 : "backup"
[ 4.712906] 0x00001b000000-0x000023000000 : "cache"
[ 4.718717] 0x000023000000-0x000083000000 : "userdata"
[ 4.725835] 0x000083000000-0x000083400000 : "kpanic"
[ 4.732336] apanic: Bound to mtd partition 'kpanic'
[ 4.737210] apanic: No panic data available
[ 4.741548] 0x000083400000-0x0000a3400000 : "system"
[ 4.747779] 0x0000a7400000-0x0001d0c00000 : "user"这两段的MTD分区完全不同,请问MTD的分区是在哪里定义的,怎么会有这种差异?Android内核
for (i = 0; i < num_partitions; i++)
{
rknand_parts[i].offset *= 0x200;
rknand_parts[i].size *=0x200;
}这样两段串口输出的分区信息就对应起来了。
不过还是不清楚为什么cmdline给出的地址都要*0x200。