关于rk3399修改system分区

版权声明:转载请说明出处 https://blog.csdn.net/qq_33166886/article/details/87965874

我们编译系统的时候会看到打印了这么一句话:

...........................................

'/3399_backup/g3399-v7-1-2-20180529_backup/device/rockchip/rk3399/g3399/parameter.txt' -> '/3399_backup/g3399-v7-1-2-20180529_backup/out/release/parameter.txt'

...........................................

那么这儿的parameter.txt就是记录一些分区信息的一个文件,系统编译时根据这个文件里边的内容实现分区,可以在device/rockchip/common/BoardConfig.mk下找到这么一段代码,可以看到这儿的代码先判断是否存在parameter.txt,如果没有,就在代码里赋值给出(下面的这一句BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 1073741824)

.........................

ifeq ($(strip $(USE_DEFAULT_PARAMETER)), true)
  BOARD_SYSTEMIMAGE_PARTITION_SIZE := $(shell python device/rockchip/common/get_partition_size.py $(TARGET_DEVICE_DIR)/parameter.txt system)
  #$(info Calculated BOARD_SYSTEMIMAGE_PARTITION_SIZE=$(BOARD_SYSTEMIMAGE_PARTITION_SIZE) use $(TARGET_DEVICE_DIR)/parameter.txt)
else
  BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 1073741824
  ifneq ($(strip $(TARGET_DEVICE_DIR)),)
    #$(info $(TARGET_DEVICE_DIR)/parameter.txt not found! Use default BOARD_SYSTEMIMAGE_PARTITION_SIZE=$(BOARD_SYSTEMIMAGE_PARTITION_SIZE))
  endif
endif

.........................

下面看一下系统默认使用的parameter.txt的内容如下:

FIRMWARE_VER: 6.0.1
MACHINE_MODEL: RK3399
MACHINE_ID: 007
MANUFACTURER: RK3399
MAGIC: 0x5041524B
ATAG: 0x00200800
MACHINE: 3399
CHECK_MASK: 0x80
PWR_HLD: 0,0,A,0,1
#KERNEL_IMG: 0x00280000
#FDT_NAME: rk-kernel.dtb
#RECOVER_KEY: 1,1,0,20,0
#in section; per section 512(0x200) bytes
CMDLINE: androidboot.baseband=N/A androidboot.selinux=permissive androidboot.hardware=rk30board androidboot.console=ttyFIQ0 init=/init mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(trust),0x00002000@0x00006000(misc),0x00008000@0x00008000(resource),0x0000C000@0x00010000(kernel),0x00010000@0x0001C000(boot),0x00010000@0x0002C000(recovery),0x00038000@0x0003C000(backup),0x00040000@0x00074000(cache),0x00300000@0x000B4000(system),0x00008000@0x003B4000(metadata),0x00000040@0x003BC000(verity_mode),0x00002000@0x003BC040(baseparamer),0x00000400@0x003BE040(frp),-@0x003BE440(userdata)

在device/rockchip/rk3399/g3399/这个目录下边有三个不同版本的parameter.txt

root@ubuntu:/3399_backup/g3399-v7-1-2-20180529_backup/device/rockchip/rk3399/g3399# ls
BoardConfig.mk     overlay                    preinstall_del
ddr_config.xml     parameter_system_1.5G.txt  system.prop
gslX680.idc        parameter_system_3.0G.txt  upgrade_tool
libquectel-ril.so  parameter_system_4.0G.txt  video_status
misc.img           parameter.txt

其中parameter_system_1.5G.txt就是默认的parameter.txt可以看到0x00300000@0x000B4000(system)
parameter_system_3.0G.txt可以看到里边的0x00600000@0x000B4000(system)

FIRMWARE_VER: 6.0.1
MACHINE_MODEL: RK3399
MACHINE_ID: 007
MANUFACTURER: RK3399
MAGIC: 0x5041524B
ATAG: 0x00200800
MACHINE: 3399
CHECK_MASK: 0x80
PWR_HLD: 0,0,A,0,1
#KERNEL_IMG: 0x00280000
#FDT_NAME: rk-kernel.dtb
#RECOVER_KEY: 1,1,0,20,0
#in section; per section 512(0x200) bytes
CMDLINE: androidboot.baseband=N/A androidboot.selinux=permissive androidboot.hardware=rk30board androidboot.console=ttyFIQ0 init=/init mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(trust),0x00002000@0x00006000(misc),0x00008000@0x00008000(resource),0x0000C000@0x00010000(kernel),0x00010000@0x0001C000(boot),0x00010000@0x0002C000(recovery),0x00038000@0x0003C000(backup),0x00040000@0x00074000(cache),0x00600000@0x000B4000(system),0x00008000@0x006B4000(metadata),0x00000040@0x006BC000(verity_mode),0x00002000@0x006BC040(baseparamer),0x00000400@0x006BE040(frp),-@0x006BE440(userdata)


parameter_system_4.0G.txt可以看到里边的0x00800000@0x000B4000(system)

FIRMWARE_VER: 6.0.1
MACHINE_MODEL: RK3399
MACHINE_ID: 007
MANUFACTURER: RK3399
MAGIC: 0x5041524B
ATAG: 0x00200800
MACHINE: 3399
CHECK_MASK: 0x80
PWR_HLD: 0,0,A,0,1
#KERNEL_IMG: 0x00280000
#FDT_NAME: rk-kernel.dtb
#RECOVER_KEY: 1,1,0,20,0
#in section; per section 512(0x200) bytes
CMDLINE: androidboot.baseband=N/A androidboot.selinux=permissive androidboot.hardware=rk30board androidboot.console=ttyFIQ0 init=/init mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(trust),0x00002000@0x00006000(misc),0x00008000@0x00008000(resource),0x0000C000@0x00010000(kernel),0x00010000@0x0001C000(boot),0x00010000@0x0002C000(recovery),0x00038000@0x0003C000(backup),0x00040000@0x00074000(cache),0x00800000@0x000B4000(system),0x00008000@0x008B4000(metadata),0x00000040@0x008BC000(verity_mode),0x00002000@0x008BC040(baseparamer),0x00000400@0x008BE040(frp),-@0x008BE440(userdata)

当然不止时system变大了,其他的也跟着变大了,另外修改这个内容后肯定是要重新编译系统的,不要尝试去更改out/release下的parameter.txt,这时不生效的,'/3399_backup/g3399-v7-1-2-20180529_backup/device/rockchip/rk3399/g3399/parameter.txt' -> '/3399_backup/g3399-v7-1-2-20180529_backup/out/release/parameter.txt'这句话就能看出,这个parameter.txt是生成的

猜你喜欢

转载自blog.csdn.net/qq_33166886/article/details/87965874