Qcom platform, What is each parition for?
Label | Purpose of this partition |
---|---|
Modem | Partition for modem |
Fsc | Cookie partition to store Modem File System’s cookies |
Ssd | Partition for ssd diag module. Stores the encrypted RSA keys |
sbl1 | Partition for secondary boot loader |
sbl1bak | Backup Partition for secondary boot loader |
Rpm | Partition for rpm image |
Rpmbak | Backup Partition for rpm image |
Tz | Partition for tz image |
tzbak | Backup Partition for tz image |
Hyp | Partition for hypervisor image |
hypbak | Backup Partition for hypervisor image |
Dsp | Partition for adsp dynamic loaders image |
modemst1 | Copy of Modem File System (Encrypted) |
modemst2 | Copy of Modem File System (Encrypted) |
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 contains fuse settings, mainly for secure boot and OEM setting |
splash | The splash screen is displayed during the apps bootloader (also called the LK). The display driver in LK will read the splash image data from a separate eMMC partition named as splash |
aboot | Partition for apps boot loader |
abootbak | Backup Partition for apps boot loader |
boot | This is the boot partition of your Android device. It includes the android kernel and the ramdisk |
recovery | This is specially designed for backup. The recovery partition can be considered as an alternative boot partition |
devinfo | Device information including: is_unlocked, is_tmpered, is_verified, charger_screen_enabled, display_panel, bootloader_version, radio_version. All these attributes are set based on some specific conditions and written on devinfo partition |
system | This partition contains the entire Android OS other than the kernel and the ramdisk. This includes the Android GUI and all the system applications that come pre-installed on the device |
cache | This is the partition where Android stores frequently accessed data and app components |
persist | Partition entry for persist image, which contains data that shouldn’t be changed after the device is shipped, for example: calibration data of chips (wifi, bt, camera, etc.), certificates, and other security-related files |
misc | This partition contains miscellaneous system settings in the form of on/off switches. These settings may include CID (Carrier or Region ID), USB configuration, etc. |
config | Certain hardware settings, etc. |
oem | It is meant for storing OEM specific info. Customers can decide whether to keep this partition or not. Typically reserved partitions are kept for future use |
limits | Partition to store LMh params on 8976 and 8998 target. LMh (Limits management) driver in SBL writes the LMh HW trimmed data into a separate partition and uses the same data for later reboots |
mota | Backup partition for M ota upgrade |
devcfg | Partition needed by TZ for M upgrades. Partition needed for SafeSwitch, a feature designed to allow OEMs and carriers to address new smartphone theft bill issues. DIP (Device Integrity Partition) is for data used by MDTP |
mdtp | Partition needed for SafeSwitch, a feature designed to allow OEMs and carriers to address new smartphone theft bill issues. MDTP (Mobile Device Theft Prevention) partition accommodates mdtp.img and this file is used to display the recovery UI |
mdtpsecapp | Partition for mdtpsecapp.mbn. mdtpsecapp is MDTP QSEE app which interacts with HLOS and bootloader (UEFI, on 8998). Partition is required to allow access for the QSEE app from the bootloader |
mdtpsecappbak | Backup partition for mdtpsecapp |
userdata | Partition for userdata image |
keystore | Keystore partition was added to accommodate Google’s initial version of Verified Boot implementation. But, later when Google revised the Verified Boot specification, Google removed user keystore completely. So starting with Android M (post Android L), this partition is not used |
cmnlib | Verified boot feature introduced in M needs LK to load cmnlib corresponding partitions |
cmnlibbak | Backup partition for cmnlib |
cmnlib64 | 64-bit based cmnlib |
cmnlib64bak | Backup partition for cmnlib64 |
keymaster | Verified boot feature introduced in M needs LK to load keymaster from corresponding partitions |
keymasterbak | Backup partition for keymaster |
syscfg | Syscfg is internal testing for Vmin and CPR characterization |
mcfg | All MBNs placeholder in flash. Specific MBN would be loaded by mcfg image based on the SIM/Carrier |
msadp | Used for modem debug policy |
apdp | Used for persisting the debug policy. “Debug policy” is used to better support development and debug on secure/fuse-blown devices. One instance of the debug policy will be signed for the AP |
dpo | This partition will store a policy override |
frp | Partition for Google’s Factory Reset Protection |
bluetooth | Partition to store BTFM.bin. BTFM.bin is like Non-Volatile settings. This is used for BT/FM of QCA solution |
toolsfv | Toolsfv is used to mount QcomTestPkg and QcomToolsPkg. QcomTestPkg contains UEFI test applications. QcomToolsPkg contains tools that ease development – such as BDS menu, UEFI Shell, etc. This is for debug tools and should not be present in retail devices. Even if this is present, UEFI does not mount this in retail builds |
logfs | logfs is for debug purpose partition (To save UEFI log buffer to storage device). This should not be present in retail devices. Even if this is present, UEFI does not mount this in retail builds |
sti | STI partition is for system test image. This is only for testing |
xbl | Partition for xbl image |
xblbak | Backup partition for xbl image |
pmic | Partition for pmic image |
pmicbak | Backup partition for pmic image |
abl | Partition for Application Boot Loader |
ablbak | Backup partition for abl image |
cdt | Partition to store Configuration Data Table. A CDT provides platform/device-dependent data, such as Platform ID, DDR hardware parameters, etc. |
storsec/storsecbak | This is for the storage secure application. The current use case is for secure write protect only, but it can be expanded for other storage use cases in the future |
logdump | Reclaim logdump partition, User Space Log Extraction from RAM Dump |
vendor_a/b | This partition is added for Android O vendor partition |
spunvm | spunvm partition is used by SPU |
ImageFv | Used to store UEFI image |
mibib | The partition file of NAND flash |
qdsp | Modem image partition for NAND flash |
efs | EFS partition (Embedded File System) |
tz_devcfg | The same as devcfg partition, contains config data of TZ apps |
loader_sti | The same as STI (System Test Image) |
multi_image | Multi image of OEM for MISC feature of secure-boot 3.0 |
multi_image_qti | Multi image of QTI for MISC feature of secure-boot 3.0 |
scrub | The SCRUB partition for NAND flash. The Flash Scrub feature is intended to enable the NAND Flash and the data stored in the NAND Flash in MDM targets to survive 15 years of use |
secdata | The same as Sec partition for secure boot |
cache | The cache partition for FOTA |
efs2apps | The EFS partition for APPS |
metadata | The key file for FDE/FBE |
qupfw | The firmware for QUP (I2C/SPI/UART) |
QDSP_SWAP | This partition is used to save the swapped context between GPS & LTE at runtime in this partition as we only have a single antenna |
QDSP_Paging | QDSP_Paging image is for the external paging purposes to load specific tech-related code in DDR for memory saving |
QDSP_TINY | This partition is used to load modem image during ideal state scenarios after PCM cycle to save power |
mdcompress | This is for minidump compression feature. Customers not using minidump can ignore this partition |
connsec | This is for the ability to OEMs to disable cellular countermeasures running in the Modem. This TA routes messages to the modem via the TZSC TA. Customers not wishing to disable countermeasures in modem nor enable the connection security suite can ignore this |
tzsc | This is for the general purpose secure channel between Trustzone and the modem. It enables Qualcomm and 3rd parties to communicate between the AP and Modem using encryption. On 8350, the TZSC image can be embedded inside of the TZ image. |
qmcs | It is used for Demura functionality. Demura is a display feature to correct OLED panel non-uniform panel responses. Raise case to display team to know details. |
qweslicstore | Store QWES license info. QWES is Qualcomm® wireless edge services and it is a Set of Trusted Services rooted on hardware to securely connect & manage devices |
CPUCP | The firmware of CPU coprocessor. Provides APPS CPU coprocessor firmware for operating state managemen. |
vendor_boot | That is for follow Android R’s GKI specification. Some vendor specific services/modules that are used for boot, are split out of boot image. |
shrm | SHRM firmware partition |
slpc | SLPC firmware SLPC is a hardware block which interfaces with the QDSP6v4 and the SAW to manage interrupt and core isolation when entering SPM(SAW) managed low power modes |
“vm- bootsys_a”, “vm-data” | vm-bootsys partition would hold trusted VM boot and system image (packaged as one vm-bootsys.img). This VM is for trusted UI use case. And vm-data is a placeholder for any user-data. |
xbl_config | XBL configuration image, it is used by XBL for bring up option. |
aop | AOP firmware partition |
rawdump | It is used to save the full/mini dump into flash. Please ensure the size of this partition is big enough to contain the full/mini dump. |
uefisecapp | uefisecapp is TZ application which is used by UEFI to access RPMB for some critical data access in secure world. |
core_nhlos | non-hlos firmware image used by UEFI for subsystem image loading. |
featenabler | featenabler is TZ application used by display team for some display feature enablement. |
uefivarstore | This partition is used to save some variables by UEFI in non-secure world, for secure device it will store variables to RPMB. |
catefv | Used internally, customer can remove it from partiton.xml |
usb_qti | Used for improving USB enumeration boot KPI, Linux kernel needs USB composition information. Since this information needs to be available during every boot up consistently, USB composition information needs to be saved in persistent storage. usb_qti is reserved for this USB composition information. |
IPA_FW | IPA_FW is a proprietary binary used in IPA HW, IPA_FW is built as part of apps images, mounted on apps after kernel drivers are loaded. This partition is to store IPA HW’s firmware. IPA HW will help AP data package route to modem. |