多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
承接上一章节: * loader.bin : 芯片原厂提供的引导程序(闭源未开放源码),无条件烧录。 * parameter.txt :分区表。 * uboot.img :U-Boot(Bootloader)固件。 * trust.img :芯片原厂提供,无条件烧录。 * misc.img :工作模式管理程序。 * recovery.img :系统修复工具。 * boot.img :包含Linux kernel的固件。 * rootfs.img :根文件系统。 * oem.img :厂商数据。 * userdata.img : 用户数据。 “地址”栏和parameter.txt中是对应的,我们查看parameter.txt内容: ![](https://img.kancloud.cn/24/05/2405d54c69a675c1d6443723bf84ed0e_832x344.png =600x) ### ### **FIRMWARE\_VER:8.1** 固件版本,打包updata.img时会使用到,升级工具会根据这个识别固件版本。 ### **MACHINE\_MODEL:RK3308** 机器型号,打包updata.img使用,不同的项目,可以自己修改,用于升级工具显示。在recovery里面升级固件时可以用于判断固件是否匹配 ### **MACHINE\_ID:007** 产品开发ID,可以为字符和数字组合,打包updata.img使用,不同的项目使用不同的ID,可以用于识别机器机型。在recovery里面升级固件时可以用于判断固件是否匹配。 ### **MANUFACTURER: RK3308** 厂商信息,打包updata.img使用,可以自己修改,用于升级工具显示。 MAGIC: 0x5041524B 魔数MAGIC,不能修改,一些新的AP使用DTS,这一项没有用,为了兼容,不要删除或修改。 ### **ATAG: 0x60000800** ATAG,不能修改,一些新的AP使用DTS,这一项没有用,为了兼容,不要删除或修改。 ### **MACHINE: 3226** 内核识别用,不能修改,这个定义和内核匹配。 RK29xx识别码:MACHINE: 2929 RK292x识别码:MACHINE: 2928 RK3066识别码:MACHINE: 3066 RK3326识别码:MACHINE: 3326 CHECK\_MASK: 0x80 保留,不能修改。 ### **TYPE: GPT** 分区模式,采用GPT。 ### **CMDLINE:mtdparts=rk29xxnand:0x00….** rk29xxnand是兼容写法,后面是分区信息(**重点说明**)。 ### 以uboot为例说明:0x00000800@0x00002000(boot),@符号之前的数值是分区大小,@符号之后的数值是分区的起始位置,括号里面的字符是分区的名字。所有数值的单位是sector,1个sector为512Bytes;上例中,uboot分区起始位置为0x2000 sectors位置,大小为0x0800 sectors(1MB);后面的依次类推,比如uboot后面的0x00000800@0x00002800(trust),起始地址是0x2800 sectors,大小是0x800 sectors(1MB)。 ### 现在重新回到烧录软件的“地址”栏进行对照,会发现其实和分区文件中不同固件的起始地址是对应的。