# 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-70022-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-70022-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) | The Qualcomm Ptool 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 configuration 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 universal flash storage (UFS) and embedded multimedia card (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.

- The 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
- The 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.

#### UFS

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.

- 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)
- Optional options:

    - `--attributes` (Optional 64 bit attribute, for example, 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)

## 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 about this image, see [EFI image](https://docs.qualcomm.com/doc/80-70022-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,UklGRo4zAABXRUJQVlA4TIEzAAAvE0PqEP/joLbdtvlfkkfSAapAyh9AdiKpg4TDto0cyfbMhrsPRX0h338Bl+9mx20Atm0DgFBJ7zkv/+Wh/JFZkskmsm0nSypzbClRgB0EIgoNfLqcAAD4M1MphVowN3MTSa2VuakFkkRCEknm1lpjbubWe1dKMc57tVbjvEdSrVUphbn13vXe9d611ozznkjM7fY6KKVQC7135vb4nKiFe3sDUAOo/iLOFAeCgUQAOSBzysQFYkSiTGSeiQuZJYAcQAQgSuBF4gfwqykBEYv4kzxj5BGx7SA281hEXCneasqsBJWIiYjERERqIiIx2Q4772E7wnlP2xHOe1r3cD3Tusv1LOsu17Msm3gsyyYey7KRx2ZeyWOzbOSxmVeIkTxgOyAzZUKMv3W/iJGmJWXCtKRSfsb56/3/eP3uRPL8npHEUdu2DSP/f3Z6guwRMQEapdXQLQkUg3YCGKAiyZCPbEqFk4DBFuIBoTy2J91HXx2gaSPPuS2T9J319QCMJUl3a4G+URf6El6BEMIKUQGEEIr1hwg9rd/hCx3+7xkkM6tn+lN3je2J6D8lSJKEhlHteSPARtfTywISLfS3eG37m7aZf/R8cA5Rv0KEITo2sopdBN177713X8sYCCEYY4LVhBqjtgL+9yH9fhoW8L4piug/Lci2baVVT0E5AXMkyX14mGuf/O7EVuT519/5Cvvz5stcr3zywy+/Yn9++vzdF9y99flvQAH58RPXt28++wNoID9/+pyLT38FKsh3rzm99AWQgV/fd3rjRzoAzzpvfksJvnwx9l/sv8caNTvdedp1IaVdOcJT0PFGa2A5M+rVeGaZTEmP8OwlS0ijNbI46dfcFXYh2lNNVjGGMbD4GbddsQlEfPb2EIYxtITSd6FnIOrpMmLwdPH4pssIb2gJp4v4epaH1NFe3fJiiPYGnlhtpFezvBmuHASmCcwDYwgDDFgTNAL4GZmPoFrvtBid87tIh+P6/JL3VvNomsqH2gB2xf1UncJ8OmtskTeIPEbkm4vp6vJuInHG0xG2zxapzGXZ1Bc9wbJngSJSAIo9I+TnmjcUQ8KPZ2dIH0EGYGGSnawHAgB1gh4aQBajpUsFSHpYCXCKJiC6uk4AFGuxpFMNNRHkiyOGunQAmk4jE2ZT6jcHy1Xj9Jxv4MEhLMUvDNVOFLxoMBTbmWobywsYRYcPbwwsH4Iw7ItGe8FwE8/ScSmyZcDa1A5UpaGUtBceru5Gi6VIh8koCzRgA0tJTiPjcqV+a6i7u7IsPtOjKcsu2TdnGkqiBBmLLAIaUqAA9gQ5OsXUC6M0oVRQyWhYkBGqGP0qSIkAIA1oCQBOcTsDtCOPzhytwYmtwtHREdKyZS4GgPIxCwrrgqmLyA2liLRimX5iL1iyYUEXyY5IS7yQWGG2JBFYdqCbs7hSvzU0LfeIGPtDZaxYDgl3h7IpS8ZdYCjgZujdXs3IgnpRYAjBzrClwLKkU0kHXlAEUd1COwuHgjqArbzJMBbUA8Oc0I6IRKfMjdl0H8W8kIZQ7iC4WnZSONmFDqcNmBGRlpjcrqXEETLztWA1zgtb6vcOy9vmvEMu5S6uFLIsKB1YVltnomE6U+osZ5iS07rYGegixZQzT1VEMF3ILaceQTryGJjPGjV7O4owV5jC0E2Z+PGILOQbsrlGc4jsVC6mvTLFERFpiSGWjqAR9rTsNF64Ur+/XYpdDYM5Vdx0iBkygAeMg5tFrkOA5vTuAgDPMGoTOiQDZAOir28A/yByEr2l45LKFkYVg1CVlbRGq0ug5W71kg12xpUsE/qEIQ2dxgtX6vdptRXY5sU9tt3RS9RpRIduZ4s5q9lJG68+TKgN+tNu33S9CUOOuvZDO00QLUSbJXVSSrgZsN/M2EhWy4PNzgbuLAQJu7DfDNh0+g3azLOBb5ul1nA1mtURm7K7PLOdJlS/Wbi6wlSHYDbkcHVzNJinMkrSotW4X+VTtQn7u3dfZOhVxx+gAqRlNkuQwG8WYe4KdPE0KCpy1ObtQWiiGRKhpQEeBsAKNvML5Sxc3G32x0GFLt89ujyNC9Hj535m/ZALkgXlvZqzwnlgenw9LtZrejIiiX5fE+8ZJNEDB2NMEfNCoC48Vwr3gTEQ0YHV4j30nFqzBgQAoO12h3G/ztmlZ548iPr8t//yz9/0Vg0cgNHsLtKp83fo6SeSkZ+//tM3vSXTR94F+p88aJtS8oggQClNESBZpQiyHvvvt/+8S9mq+5M8ZrmPf3XQbxC7rJjePowKQK/AucyfhIqURWSV/Sqvatv1al2Ek3N51i3Sc+4iTo2X0ftRpf0I/cmOXWW5P9BDqzIbUd0XbmjLWVX51hXRRk2j4XV+rpIi/cso3uGAsK2ctxHVpq/xRr+xZbIzpy6jn5/sS9N5pXWb7VKzY1eXHUK1IxkaoC0Zrxq1yDkzsH84bNqWamB28Ad29RWYmHH9HMdymCKH+iHUF1AwlNwb6tGBoNacLlLJqOloZNQqSk1qqhX5pUH7AdQnLORO1fx2YZfAB5nQHFSdK4GoVHpJAZQMii3U3+GGmcxBUzPCmQLUC7KrMdKfa8F5kXEbMnTpWGsq9/vSQmbiowPGGYDacxEp2btTaQcjCYajrSSjLRfvnBvYz0ufjffFqOYoMbTXKYOB+xLpvauInsNVF1ndXiHNyiqy1njtGG1Yw6zXsRpH++cZrFKf+6DcNPCh9zZbF9lcp8NVvsW7o72/VP9qbYnVZpyz3vXYsml2sY3T/URYoYvEIrUGPxxWy/HqkIsVxPSQwI6uxkUdo3bvVTj/G6/hxsWNr7FjROQqMnDvOqlL4IM0IicdVdI4rnhRCksWaEC1I0nGpKPfoDfHRebD4Gk5paqtMaLb/WQjsdFKB5KbGtmOS3EDkqiI1zZRRVKzQ8jOK28Ap1PQsJatRVsU1A3sp0Uh1ZREGGs5lhFRZuEKtXbZtcKZgzWlWrf0mkgCiZVyRX6VSmZ9x1QpuwuNtdEc3V7xIeN2xSnUhBWWnhq7O80bUTmJd2fVDPqcefRPo81dCuCZValS9T5IpyNf1OwUIoP4Yp/Z0M6M2AuncNo78UUlPaiW/PD0G9iRqkjH3TFXrGK9CliYC5IbFz++UrEm6P5ai44UY+hF4IMQ4zS07EqYXtTGvjvuWyauXfPR/wg7YU6BHiF2NUbzTBfxUcVHvtI0qHJQo9+XUpVFFwpHUyPRAmqq2duUXavzyuKEbDutqRsjcLuB/URot0fDfrVlDmmKQ7hbK6j6kYkvIWqNJtg+EzAXqfnmGD3Okd+dAZ6wZYI6FPqZx899mGdgnQ8KWqtQb6ZGjzuTRO70CKff+2APmD3UVpLIQDP4nkG1OH+zyKbhNHZUEUWEs1smxHRMhGrfpgHOp547O4zZuZrdu6P3ymqzBVaPG1/jud4ijsCHhdtOE1OJDMIaieqI2AMfCIlom5/lQY0gInbanlJtGZF+ADj6S5toXkkPcLVAv9+XqDLWC04bh1SaVA2mpSqK1XoVGFBrMJmHvTbF7gf2EzHoakM2GSvUHRc0E6H5q1dxkpiMlh6RicjMmDP+9zi5epooUNm1fogPAWav8sLtKGJ9iNMf+KCJypAIRhWppozuyvC/I3lMUzN7LdPsDKWsjkuY5jx7DjKMi6pa01PPAzuIF6r33HnltVF9RAc1bL3aviPwganbitnWrYzTi9rUtNH2PlA2835hX6VEcO/LefWUZmt02myXq2xsHYd02uq6jmq1BfsSUTJTL5ee2hnfoRETCal5rzos1R3s0oxEOET2aq6r6bMuBKSqSh/GEmnJ87A9ZZOZdmawa/0QHwJSNof1YYTvAXzOQXc8bntPRnb4fazROScGPox1pLg/CkQEtI9Eb3yqZvI0cwCqZHcgfVxsAKeWxeO9ci09YziyPZwQm4+NDIFlko4tyx7QRfoZpWpEOW83RlO4BnvAAP24hY3D1Rjo70bRQCIsQkgENOy09TX6falYpzfS1cyB74DbXiTsoTScV96Amv1HeGPi1i7Hej+wn5chA+YZ+IkBZkS3iC5gFTP1tv0QS/fZj3bi1wgkMu2dA4LDuRH+ItaHgDNLZqB0I8tuGqAMSx+Tq0ipXptiUz3TbIi2QFvLW3I1deoW1aNRlJqqysZmfnE4Z7nWHzZVc/hsuJ+YHg/aRpwXqNJwO688x8hMblz8+B5t4T/htM+AW7wP6/xdYn+5TO2o9aKm3YluYVv5R6GrJFeGw3Sas5RiP2vQ45LpBsy7fcl4VYsxZeOcuOzM7KJ4WCV5r2yncrQNc3E8qcqCIROWH9jPCxGyOWUi1eiI09CciU87OwISTnNxCSSaCIu8iJe4E9IDnPAXcT54pKBxR6KTfw7ocJo+ZSWipF6bs8NUVSXyAY82cqLs/lpdNRONSWr0G7MHjCMqTXneGlK2b5kORDgDr3wrSOTHJRjfiZSw32hbDu8DJ7dVYj8CJRBl/GS5xQzalA8CAEvgeQAAZN04RMy/E78aWe73pWKG0LzTyk0YA8+biBznA6966JU5K2EV8c7Zgf3MC6r2jLL3FtmBID2dBqpU/PW1iNFyVMp+SCxxi6tG42r1BSNMSYEPesqzpe67sgKRxp3XCtFAm7XDVXWvLRIl4kz2ckJt1sv9WqGBS6kfyNW49c55LTkYl6jGve/l+3Fwzm0nRIMRCETd+7n3I/3ywDCnTp3CoIybncgL24FG1buxuxkeX/ad53vHe82tV+pF7aDUz4x8VVvPSQzPRA370fQXp31idt1fVripi2w8a7PV9X9f5XFHn+El636ND9IfX0m/a9mJiE3W9gNytCIfpD+i1ijX+16l446ytlvri3yQ/mfU9yq9Ue8aZG3l4PKvUY6WK2/RwTzPnNLWNFZe+53+GK5HRu9dfdb2HcquGU0mtSaKsPlXn6OVkmpO0rFiyiQTS0E12dbKLtt6oz8Ec8Fu86ZB1vatyMP8a/jBfQ0x+dcwR7vERshM8imdCVgdPtsa6o85+pO74+qztm9FHuZfH+Pyrz4LMhNRhEmWkrvd7LOtj6nm/Y0hyIu8P//JY1z+1bGx6wpY2ExUn+lq2WdbX4LkLUsUoPWvZPOvHoUpPepy2cLTyXbZ1lv9/qvjlVRydnnTNyw2qepfyeRfA6SanKhHE1IQRnXZ1lv9F0SHhETq86bvVMD5iknVHUdut5OkRoXso2J7GTe6dd/rd3m57nTq+Cps217e57Xike+EnFXsv9h//+WVoQgzNsNbMzYLK9gt4K2CDKE1y+we6Tib3fQsvGBWlMOdv87KWJXiDDyLtv8Bw6vE/vvtP7H/cJTR6vZN0+y2a3SgNbBcMuoYJKA5tDgZdwhAzxLIsIb8DMejuBvruM+0LNE3zNezhDMy8F7L8pAB3ht5YTWxXtvyxMR6I2+sOs6rW+4e3GucX7nr4byOu4vE3bPjBueIIc4buDtpzDcmOO9wnunucn7f88RDzoNR3tji5PL+/Ab+s3gSicQDLBOpn+vqLvcG/m8+u7Ssh4lzzoERlNd3d3o6/xko4GFt3nGR49ME5y4mzqvxfvz8jPPjVgfpX2dlWt5SQ3pNb/po39swvb1He/WxB13E74G3PTSZUH9eSE/U0EB90BG+IJU/g29/+qN7ZshYQA+xZnL+nefPf3iPIOTey6wDYvnf/8Hyd/LH14zO0GXGWt/xEVpt/gfDf/g/8ofYjGa72+02awi2FszfHP7hV8PvI/3Txd/8evjNsD8B/NOvB/4Mf5L3JfVWV/z/XEsFOdT5q//6c1e1NwlcaVeOphRK669m3+Vo2KjL3TCT0wd6dOeowErBmmUyUfWkH6Tl2XqryX0ddt9wt5eJ+F/0Kpt/uJJOiHuW2Vtr9USWw2q5YhOI+OwF+nt2wqLsn0OT5BrLGFpC6a2Sv2OCLge8z1GWdHVtZQw91zl1eXMh6+sf/yudbcTX9bT2D9qreVskDu31LU9pIzjh997eIb0Ox8Ozi2ve2KQbK5Ghwfq86BO/DeAPYWNxvn4b8OGznCZOErxFHTr+2mDbjmkwPpwG6zCAPzfFZHHmlyybBy82pFcFoqHB+iA2pK86nOWwEhfWdeIe59iI77+VmzlK/wSEB/xPDGPpI784/+HzEYS+fmeouTtfDK9v8CbYB6MjpHU0QN4HhiEDIUFzkpAypG0pkIGWrATAUqBABYCRYABAazCsVKMI14EhA/QFWSaUnxzG5KqPBrTDzgBNFrQFGaFa91WQUkoAsCE16+u24xKOQcLN0IzBPUH+KuPPXOIr3tU4EAuqJNoMfWN2bEzC0BYUSSSIewB7+hFFJAVWgW6P3wmMsgtXRTnas+EIwU0oDP2nh7HCM34rsDqwIR3bjIgiiGoXIDlf3bj4MbDKjftDAY+qbwSnx7w7BqLCPNOE8Ew0tQsD+OxrDPPsioiyoHjWkbdFGEaBdY+r4ihCtPAR0qBnlA+DBZn/3fZpMzswyz6WGmMXVBURTMeye9y4hGPgTtHrCB3Qvg/cmy8mGvxVgXXmHqKZVha2FLjaM1YngIe4Ku7hCRWzfIJOftrnq3XEhpR9rH6IG5cQBtBvAXX+5cKygt/c7BklPeqOJFG5J8PC9LhrjztBhP7zky75vnlDPsY6JtQG/XGXnnXtWwBwnPMv1iC4zWiv09P96iw93WHkKWSpDoZ5mOFq3I6C262WAqA/O0ufVPd/85TUo9UVpnqywfnqx8VBZlwS7m8BQ1cPEidn81y5HxcJ3cMGAfZbEpAKA2RggxJwgi0ZSrRZTAIYIh2S/OTsTgACIOW4bUFoohkSoWUALEjG12CziE24B9RvAT33xUQbS3E/WFh3/FYOQdaZPPzkPXE50++DGzv5Cvxzc6QDBPukLyjft0xJ3fKWEYRHYskPZ90PhGH97DmrDR6YN+X1uIcSkw4hVAqwvK9oenuP9/2+nhdNvGcMxfUwfzZCfYz780J8fuu7zpXCeGCYHldhn7FZ1CsWMAZAe+xt5cRCIeJVkzrOAKPt+pMNmvwhwfKRHuEpJfcgSM88eRBl+Y//+M9fmzYLGgDUWt2+afa6TRDIrChHeXZ1CNTTTyQjLelPX5vGMroP1rPoMmxyOWA6QYCDNEWA5IQiyHrsv/gs+yO1bdX9iL67ldW7irwu8YbZR4Cq/oAHI+nQGO1Db9GL5wY8NWlbwx47uK7mZAVm3/iwydhlxbT+nE4Rr2sjgPoEhWke2LuQaHgqAD2WGFKR8lFc9tEE0D8c6hRLZSTad55rUGdvjwx45mf13j40u9ZIV2j2vuZ8HjYRm7alGrKbHPzxbNpP2EqPWDjxiKw51q2VHku8mRFWTj1idP0IBo1YBjvPH8IvGLCVnvHQ7NJKMKlDs1XN+Tys73YXHaOa8efK21wu9DplMHBfIt1cSaxOrQ+R0bvZO2flo2ZdikNGZSOgcqAt0K9ce6hNLNqaRnDjJqI9594jH+RghA9bVfcSHUFx2nt386ZHEruyKW7UpsfHNlu3oiJmntn5ELhsPQ8ZjY2oPsR4fm+A99PVeLjxSiRmp5VOVZvr9GbbgXU+D+s6bZilY65YRUqqOYkIEWUWrlBrl10rnDlUMZ9JxEahMNaCKpVyRQ7AZPVTzclrC/RTrlSdtoCJ5Wjr9WqB/lVTqnVbHwKUSkU27jw4tfniVs2gHi9RIdWM2/mgUBNWWE7UqqfZ80vgg3PZeh5CNaUzBIlEbjy/IR4XzAW788qzTakrKOfo795sM7Dr/V20YBn2Oqrj3nXZ6xKqN9coCu7COtrXNrJILuYygyliy8Q9YR1hTpvR7y6mOnltnnQmV3XcXus4HzydtkyWgVvWza+E3JjUI7xEhSkbu7kWoq6gtQp1Jyom8CFyWUOs/uF8cJ4/xdVotSXv1VOa11+rE77mG5inWBRUZiIy9FdxkpjM7tMtgf5hhJTqtAX6ma7mtQX6iQhJtl5t32J8iJCCmc17eCLoH0EgUZ2XmokwwOvX06z6wIenWP3NYT1/jKvRasPtvHKi7koVMqL0+4AoY2LPxq7r41giLT1kGVJz2jwDp7JnOTa23vuw8zTfYnyI2HsxFWnUe+8f03mJnlRVKcCJGnTaNgQ+vAZ/DLZGBzmvgs6UOjwpH1HyjUBkc5GOKg23wpQesrHLFtEFrGb3km0/stFtRCS+B8fRf/QunE6b028vCslr8/pz2cJTbLvF+WA20y2ctjDJxCHa5DHKsNR55SV6iGViwEP9zgdH5Lm0eWAZMJ0PT3F+2hovSCVn51Ug6q4xqUx23Glb5z/RBRFOc42TsEdnooaUReG0btVtoaOiiibCIveQ1T+RkMVqC/TvhJhAnbZIP1J6SuBDPRJJdkajmJGwPqbDaeq8shIdVgVVz0P91gdP5LlCPeTjp/PhId5Px9cISjYlSbbjuXLZqdtWkNDjtW0CaNsjoqpsEbNerI4dXnUfcdE7DqNlhzKNDN2BQqPN6g+UqtN2p/9J24Hum1Kjqp60I9+Z5LwKJBoFVsXeoqeq/Yp+tZXHZYg4/aqBZc7zmy7w0/k1Tp2/Eu5P9qNStzM70LYR+BWRs1r8/1zkcR8FSV+OuOrQccOP0PbxVmzDS7nVT+DDWms9yOxu1f3U803Qw8/mX4i4dup0xwdqa/3FCPADan34pos6dXdPuotwcoq1LpGecxdxaqwM59UPptZaw8zuCwFjx9e4sXoh4sqJkw3rep5qeybnNeoHEeVWFQwl94ZqjDivRczYRSoZNR2PDOvDD6a00sLM7isB4+WvceOiQ9vZrfpNHnfWbm6St7aOtNWMGj2scbGiiVdGGT6+GpTR1a7X1tRpi3fPyhLETke/2rKZ1PCo3rv6HO0NY9hAryPIrbro1sbp7mgwXSS2aomNmlpESn3sQ5+Nd5CjlbWmkcNBsnjf5WhDs/kmazsU1QbOc75x6UiZtouL+vxrx5KhysJSsZsALWVPRxVJLGyukax8H9b1ZSj0I9JlWx8c3HNNJcr11lqAbSbVl+FisD5HG8KkNtD7IEfbydigYtOBSvPiqMpNJNe9cAqnvRM/9MHUmKIMsVSinCOTsObkM4N3ZruccQCTkpNsznO+gVERHxd1+Vd7OK8mSssuQAtqMX83UT1Box6V4XDZ1lsUlmjd0WXhpuozqaG6g8vRRpw/1gfctwyqBXrwjaDSFCInFBHa8QwxyVMfzCvhcDnaixSKcqc9R2x2kDP2mEHbrzie882M24lcXNTlXxW6gbqcGWrCghFMUqq/y/sAkgifbb1tjIlVIkqOMqn3qAhFELCrTWHchVqjCux8pW2ZOI+gsjouYZqT+KEPvkaboz3UUFQ3DtYHpVL3OeOIidL84njONzk+LuryrxsdbM5ct2zks39nuhq/iMu2Pvkot2faAUwaZVJfpuP0rLscrYx17DNluKkNNM4fX0SqptBGT31w2BytIRQ1gHvvy+VoY3zOOEL3oZKqOJ7zTY7LrQb511xEsUpLW2oWRxBNZczypKUqO/gsilgG9KdZ24lLFqiPnXbsqttlUv0fW+MDqjTSINB711rekqtMW8bWo1yUmqrKxiaKLDnLtf6pDwpDBkybozWEojay7OCruXf4nLEz0mSPJedzvslxcdEg/6pElKrJiSb1BNHUBf0BLqwblpGoP87aNiRkHzt16VOfSXVXRa5Gh78+rEdeFhfovcPWqLaM4CRZbTrX5IOLyQdT0qc+KNAp3OVoTxeaZITnp/icsXew+xpTUnZTI9u9khoBqrKtir2NDC9NJbiI70nuWqA8LkNcHU8VBqHW6P2Q6g4i5kGq1lTi9/LtDNj7YVxVNajG6rAqvBx51QcFVZXI8303IPup4qBi9SXHNW7Or7PaFbv8xO3RG/Zogv3U7fAzTp3NmdYu/zq1Xff/bZnHffpA2C8DQ4e+CVCwt89bsh+Dzi5HBTkV5v6dvbPsA6+rJBaxcdgAd8M7VNxFHtyH330Fr7QvScPXeKPfVKV1R8FevruzrTU190pW2jpwLtPYko9wLYkDc4J74z2XbuJbed6IMpVTp25h/c6Sx1MePId1U+0lmVBfFafCCMdtKagu8LqQO1Vx+dfgLAeWVEL9QumGitCDV1LghsXXGOjHarJPwjAM7RRAuRacDiM1F/dKFxOaiI3nLmfLEcXE3hyFbGBy1h2JkahaM2n47NiJ+7tKECkd62Ism0l9/OxYTjbWV0e9GLjtR0Qb/V30WqWyvaOXRTqJy79GqI8uLdCj31Dv3mFP6vaVDCqK3dUYQGKES6LingJ+6KfGW22BxGZCH8RGW65BLoDJe6X2bo/JDrRkLStelLtBEz47tjaRsb6Z3EZKaxJRnDaT+vjZsWbm7FjBNNsTZzuN7NlhJ5a9zdR1+ddbNvbdzdH9ERLcL/dILa7GCFU205ONmMwG1kXsaSRaQN0rHVVoY4wdq61MhclUZr2yBELMtO4kgailw92fjExmyON7uuB2TBPgFpdJdc+OfcC9gtRM8NVNE/NymzAZFYojyL+qffZeB5vM6ojYJQCJaDttDyFbY6j/amxmOg5TrwEAIv2VJlVQ90qycOd2plul7DgrlzRQ55UeV3JwHmxp70wSiLpaiY9h5hJyMSX+viKlCHV3aeJztO4W3QuUYg7UrZtpt812osOcJPRs5/Ovwyb2OnDvSzY1bbQDcu9dnLaHJFej02+6jiq59NREcYnvcvXaKtJQUPdKwtRrEgUquwZIQSLczisFVt0BmhApWSNtN7FHZBb7H+ZvLBMZt+fps2PrUdCWIfgjA8k+Y5CT2Cv7Sv6Py7+GC/6VNvYPXEjN1RjoJ7HumGh4PYUjG509qJFR5cK9kiQigmUeu3xg91nZmpycV9HCdB/hzVWaE+UOCjVg4T7KMuYp31JSFfNmAFnEZVJfydEOVA/TVN1Sin2fL8TuixO5nP+BqorLv94ybXEfxdKGamu8WX0JZzJvJ7aqUt2n05xjkzr5V1qwRBJLruZdCactzZx7Onbnle1UjLZcRfapOBK1dCEHsDk2mO/jfk/pSLTtAd1lUp9nSRkJuzgUTB5w47BbddwSBF67je66/GtIoJ/lowBIy9cY6QdANt9ltf8uWJ31xqTpX4nTUZLsc3Pda69TAHHglUZeYd4iFdK8EYWhQTS/u/cKt7r3FAd9Obdq/wfbhwS3GH1hfFU1eLrrA/36TP/e99WFr6RhGVafk7GdsB1sd/43j0zaugN1kQ+uCn3Jq30vakvAzN/i++eroFp+JeSsRl0uk/prInsY+y9GVXrTO5/+6loKkvpGp5SG9VQpebTJXZJHayo4SqflEOWWvFYnmT6CdRVAVQ9RmL5WZ/4IH2wEYbBeJ/Zf7L/Yfzdbs93tdjtNgxC0B5Yzw45BA9ojyz3jroH/DNPiZ1THfvWRJZQ27quPLcG0MZ8xsoRTR3wDS9zIQHsty0t6aG/kiVVDei3Lmx7SG7i7OJvn0v2YIdIbuzs5aTQaF5xPgvLqlrvEGf9mB+W1eC6u+T+A8rruLhMniZMzzgYT/z08vX/RSJxRAH6OG/ivxbm6nGucuOujvCbnsEjiyrpOcK66OH9chHO3k+O7x4kH7poEcPz86rxxfmURwPHztuUtfax/Pe7YmzrW63gywPt+39CDcQ3v1T1samP+vJCWeOMV9+dKtceiF7xyVJyHLe6nR+ywtXEbEEuVOZKcRdtsqS53Y78GmAUKDkUAiLgP3O4wXnyEW2bJJWmIwNTb3YFpdjuL11ZhF/lHwz/JH2nDMPI3F3+SXw3888Wffzkgf4K/l7cqRnMeQ8zkoBie/P2/az9RDQeT8H3v4ai4anIwWe+0+o7ve44HbYNrL1kohuntH34idkP3zeRqMrNy7LK9NU575Gk1xb3MLLoOPiYPQmWSLMHqySRTXNfUBV6aPWq5/ocMm0TZtwqS4TqSWVhN30xJRprIrXp2o/LvmJAM1T8nZH1FfdddX8u0hWvPEUnW1x9yhInkgQBdxFfzMg+gifdMy9MSo1ivaXlKF+uZ3oyQXs3iub7kjKFsrUiTG6TB+ihJA/gLT4frLm/1k77/BpiWYjak13bHAe3Tw4qz8EuwB/ALFFg/AmpfVQY8DxI8o0CuEiyRP1pYunRTXO058vFtgn5VGfK2HXOvrOA0gLxlZ4BmKLgLZKDVAGBYPbISYPdYWQwsDPz5YEzW/ZQhJTSmsncYKUPqCM0QymAYZ6YlGADQGgyGAsAZSMXZ3wDT1dnhKMEBKhS4kimRARIMV6kwyVcVi+Pe8TVXLSgMfWOWgjqAA/rGdDqnR+iomA4rSyFLBv2MMFaY+KbBUETJtBmGcxhx92Mv6CGU4XALhiYEY0E9ejrw8d1SYTGwJxRIdDQOqJKPcFYsIsRfYy4TFxZXMyiEZ3KdiSVIbqHAOlounJ4OLAvqRSgrgWKWj+SpjByCOAf7/N8nxlREhSK7DecwoixoZ64ZIhmPYCmwz2Bglg2lHsMNKketJxS4RRhGg3mEZxRJKArzS8z1ScMKDbxosKCIJLxhXTg9fLGh3LAYKvCHcvtAD0Ecdm/7BQ3GPPEORxSA9FEsOK2UgJUBoB05445OR0uBdcCjFs/yl5j7idNGI3Fy350RlIRmcj3osum21TMedBl0AoLKp1xI6yAHcpV+ZGfsV6kBCfVhtzFFnal0i+T6dcXkn+xJgndqGxDo5mTfr7S71QzT6bGrh1PgZAkByWdkqRPl9+YUrU7yAh1YkmE+WCgwJfVoNaH0ZyhkqTCi1VLrtfx1pW9xwr9hhuxhCUhFCfhmM4eTJRXaZ2RvBuDzw/Bus+eYtZQNkqHcIcVoZsBsGAQZ8qPVDJCB3WbmlVZH+brS9qobquPnBdbHyOowPx/yJICvAVE+Y1si1Y9Kql9YjLHlcem4m6iQfD4AIpLi3ERf4uxh3xsTbiDE8XXBvLR+ial500T7LlPX0wqjiN8DH4obG4jPGAtf6oD4oD4WvqA+MIaWt79WQTUdZWZshlUAuvyNPfdBtelShCnKgFfAmH/gYTnFI3YQWR8Xk1XMAgDNrjl/JeLQ7LUM/i7pGRZVkatwA1VnK8cGmptI1uMg9Ey3/P2XYwfq2M8ckwRT7EbsP4TUKfhpiidkfkIFSNs8ESRbbeUXAB3WpmZ5K3cqQAJhIkhaAUAdCXDaZ2+KLALsh0aLWIS6QAJgqUWE04UTLrlKzgj5zUuZdakXuHYqccdScTOqIgtV6bAzMy7x1LM2V5GOdkqvnbKBdMF476KmROZFPhLuFjbMJSLEE7ZI05xgSMAUQTaAIYsMMBxh/D4lc6fIy3xvlVzAhNvVMDQDAHcwWjLckrkcyDNhv4lRpRc6hVnTtp2hNtx3XctntaeH3Xt3ocLbjDerpWSZfrVmllSMFPCrh9ksWF0i3sibieLdZouAqESbLeCFkNBt5u+L5OQ2ex8jUlJ4W6PCafJ6g/nOvn9u5wHS+hG3+mD+mshZ/X97iP0Hj6vPRugVbCCH2QipXFDDbASReUENsxEs1DAbwYK7sxFuMW6Kgc9GcIjNRsDcq8BnIzioYTaChRpmI1i2Mc1G+O0/21sQQOd1Z4CsTQ098Ep7Swo5rFU/RZQcPfTARSSVHnrg0qQpMaxVf9Gx4t4DR2Eh6IFPmEAOPfCFQ4AceuAVTrMf6+qBdwSoP2yH6ghQ3F5Z3M4JM7iBxviECesN+j3wBV0W8g9iHs3EUrMY7cElyIQ3b86qw/l3LMtcju8E0ESaCQUxJSCViZAu2GjJCRiGLJgXpZx5Z5GaY0wVTIF2sjowT9BTVj4VA803JYrZvEmlKg2lpr1wdDS3eBnmpiZYpcNcMCSVi32mIJNEM8+g1Aw3N5Up0N5OVYxLLjouRd7AUtK7Mo+rBYhlwZINJuLAMxeRAZuzSC0T9CwsM+fcXa+dmqMDkFu97xY2zAurfas5EXKWQykirWw8SiP+5S83I//8K75Hj/7EBCLCyB1O6zD9eUdhGfIAs9pMOMvGODjEF9lUcLsahicLI0AAgSlh5puFv/z3G59HiKCzOfG4O78wDrmZzrJgHzou30lFkkPJL6EwAxR62OXmZVZ8U3YduijVs3olNau7W20RMqsZtybHADYsqCI5ee5XS8CCKTnATGueMKThu3I1I0DZZzPgm80cbrOjKKFl+3sbkwDS8txvFiEVIMFy+LK+1Jutw+Gf6WOq9zGE64v2PfAcOZw7fKO9JZUaeuDcf1F8D1wljRx64AoggVgPHHOFoQcuO6u49sBReK364HvgPI9yauiB17Svjhh64Pa+yFamc4f/7T/b5eF7D/wZjZHDWvUiCsymh3OHz5XZ5DAbodNiNjXMRtg4lNm4OxvhqYzMSyn42QgtywXuzka4faDzMgl+NgKYppHDucOfjhrOHd6yjWk2wm//2d6CAjqvGYBJ5NADNz9ATA49cJgX1NAD17NcIYceeFXJuWw+ZIDCndfg16q3Em23HjgKz0YIvgc+2UAMPfAJU/ISOfTA+fyTbUw98N/+gx/Gpkv+/suxA3Xs1zMxn997F/sP8dDEcRGaOH5OE6+zivfW6TkTlmMngOqeo+MU4bcPaJX2gvHk2VIIvhZMhwTACXCJmqdvTlCmBKTmeZu5GbyiMssxVnaHzmvBOLoUGJKLlCQD1gHmpibQRWoxFOkwl6iQz3Jg7jnXcdeCiRHzcHMmWeZp/4d8Xs+S/ULihaW95EDkc3O8hQwzAURkwUP15ObEEPmGKoXdQ6iKxiSz2kMsCpfXgnkCsnBMM5sFq5cobF4Lhk9b7JjqwnlchO07HiYK59eCAUDxtWBo4nVW25PE/gOk7YGDmpeAHnrguewcNfTAAdQ5YuiBOwj1wNFYID1wB2LogTsI9cDReF6Ifz1wERTQAxdBAz1wrm1DPfDYf3GzNEkMbwJCJctYnhxmI0h5qDCNGGYjTPM2gKTSw2wEsFmZGNaqX8jmCWI2gpKdou9sBG97F9BsBFWy6WE2gpaygR5mI0hsHum/9LMR1FxnTHtAxtfpCFDckbpIBdOmyIQXhE9Y79WcVXBzq+L+IJETuixi89nOQhZ3u/jixUuZNy0KMydgJqEEkBmg2re2KkcPDFkwL0o5884iNcckwClM4n4CYpLVgXmCSgPIIh2A5hsVhp3TFsNekGTCWjAklYt9piCTRDPPoNRiWCruCxevwCYNhXHJRcelyNvEK96lAAB1ySwGFrMe+jJzzujpuFNzdAByq/fdwoZ5YeMVW0W6v/espYi0svEojfiXv9yM/POv+B49+hM5rkRu6Acz4SwbO6yg44tsZN+uhuHJwggQQGBKmPlm4S///cbnEcLouHwnFUkOJb+AqSBAoYddbl5mxTdvx7g1OQawYUEVyclzv1oCFkzJAWZa84QhDf9YViOMnQASWra/tzEJIC3P/WYRUgESrIPbLKnwl3qzdTicvlDfA9/fmHvghOtrgA/J5qHCytSwVv1+hSh64GVmC/XA0VhAPXCNMQWRe+C3GDfFoHrgUElpxNADnyo2QE6hhh64pCyuiKEH7jgu8p+BHjhKieTXWcX+2+Jq3emBu8lKvB44ivNh75hED+cOP00pEpBDD1zJaxJQQw+8nLI1CZF74Jk7RV70YHrgWRXmhHrgaCyQHvghW4pNDucOP78ignOH59o21AOP/Z+NEMs7G4HNo1DDbASb2QDkMBuhzACAHGYjaIyx7JQaZiNU9sGWFIJYqx5UiRrOHV7VlhDDbARVsqeSQg6zEXKLu2wZmo3w238ekzU2XfL3X44dqGO/non5/N672H+x/x4nVKsns30UGwHTBOUUvEdFVDZFd2WWAKdIAchCACSLALvkjJBFYQmww8Wf0tR0mlLdlsPAbl0qCqMqsumoSoedSReMCSogqXNTSVUk1+UwsJvIgrVEhAwTtkjTs0AcAYcpVnZdDgN7eVv3YpnA1AwAhg5mtWUZlu8oZd1HOqP4VU076iI2TLcatBQ7dIXim0uWiRfFrVaLJL/ZNKWqkisUf9giICoygs0s7r5ImR0qEkxTCp7f+IH3zx+zB/Dbf7btw/se+K5JEZVT8B5VmqOF2Qh+zhHDbAQHas9GyNwp8qJ7n43gQO3ZCLcPdF4mXmYj3EACsxEeQAazEW4gg9kIMduMZiP89p9tNvC+89oRmCoop6A9BRaV2cTQAx/t/FWZHnrgoqWmQj1wzO68+tID15SK2z3wpzIyLyU/euA7UUQPPGeghx54TQLk0ANXOE3ZYtQD/+3/sxFidGcjpMjhfPo3sKgpcjif/rp/UTwbQZVAaDYCZvfA/ZiNUIFpBLFWvWjMJobZCKuJANOIYTaCQj8dNaxV3xFS/xk4n/7f/n8PPAa3B+7QlCIop2C+yhR6OHf4iXkFyKEHTqwoQA1r1XMSRaGGteoVpygKEEMPvMFpEj2cO/zV0cG5w8dsM+qB//afbTbwvvM64WqamJyC9zoJADn0wDkLADn0wCsAE+yBYzYfeuCdz2wlhnOHtxIUoR44Zs8L8eHc4ds6UEMPPGepMI0aeuCagG016oH/9p/Yf7H/Yv+Rvp0A6kMm6NueSnvBeDNTZgmEAZJO2FKKbJg5AWQRSDBXAmARBiOPMKsREv4mDLFIbhcLWZiUjmgGqO9duiwYkorgEEQZKDntM7HA/zDMNA94vsAlJcmAFf4mDHQxj3yWIwu6UNoLkkxYF2/dZ/yLSM1S2kg4WzHPbS5FYJ4ZJZIaoxHI2WhUmNFvwliyqSthFiG266FfvHV/C6YCQBZOrdWW2MD50I2qUnPATAAOMuChGjoMRz+8bReWdVxSsyygMRKsm26bjgKoit6QzGoDYXojw7g1ZRGEvQElWD396nVWW5CFb2jBZoyK/X3MTgAJzTlJcjkAZDGEm1n6UcAR/r4ItIX9bPKOxadkvlfCIiX9kPvnb220AKT1ayJn9dt/tsvjQk+ZoG97ak4Xvxq+By7CF78YvgfuePY98LctYeiBO34hfA885Nn3wN+2zwsJqgf+iF8A3wMXQgI9cL4tSD3w2H+xtypZxvKCysxGe1IeKkwjhtkI07wNIKn0MBsBbFYmhrXqF7J5gpiNoGSngrMR0PZGOGYjqJJND7MRtJQN9DAbQWLzSNuPZiPE/tsqb2UZ2xdUZjbaS3mosDI1rFXfKkTRAy8zW6wHjrbC0QPXGFMIogcOlZRGDGvV72oD5BRq6IGTsrgihh64uy+y/agH/tt/4nBlJUFlZiM+jUn0cD7905QiATnMRlDymgSIOxshc6fIix6K2QgzZWuS4GwEtBWK2QhJhTmx2QhoeyMMsxEGLMUmh/Ppn1/RwPn037MFaTZC7L/t8tg8ipgys9GezWwAauiBL5ehyKEHrjHGslOxHjjaCkUPvLIPtqQgbg/8FuOmGIoe+NLjJWo4d3hVW0IMPXBVsqeSQg498NziLtuPeuCx/2L/bTz2qhQBIPZf7L/HyhytJskJ7jiQV9OTmQbcMcvsTlbQhenIA2YFlpFXTFhGB+wBAPqqyQzABwif2H+x/x4j9MHzDi9/Twd+/3TH4blPfiMDP7zltPPaF38QgV8/ft7Fznvf/UEDlw+/2XHz3Ncf/fQ7/n/0w6ff7HDy4tvPon/ef/W5nZiK7AAA)

**Figure: Ptool workflow**

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.

1. To add a partition, make a partition entry in the configuration file; for example `qcm6490-partitions.conf` with a universal unique identifier (UUID).
2. After updating the conf file, to switch the preferred provider of virtual and 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
3. After adding the entry, run the BitBake command to generate all necessary files:

bitbake <image-name>
        Copy to clipboard
4. 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: Oct 17, 2025

[Previous Topic
Configure and secure boot with systemd-boot and UKI](https://docs.qualcomm.com/bundle/publicresource/80-70022-27/topics/configure_and_secure_boot_with_systemd_boot_and_uki.md) [Next Topic
Persist partition](https://docs.qualcomm.com/bundle/publicresource/80-70022-27/topics/persist_partition.md)