關於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框中。