msm8909+android5.1分區及燒錄的鏡像文件介紹【轉】


本文轉載自:

EMMC的分區及其保存的文件

Partition label

filename

說明

PrimaryGPT

gpt_main0.bin

 

modem

NON-HLOS.bin

 

sbl1

sbl1.mbn

 

sbl1bak

sbl1.mbn

 

aboot

emmc_appsboot.mbn

 

abootbak

emmc_appsboot.mbn

 

rpm

rpm.mbn

 

rpmbak

rpm.mbn

 

tz

tz.mbn

 

tzbak

tz.mbn

 

Pad

 

modemst1

Copy of Modem File System (Encrypted)

Modemst2

Copy of Modem File System (Encrypted)

misc

Misc.img

 

fsc

 

ssd

Partition for ssd diag module. stores the encrypted RSA keys

splash

splash.img

 

DDR

Partition for DDR

fsg

Golden copy or backup of Modem File System (Encrypted). Also used to pre-populate the file system.

sec

sec.dat

Sec.dat contains fuse settings, mainly for secure boot and oem setting

boot

boot.img

 

system

system.img

 

persist

persist.img

 

cache

cache.img

 

recovery

recovery.img

 

devinfo

Device information including:iis_unlocked, is_tampered, is_verified, charger_screen_enabled

keystore

Partition for keystore service

oem

It is meant for storing OEM specific info,我們可用來保存自定義信息

config

Partition needed during display panel initialization. More info at Display_panel_configuration_in_Device_Tree

userdata

userdata.img

 

用戶可用空間

用戶可用空間

 

BackupGPT

gpt_backup0.bin

 

 

下面依次介紹這些文件

Gpt_main0.bin

主GPT頭和分區表

NON-HLOS.bin

modem image,是負責處理通訊協議相關的基帶鏡像

sbl1.mbn:

second bootloader1的縮寫,是是在little kernel(lk)前啟動,起到引導lk的作用,如果將該分區擦除,則設備表現為進入緊急下載模式,即,擦除該分區后,插入USB顯示QDload端口。

emmc_appsboot.mbn:

(L)ittle (K)ernel bootloader鏡像 在\device\qcom\common\generate_extra_images.mk指定如何編譯,對應bootable文件夾

rpm.mbn:資源電源管理器,是高通MSM平台另外加的一塊芯片,雖然與AP芯片打包在一起,但其是一個獨立的ARM Core。之所以加這個東西,就是要控制整個電源相關的sharedresources,比如ldo,clock。負責與SMP,MPM交互進入睡眠或者喚醒整個系統。

tz.mbn:

是ARM TrustZone® 技術是系統范圍的安全方法,基於安全需求和引導模式配置XPU,NAND MPU

Misc.img

Miscellaneous的簡稱,cpu加電之后,啟動bootloader,(即是RK29xxLoader(L)_V2.08.bin),就會讀取MISC分區獲得來自Main system和Recovery的消息,並以此決定做何種操作。

\bootable\bootloader\lk\app\aboot\recovery.c的get_ffbm()讀取misc.img,根據和核心板廠家的確認此文件他們用於生產,我們沒用到,怪不得用Notepad++打開,全是NUL,如果不需要misc.img,rawprogram0.xml文件需要去掉misc相關的。

另一位朋友他們的Misc.img內容為ffbm-02NUL。

splash.img

存放開機的第一幀畫面,splash.img的生成,參考:http://www.voidcn.com/blog/LoongEmbedded/article/p-6147215.html

Sec.dat

Sec.dat contains fuse settings, mainly forsecure boot and oem setting,是secboot(安全模式)用到的文件,目前我們雖然rawprogram0.xml用到sec.dat,但實際沒有用到。

boot.img:由文件頭(2k/4k)+kernel+ramdisk.img(根文件統)+dt.img(devicetree)組成,其中kernel對應於out\target\product\msm8909\obj\KERNEL_OBJ\arch\arm\boot下的zImage文件,和out\target\product\msm8909\kernel是同一個文件,只是被重新命名了,通過file zImage,可知zImage:Linux kernel ARM bootexecutable zImage(little-endian)

zimage由vmlinux加上解壓代碼經gzip壓縮而成

ramdisk.img對應out\target\product\msm8909\root

system.img:

android系統鏡像文件,對應out\target\product\msm8909\system文件夾。

Persist.img

Partition entry for persist image. whichcontains data which shouldn’t be changed after the device shipped, for example:calibration data of chips(WIFI, bt, camera, etc.),

               certificates and other securityrelated files.

cache.img:對應cache分區

cache分區是安卓系統緩存區,保存系統最常訪問的數據和應用程序。擦除這個分區,不會影響個人數據,只是刪除了這個分區中已經保存的緩存內容,緩存內容會在后續手機使用過程中重新自動生成。

對應out\target\product\msm8909\cache文件夾,此文件夾沒有內容,查看設備cache有backup和lost+found,backup雖然還有子文件夾目錄,但都是空的。

recovery.img

This is specially designed for backup. Therecovery partition can be considered as an alternative boot partition

恢復模式的映像文件,由件頭(2k/4k)+kernel+ramdisk_recovery.img(根文件統)+dt.img(device tree)組成,其中ramdisk_recovery.img對應out\target\product\msm8909\recovery\root

userdata.img

掛載到 /data 下的鏡像,它包含了應用及用戶相關的數據。對應out\target\product\msm8909\data目錄。

Gpt_backup0.bin:備份的GPT頭和分區表

相關知識:http://blog.csdn.net/loongembedded/article/details/51763187

除了上面的文件,在燒錄時還需要下面一些文件

patch0.xml:和分區表有關,主要是關於GPTT分區表頭和分區表項內容相關

可參考http://www.voidcn.com/blog/LoongEmbedded/article/p-6072230.html了解相關知識。

rawprogram0.xml

關於如何把鏡像文件燒錄到EMMC中,rawprogram0.xml是根據partition.xml生成,也就是分區表,高通會給論證的emmc根據經驗值提供一個partition.xml 至於生成unspare格式,是方便QPST下載,但每次編譯的時候都會根據鏡像大小修訂,在out\target\product\msm8909目錄下生成新rawprogram.xml

相關鏈接:http://www.voidcn.com/blog/LoongEmbedded/article/p-6152203.html

prog_emmc_firehose_8909_ddr.mbn

QFIL軟件燒錄系統的時候,需要用到此文件,應該是關於EMMC、DDR的配置參數相關的

QCN為高通系統配置項文件,保存在efs分區中,被modem文件讀取用的。

參考:

手機模式及分區

http://www.voidcn.com/blog/LoongEmbedded/article/p-6147214.html

高通智能機分區表詳細解析

http://blog.sina.com.cn/s/blog_4597830b0102x3pt.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM