MTK平台刷机方案-ROM定制开发教程

关于scatter提取以及回读分析

一些基础的分区以及起始地址,和回读相关的分析,适用于老机型平台,新机型有特殊情况暂未列出

 

一、scatter文件对照提取

linear_start_addr:对应Scatter栏数值

 

physical_start_addr:对应获取StartAddr值

1.dumchar_info 

2.partinfo 

 

partition_size:对应获取size值

1.dumchar_info 

2.partinfo 

 

关于特殊分区处理:

userdata的分区:partition_size分区大小不等于获取的值

flashinfo和sgpt分区:

linear_start_addr和physical_start_addr起始地址不等同于获取的值,可以参考官方ota的scatter

pgpt分区:partition_size分区大小不等于获取的值

需要新增is_upgradable: false 等同于is_download是否升级或下载

 

二、回读相关

然后就是长度(Length)

 现在开始计算ANDROID 的长度,简单来说,长度就是上一分区的开始地址减该分区的开始地址,就是该分区的长度

这里可以看到,SYSTEM的开始地址的 0x4600000 ,下一个分区是 CACHE 开始地址是 0x3ed00000

 

 要计算出 ANDROID 的长度,就要把CACHE 的开始地址减ANDROID的开始地址

 那么就是 3ed00000 - 4600000,= 3A700000 

 3A700000 就是 SYSTEM的长度

在默认十六进制选项下,直接把计算出的分区长度填入Lenght框中。

 

你可能感兴趣的:(ROM开发教程)