[RK3288][Android6.0] 调试笔记 --- user版本固件升级无法开机问题

时间:2022-12-28 23:21:21
Platform: ROCKCHIP
OS: Android 6.0
Kernel: 3.10.92

这个是我同事解决的问题,不是我哈,也分享给大家~
user版sd固件升级启动之后开机出现如下error log:
[    3.036440] rockchip_i2c ff150000.i2c: i2c is not in idle(state = 3)
[    3.036451] ov5640_front_3(rk_cam_sensor:333): read reg(0x300a val:0x0) failed, try to read again!
[    3.036469] ov5640_front_3(rk_cam_sensor:697): read chip id failed
[    3.036560] ret: 0
[    3.465624] binder: 161:161 transaction failed 29189, size 0-0
[    4.449713] binder: 161:161 transaction failed 29189, size 0-0
[    5.433801] binder: 161:161 transaction failed 29189, size 0-0
[    6.417887] binder: 161:161 transaction failed 29189, size 0-0
[    7.401973] binder: 161:161 transaction failed 29189, size 0-0
[    8.386066] binder: 161:161 transaction failed 29189, size 0-0
[    8.704273] [otg id chg] last id -1 current id 1
[    8.704291] PortPower off
[    8.704298] rk_battery_charger_detect_cb , battery_charger_detect 6
[    8.803721] Using Buffer DMA mode
[    8.803733] Periodic Transfer Interrupt Enhancement - disabled
[    8.803739] Multiprocessor Interrupt Enhancement - disabled
[    8.803745] OTG VER PARAM: 0, OTG VER FLAG: 0
[    8.803752] ^^^^^^^^^^^^^^^^^Device Mode
[    9.294675] ***************vbus detect*****************
[    9.296859] rk_battery_charger_detect_cb , battery_charger_detect 1
[    9.370153] binder: 161:161 transaction failed 29189, size 0-0
[   10.354240] binder: 161:161 transaction failed 29189, size 0-0
[   11.338327] binder: 161:161 transaction failed 29189, size 0-0
[   12.322412] binder: 161:161 transaction failed 29189, size 0-0
[   13.306497] binder: 161:161 transaction failed 29189, size 0-0
[   14.290582] binder: 161:161 transaction failed 29189, size 0-0
[   15.274667] binder: 161:161 transaction failed 29189, size 0-0
[   16.258752] binder: 161:161 transaction failed 29189, size 0-0
[   17.242836] binder: 161:161 transaction failed 29189, size 0-0


原因:
system分区默认是512M
RKTools/linux/Linux_Pack_Firmware/rockdev/parameter:
0x00100000@0x00092000(system)
0x00100000,单位是512.

而user版本编译出来的system分区大小超过了512M

解决方法:
扩大system分区.
diff --git a/linux/Linux_Pack_Firmware/rockdev/parameter b/linux/Linux_Pack_Firmware/rockdev/parameter
index 174241b..1048328 100644
--- a/linux/Linux_Pack_Firmware/rockdev/parameter
+++ b/linux/Linux_Pack_Firmware/rockdev/parameter
@@ -7,4 +7,4 @@ ATAG: 0x60000800
 MACHINE: 3288
 CHECK_MASK: 0x80
 PWR_HLD: 0,0,A,0,1
-CMDLINE:console=ttyFIQ0 androidboot.baseband=N/A androidboot.selinux=permissive androidboot.hardware=rk30board androidboot.console=ttyFIQ0 init=/init initrd=0x62000000,0x00800000 mtdparts=rk29xxnand: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),0x00100000@0x00092000(system),0x00008000@0x00192000(metadata),0x00020000@0x0039A000(radical_update),-@0x003BA000(userdata)
+CMDLINE:console=ttyFIQ0 androidboot.baseband=N/A androidboot.selinux=permissive androidboot.hardware=rk30board androidboot.console=ttyFIQ0 init=/init initrd=0x62000000,0x00800000 mtdparts=rk29xxnand: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),0x00200000@0x00092000(system),0x00008000@0x00292000(metadata),0x00020000@0x0049A000(radical_update),-@0x004BA000(userdata)