|
关于 RKloader, parameter 与 uboot 分区的疑问
发表于 2014-11-25 13:08:26
浏览:20710
|
回复:9
打印
只看该作者
[复制链接]
楼主
本来想修改 boot 参数CMDLINE, 查看 android tools 带的 rockdev 下的 rk3288-3.10-uboot-data1G.parameter, 发现没有 指定root, 这个文件应该与双系统的那个parameter 不一致的, 于是进入rk3288的ubuntu系统查看,结果发现- root@firefly:/dev/block/mtd/by-name# cat /proc/cmdline
- console=ttyFIQ0 androidboot.hardware=rk30board androidboot.console=ttyFIQ0 board.ap_has_alsa=0 root=/dev/block/mtd/by-name/linuxroot rw rootfstype=ext4 init=/sbin/init mtdparts=rk29xxnand:0x00002000@0x00000000(parameter),0x00002000@0x00002000(uboot),0x00002000@0x00004000(misc),0x00008000@0x00006000(resource),0x00008000@0x0000e000(kernel),0x00010000@0x00016000(boot),0x00010000@0x00026000(recovery),0x0001a000@0x00036000(backup),0x00040000@0x00050000(cache),0x00002000@0x00090000(kpanic),0x00180000@0x00092000(system),0x00002000@0x00212000(metadata),0x00200000@0x00214000(userdata),0x00620000@0x00414000(linuxroot),-@0x00a34000(user) storagemedia=emmc loader.timestamp=2014-10-30_09:27:41 androidboot.serialno=1006110001000026 androidboot.mode=emmc
复制代码
可见 cmdline中指定了 root 及 rootfstype, mtdparts 中第一个分区是 parameter
然后查看 parameter, uboot 分区内容, 不明白为什么这两个分区内容为什么差不多, dd 出来一比较, 只有很少的不同
先看 paramter
- root@firefly:/dev/block/mtd/by-name# hexdump -C -n 1024 parameter
- 00000000 50 41 52 4d 78 03 00 00 46 49 52 4d 57 41 52 45 |PARMx...FIRMWARE|
- 00000010 5f 56 45 52 3a 34 2e 34 2e 32 0d 0a 4d 41 43 48 |_VER:4.4.2..MACH|
- 00000020 49 4e 45 5f 4d 4f 44 45 4c 3a 72 6b 33 30 73 64 |INE_MODEL:rk30sd|
- 00000030 6b 0d 0a 4d 41 43 48 49 4e 45 5f 49 44 3a 30 30 |k..MACHINE_ID:00|
- 00000040 37 0d 0a 4d 41 4e 55 46 41 43 54 55 52 45 52 3a |7..MANUFACTURER:|
- 00000050 52 4b 33 30 53 44 4b 0d 0a 4d 41 47 49 43 3a 20 |RK30SDK..MAGIC: |
- 00000060 30 78 35 30 34 31 35 32 34 42 0d 0a 41 54 41 47 |0x5041524B..ATAG|
- 00000070 3a 20 30 78 36 30 30 30 30 38 30 30 0d 0a 4d 41 |: 0x60000800..MA|
- 00000080 43 48 49 4e 45 3a 20 33 30 36 36 0d 0a 43 48 45 |CHINE: 3066..CHE|
- 00000090 43 4b 5f 4d 41 53 4b 3a 20 30 78 38 30 0d 0a 50 |CK_MASK: 0x80..P|
- 000000a0 57 52 5f 48 4c 44 3a 20 30 2c 30 2c 41 2c 30 2c |WR_HLD: 0,0,A,0,|
- 000000b0 31 0d 0a 23 4b 45 52 4e 45 4c 5f 49 4d 47 3a 20 |1..#KERNEL_IMG: |
- 000000c0 30 78 36 32 30 30 38 30 30 30 0d 0a 23 46 44 54 |0x62008000..#FDT|
- 000000d0 5f 4e 41 4d 45 3a 20 72 6b 2d 6b 65 72 6e 65 6c |_NAME: rk-kernel|
- 000000e0 2e 64 74 62 0d 0a 23 52 45 43 4f 56 45 52 5f 4b |.dtb..#RECOVER_K|
- 000000f0 45 59 3a 20 31 2c 31 2c 30 2c 32 30 2c 30 0d 0a |EY: 1,1,0,20,0..|
- 00000100 43 4d 44 4c 49 4e 45 3a 63 6f 6e 73 6f 6c 65 3d |CMDLINE:console=|
- 00000110 74 74 79 46 49 51 30 20 61 6e 64 72 6f 69 64 62 |ttyFIQ0 androidb|
- 00000120 6f 6f 74 2e 68 61 72 64 77 61 72 65 3d 72 6b 33 |oot.hardware=rk3|
- 00000130 30 62 6f 61 72 64 20 61 6e 64 72 6f 69 64 62 6f |0board androidbo|
- 00000140 6f 74 2e 63 6f 6e 73 6f 6c 65 3d 74 74 79 46 49 |ot.console=ttyFI|
- 00000150 51 30 20 62 6f 61 72 64 2e 61 70 5f 68 61 73 5f |Q0 board.ap_has_|
- 00000160 61 6c 73 61 3d 30 20 72 6f 6f 74 3d 2f 64 65 76 |alsa=0 root=/dev|
- 00000170 2f 62 6c 6f 63 6b 2f 6d 74 64 2f 62 79 2d 6e 61 |/block/mtd/by-na|
- 00000180 6d 65 2f 6c 69 6e 75 78 72 6f 6f 74 20 72 77 20 |me/linuxroot rw |
- 00000190 72 6f 6f 74 66 73 74 79 70 65 3d 65 78 74 34 20 |rootfstype=ext4 |
- 000001a0 69 6e 69 74 3d 2f 73 62 69 6e 2f 69 6e 69 74 20 |init=/sbin/init |
- 000001b0 69 6e 69 74 72 64 3d 30 78 36 32 30 30 30 30 30 |initrd=0x6200000|
- 000001c0 30 2c 30 78 30 30 38 30 30 30 30 30 20 6d 74 64 |0,0x00800000 mtd|
- 000001d0 70 61 72 74 73 3d 72 6b 32 39 78 78 6e 61 6e 64 |parts=rk29xxnand|
- 000001e0 3a 30 78 30 30 30 30 32 30 30 30 40 30 78 30 30 |:0x00002000@0x00|
- 000001f0 30 30 32 30 30 30 28 75 62 6f 6f 74 29 2c 30 78 |002000(uboot),0x|
- 00000200 30 30 30 30 32 30 30 30 40 30 78 30 30 30 30 34 |00002000@0x00004|
复制代码 再看 uboot
- root@firefly:/dev/block/mtd/by-name# hexdump -C -n 1024 uboot
- 00000000 50 41 52 4d 78 03 00 00 46 49 52 4d 57 41 52 45 |PARMx...FIRMWARE|
- 00000010 5f 56 45 52 3a 34 2e 34 2e 32 0d 0a 4d 41 43 48 |_VER:4.4.2..MACH|
- 00000020 49 4e 45 5f 4d 4f 44 45 4c 3a 72 6b 33 30 73 64 |INE_MODEL:rk30sd|
- 00000030 6b 0d 0a 4d 41 43 48 49 4e 45 5f 49 44 3a 30 30 |k..MACHINE_ID:00|
- 00000040 37 0d 0a 4d 41 4e 55 46 41 43 54 55 52 45 52 3a |7..MANUFACTURER:|
- 00000050 52 4b 33 30 53 44 4b 0d 0a 4d 41 47 49 43 3a 20 |RK30SDK..MAGIC: |
- 00000060 30 78 35 30 34 31 35 32 34 42 0d 0a 41 54 41 47 |0x5041524B..ATAG|
- 00000070 3a 20 30 78 36 30 30 30 30 38 30 30 0d 0a 4d 41 |: 0x60000800..MA|
- 00000080 43 48 49 4e 45 3a 20 33 30 36 36 0d 0a 43 48 45 |CHINE: 3066..CHE|
- 00000090 43 4b 5f 4d 41 53 4b 3a 20 30 78 38 30 0d 0a 50 |CK_MASK: 0x80..P|
- 000000a0 57 52 5f 48 4c 44 3a 20 30 2c 30 2c 41 2c 30 2c |WR_HLD: 0,0,A,0,|
- 000000b0 31 0d 0a 23 4b 45 52 4e 45 4c 5f 49 4d 47 3a 20 |1..#KERNEL_IMG: |
- 000000c0 30 78 36 32 30 30 38 30 30 30 0d 0a 23 46 44 54 |0x62008000..#FDT|
- 000000d0 5f 4e 41 4d 45 3a 20 72 6b 2d 6b 65 72 6e 65 6c |_NAME: rk-kernel|
- 000000e0 2e 64 74 62 0d 0a 23 52 45 43 4f 56 45 52 5f 4b |.dtb..#RECOVER_K|
- 000000f0 45 59 3a 20 31 2c 31 2c 30 2c 32 30 2c 30 0d 0a |EY: 1,1,0,20,0..|
- 00000100 43 4d 44 4c 49 4e 45 3a 63 6f 6e 73 6f 6c 65 3d |CMDLINE:console=|
- 00000110 74 74 79 46 49 51 30 20 61 6e 64 72 6f 69 64 62 |ttyFIQ0 androidb|
- 00000120 6f 6f 74 2e 68 61 72 64 77 61 72 65 3d 72 6b 33 |oot.hardware=rk3|
- 00000130 30 62 6f 61 72 64 20 61 6e 64 72 6f 69 64 62 6f |0board androidbo|
- 00000140 6f 74 2e 63 6f 6e 73 6f 6c 65 3d 74 74 79 46 49 |ot.console=ttyFI|
- 00000150 51 30 20 62 6f 61 72 64 2e 61 70 5f 68 61 73 5f |Q0 board.ap_has_|
- 00000160 61 6c 73 61 3d 30 20 72 6f 6f 74 3d 2f 64 65 76 |alsa=0 root=/dev|
- 00000170 2f 62 6c 6f 63 6b 2f 6d 74 64 2f 62 79 2d 6e 61 |/block/mtd/by-na|
- 00000180 6d 65 2f 6c 69 6e 75 78 72 6f 6f 74 20 72 77 20 |me/linuxroot rw |
- 00000190 72 6f 6f 74 66 73 74 79 70 65 3d 65 78 74 34 20 |rootfstype=ext4 |
- 000001a0 69 6e 69 74 3d 2f 73 62 69 6e 2f 69 6e 69 74 20 |init=/sbin/init |
- 000001b0 69 6e 69 74 72 64 3d 30 78 36 32 30 30 30 30 30 |initrd=0x6200000|
- 000001c0 30 2c 30 78 30 30 38 30 30 30 30 30 20 6d 74 64 |0,0x00800000 mtd|
- 000001d0 70 61 72 74 73 3d 72 6b 32 39 78 78 6e 61 6e 64 |parts=rk29xxnand|
- 000001e0 3a 30 78 30 30 30 30 32 30 30 30 40 30 78 30 30 |:0x00002000@0x00|
- 000001f0 30 30 32 30 30 30 28 75 62 6f 6f 74 29 2c 30 78 |002000(uboot),0x|
- 00000200 30 30 30 30 32 30 30 30 40 30 78 30 30 30 30 34 |00002000@0x00004|
- 00000210 30 30 30 28 6d 69 73 63 29 2c 30 78 30 30 30 30 |000(misc),0x0000|
复制代码 问题1, paramter 中没有 root, rootfstype , cmdline 到底从哪里读来的启动参数?
问题2, uboot 分区为什么显示内容和 parameter 差不多?难道这个分区不应该是uboot.bin?
问题3, parameter 分区到底怎么确认是 RKloader 还是 parameter 烧录工具可以看到这两个东西都烧到起始位置0x0?
|
|