> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs-staging.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Boot interfaces overview

The DT nodes provide access to the boot interfaces and properties. The DT provides a data structure that describes the system’s hardware information. The image execution environment, which includes firmware such as XBL and UEFI, reads this information. You can modify the DT properties associated with boot to customize the functionality of various device software features.

For information about modifying the interfaces using the QDTE tool and changing the DT properties in the prebuilt Devicetree blob (DTB) using the QDTE tool, see [Configure QDTE](./qdte).

For more information about DT, see [https://github.com/devicetree-org](https://github.com/devicetree-org).

## **XBL configuration and UEFI DTB files**

`xbl_config.elf` carries the XBL configuration DT nodes on every platform. Whether it also carries the UEFI DT nodes, or whether those nodes live in a separate UEFI DTB file, depends on the platform.

<Frame caption="**Table: XBL configuration and UEFI DTB files by platform**" />

| Platform | XBL config file | UEFI DTB file | KVM-based boot file | Gunyah-based boot file |
| - | - | - | - | - |
| Shikra | `xbl_config.elf` (XBL nodes only) | `uefi_dtbs.elf` (UEFI nodes) | `uefi_dtbs_kvm.elf` | `uefi_dtbs.elf` |
| Hamoa/IQ-X7181 | `xbl_config.elf` (XBL nodes only) | `uefi_dtbs.xz` (UEFI nodes, compressed) | `uefi_dtbs_kvm.xz` | `uefi_dtbs.xz` |
| Purwa/IQ-X5121 | `xbl_config.elf` (XBL nodes only) | `uefi_dtbs.xz` (UEFI nodes, compressed) | `uefi_dtbs_kvm.xz` | `uefi_dtbs.xz` |
| IQ10/Nord | `xbl_config.elf` (XBL nodes only) | `uefi_dtbs.elf` (UEFI nodes) | `uefi_dtbs_kvm.elf` | `uefi_dtbs.elf` |
| QCS6490/Kodiak/RB3Gen2 | `xbl_config.elf` (XBL and UEFI nodes) | – | `xbl_config_kvm.elf` | `xbl_config.elf` |
| QCS5430/Kodiak/RB3Gen2Lite | `xbl_config.elf` (XBL and UEFI nodes) | – | `xbl_config_kvm.elf` | `xbl_config.elf` |
| IQ9/IQ-9075/Lemans | `xbl_config.elf` (XBL and UEFI nodes) | – | `xbl_config_kvm.elf` | `xbl_config.elf` |
| IQ8/IQ-8275/Monaco | `xbl_config.elf` (XBL and UEFI nodes) | – | `xbl_config_kvm.elf` | `xbl_config.elf` |
| IQ6/IQ615/Talos | `xbl_config.elf` (XBL and UEFI nodes) | – | `xbl_config_kvm.elf` | `xbl_config.elf` |

<Note>
  For Shikra and IQ10/Nord, `xbl_config.elf` contains only XBL-specific DT nodes, while UEFI-specific DT nodes are in the separate `uefi_dtbs.elf` (or `uefi_dtbs_kvm.elf`) file. The boot flow depends on which file is flashed: flashing `uefi_dtbs.elf` results in Gunyah-based boot, and flashing `uefi_dtbs_kvm.elf` results in KVM-based boot.

  For Hamoa/IQ-X7181 and Purwa/IQ-X5121, `xbl_config.elf` contains only XBL-specific DT nodes, while UEFI-specific DT nodes are in the separate, compressed `uefi_dtbs.xz` (or `uefi_dtbs_kvm.xz`) file — only the compressed `.xz` file is used on these platforms. The boot flow depends on which file is flashed: flashing `uefi_dtbs.xz` results in Gunyah-based boot, and flashing `uefi_dtbs_kvm.xz` results in KVM-based boot.

  For QCS6490/Kodiak/RB3Gen2, QCS5430/Kodiak/RB3Gen2Lite, IQ9/IQ-9075/Lemans, IQ8/IQ-8275/Monaco, and IQ6/IQ615/Talos, `xbl_config.elf` contains DT nodes for both XBL and UEFI. The boot flow depends on which file is flashed: flashing `xbl_config.elf` results in Gunyah-based boot, and flashing `xbl_config_kvm.elf` results in KVM-based boot.
</Note>

[Platform information](./platform-information)

The platform information devicetree provides the information about CDT, which contains platform information version, platform type, major hardware version, minor hardware version, subtype and OEM-id.

[Boot devicetree properties](./devicetree-boot-properties)

The boot devicetree properties provide information on how to enable and disable user-initiated emergency download (EDL) in XBL. The boot DT properties also describe the EDL timeout and the USB cable options that can force the system into the EDL mode. The boot-related functionality configures using the boot DT properties.

[Power management integrated circuit (PMIC)](./power-management-integrated-circuit-pmic)

The power management integrated circuit (PMIC) is a specialized electronic component that manages various power supply requirements within a device.

[General-purpose input/output (GPIO) functions](./gpio-functions-top-level-mode-multiplexer-tlmm)

The hardware controls the multiplexing of general-purpose input/output (GPIO) and alternate functions through the top-level mode multiplexer (TLMM). You can configure the GPIOs during the boot process using the DT properties for TLMM.

[Buses](./buses)

A bus facilitates data transfer among various system components. The DT properties allow for the configuration of the Qualcomm Universal Peripheral (QUP) v3 serial interface device nodes.

[Storage](./storage)

The DT properties for storage configurations.

[USB](./usb-devicetree-properties)

The DT properties for USB allow you to adjust the USB signal quality.

## **Next steps**

[Set up your development environment](./set-up-your-development-environment)
