# Manage partitions in Qualcomm Linux

The following describes how you can add, delete, modify, and rename partitions.

Qualcomm Linux uses a pre-generated `partition.xml` file by default.
The pregenerated file is delivered as part of the
`QCM6490_bootbinaries.zip` file. When you initiate a build,
the `partition.xml` file from `QCM6490_bootbinaries.zip` is used and steps
3 to 5 are run from [Ptool workflow](https://docs.qualcomm.com/doc/80-70020-27/topic/managing_partitions_in_qualcomm_linux.html#ptool-workflow) figure.

To add, delete, modify, or rename partitions, Qualcomm Linux provides configuration files,
which define partitions for the UFS and eMMC device.
The configuration files are in the `meta-qcom-hwe/recipes-devtools/partition-utils/qcom-partition-confs/` directory.

By modifying these configuration files and integrating these in the build,
you can generate a custom partition layout. When a configuration file from
`meta-qcom-hwe/recipes-devtools/partition-utils/qcom-partition-confs/` is used in
Qualcomm Linux builds, the workflow spans all the steps from the [Ptool workflow](https://docs.qualcomm.com/doc/80-70020-27/topic/managing_partitions_in_qualcomm_linux.html#ptool-workflow) figure.

The following table lists the files and tools used for partitioning:

| File or tool | Description |
| --- | --- |
| Partition XML (mandatory) | Defines the Qualcomm internal XML format. |
| Ptool (mandatory) | Qualcomm Ptool that converts information in partition XML to GUID Partition Table (GPT) binaries. |
| Partition layout file (optional) | Defines all partitions for storage in JSON format. |
| gen\_partition tool (optional) | Reads the partition layout file and generates an internal XML format handled by the Qualcomm Ptool. |

The partition definitions in JSON format (used by the .conf files),
existing partitions, and the tool that generates the GUID partition
table for Qualcomm development kits are as follows:

## Partition layout file

The device partitions the UFS/eMMC to store various images of the bootchain and the Linux operating system.
The configuration file details the partitions configured for a specific Qualcomm development kit.
The following configuration file in the workspace defines the UFS/eMMC partitions for the RB3 Gen 2 development kit:

- UFS: `meta-qcom-hwe/recipes-devtools/partition-utils/qcom-partition-confs/ufs/qcm6490-partitions.conf`
- eMMC: `meta-qcom-hwe/recipes-devtools/partition-utils/qcom-partition-confs/emmc/qcm6490-partitions.conf`

### Partition layout file syntax

The following examples from the `qcm6490-partitions.conf` file show the syntax of the partition layout file.

The first entry in the configuration file defines the disk type, disk size, logical block addressing (LBA) size (sector size),
and whether the last partition should grow till the last usable LBA.

- Following is an example for the UFS:

> 
> 
> # select disk type emmc | nand | ufs mandatory
>         # disk size in bytes is mandatory
>         
>         --disk --type=ufs --size=137438953472 --write-protect-boundary=0 --sector-size-in-bytes=4096 --grow-last-partition
>         Copy to clipboard
- Following is an example for the eMMC:

> 
> 
> # select disk type emmc | nand | ufs mandatory
>         # disk size in bytes is mandatory
>         
>         --disk --type=emmc --size=137438953472 --write-protect-boundary=0 --sector-size-in-bytes=4096 --grow-last-partition
>         Copy to clipboard

The `qcm6490-partitions.conf` file specifies the following examples of partitions.
A few partitions are defined in LUN0, with each line representing an individual partition.

Note

In the following examples, the `firmware-qcom-bootbins_1.0.bb` recipe downloads
the `partition.xml` file from [Qualcomm software center](https://softwarecenter.qualcomm.com/) and takes the GUIDs from it.

#### UFS

- Example 1: The `ssd` partition of 8 KB is defined for LUN0. This
partition doesn’t require a file to be flashed, hence `--filename=` parameter isn’t used.

--partition --lun=0 --name=ssd --size=8KB --type-guid=2C86E742-745E-4FDD-BFD8-B6A7AC638772
        Copy to clipboard

A couple of partitions are defined in LUN1. Each line defines an
individual partition:

- Example 2: The `xbl_a` partition of 3604 KB is defined for LUN1.
Flash the `xbl.elf` file to this partition.

#This is LUN 1 - Boot LUN A
        --partition --lun=1 --name=xbl_a --size=3604KB --type-guid=DEA0BA2C-CBDD-4805-B4F9-F428251C3E98 --filename=xbl.elf
        Copy to clipboard
- Example 3: The `xbl_config_a` partition of 512 KB is defined for
LUN1. Flash the `xbl_config.elf` file to this partition.

#This is LUN 1 - Boot LUN A
        --partition --lun=1 --name=xbl_config_a --size=512KB --type-guid=5A325AE4-4276-B66D-0ADD-3494DF27706A --filename=xbl_config.elf
        Copy to clipboard

A partition defined in LUN4:

- Example 4: The `aop_a` partition of 512 KB is defined for LUN4.
Flash the `aop.mbn` file to this partition.

--partition --lun=4 --name=aop_a --size=512KB --type-guid=D69E90A5-4CAB-0071-F6DF-AB977F141A7F --filename=aop.mbn
        Copy to clipboard

#### eMMC

- Example 1: The xbl\_a partition of 3604 KB is defined for LUN0. Flash the xbl.elf file to this partition.

#This is LUN 0 - Boot LUN A
        --partition --lun=0 --name=xbl_a --size=3604KB --type-guid=DEA0BA2C-CBDD-4805-B4F9-F428251C3E98 --filename=xbl.elf
        Copy to clipboard
- Example 2: The xbl\_config\_a partition of 512 KB is defined for LUN0. Flash the xbl\_config.elf file to this partition.

#This is LUN 0 - Boot LUN A
        --partition --lun=0 --name=xbl_config_a --size=512KB --type-guid=5A325AE4-4276-B66D-0ADD-3494DF27706A --filename=xbl_config.elf
        Copy to clipboard

The options used for each partition entry are as follows:

- Mandatory options:

--lun (mandatory for UFS, optional for emmc. Expressed as number)
        --name (name for the partition, a string)
        --size (size of the partition, generally expressed in KB)
        --type-guid (GUID for the partition)
        Copy to clipboard
- Optional options:

--attributes  (Optional 64 bit attribute, e.g., 1000000000000004)
        --filename    (Name of the file that is flashed to the partition)
        --readonly    (whether the partition should be read-only, values true or false)
        --sparse      (whether the partition is for a sparsed image, values true or false)
        Copy to clipboard

## Linux operating system partitions

| Partitions | Description |
| --- | --- |
| EFI partition | The EFI system partition (ESP) contains `Esp.bin` and a `vfat` file. It contains all the details necessary for the UEFI to enable systemd-boot. For more information on this image, see [EFI image](https://docs.qualcomm.com/doc/80-70020-27/topic/configure_and_secure_boot_with_systemd_boot_and_uki.html#efi-image-section). |
| Rootfs partition | This partition contains the `system.img` image file. This image consists of all the user space libraries and binaries. |

## Partition tool (Ptool)

Ptool generates a GUID partition table binary that the QDL tool uses to partition the storage.

The following figure shows the Ptool workflow:

![../../_images/ptool.png](data:image/png;base64,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)

**Figure: Ptool workflow**

Note

The files in `qcom-multimedia-image/` are created under the build directory. For example, the build files for MACHINE qcs6490-rb3gen2-vision-kit are generated in the `build-qcom-wayland/tmp-glibc/deploy/images/qcs6490-rb3gen2-vision-kit/` directory.

### Modify partition

The `qcm6490-partitions.conf` file present in the `meta-qcom-hwe/recipes-devtools/partition-utils/qcom-partition-confs` inside `ufs` or `emmc` directory
defines all the partitions. The `gen_partition.py` tool processes and generates `partition.xml`, which is a mandatory input for
`ptool.py`. As a final step, Ptool generates the `rawprogram.xml`, `patch.xml`, `gpt_main*.bin`, and
`gpt_backup*.bin` files, which are required by the QDL tool to flash the system image to the device.

To add a partition, make a partition entry in the configuration file; for example `qcm6490-partitions.conf` with a universal unique
identifier (UUID).

After updating the conf file, to switch the preferred provider of virtual/partconf
to `qcom-partition-confs_1.0.bb`, add the following line to `local.conf`.

PREFERRED_PROVIDER_virtual/partconf = "qcom-partition-confs"
    Copy to clipboard

After adding the entry, run the BitBake command to generate all necessary files:

bitbake <image-name>
    Copy to clipboard

After the image build completes, if MACHINE selected is qcs6490-rb3gen2-core-kit and the image recipe selected is qcom-console-image, run the following command to flash the image:

cd <workspace>/build-qcom-wayland/tmp-glibc/deploy/images/qcs6490-rb3gen2-core-kit/qcom-console-image
    ./qdl prog_firehose_ddr.elf rawprogram*.xml patch*.xml
    Copy to clipboard

Last Published: Jul 02, 2025

[Previous Topic
Configure and secure boot with systemd-boot and UKI](https://docs.qualcomm.com/bundle/publicresource/80-70020-27/topics/configure_and_secure_boot_with_systemd_boot_and_uki.md) [Next Topic
Use of Docker containers](https://docs.qualcomm.com/bundle/publicresource/80-70020-27/topics/use_of_docker_containers.md)