# Bootloader/UEFI device tree Source: [https://docs.qualcomm.com/doc/80-70014-6/topic/bootloader_uefi_device_tree.html](https://docs.qualcomm.com/doc/80-70014-6/topic/bootloader_uefi_device_tree.html) The device tree specifies the UFS host configuration parameters such as number of gears, number of lanes, rate value, timeout values, etc. ## UFS The device tree is located at <workspace\_root\_path>\boot\_images\boot\Settings\Soc\Kodiak\Core\Storage\UFS\ufs.dtsi. The UFS device tree node in UEFI is described below. | Device tree node/key | Subnode | Device tree value | Notes | | --- | --- | --- | --- | | `init_speed_params` | `EnableHighSpeed` | 1 | Enables HS mode | | `init_speed_params` | `NumGears` | 4 | Max gear to be used. | | `init_speed_params` | `NumLanes` | 2 | Number of lanes used in UFS | | `init_speed_params` | `Rate` | 2 | | | `perf_speed_params` | `EnableHighSpeed` | 1 | To enable HS mode while in perf mode | | `perf_speed_params` | `NumGears` | 4 | Max gear to be used in perf mode. | | `perf_speed_params` | `NumLanes` | 2 | Number of lanes used in UFS in perf mode | | `perf_speed_params` | `Rate` | 2 | Series in perf mode | | `timeout_values` | `fDeviceInitTimeoutUs` | 2500000 | Timeout (µs) during device init | | `timeout_values` | `UTRDPollTimeoutUs` | 30000000 | Timeout (µs) for UTRD | | `BatteryThresholdMv` | | 3600 | Battery threshold (in milli volts) to move to Gear1 | | `LinkStartupRetryCount` | | 5 | Retry count for Link startup | | `FUA_Value` | | 1 | Forced unit access | | `EnableLogging` | | 0 | Enables DT serial debug logging in loader | | `RefClock` | | 19200000 | UFS controller reference clock 19.2MHz | | `MphyInitTable` | | | MphyInit table | | `MphyInitEndTable` | | | `MphyInitEnd` table | | `MphyLaneInitTable` | | | Mphy 2 Lane Init table | | | | | | | | | | | | | | | | Any change in the .dtsi should be compiled into xbl\_config.elf and the image reflashed on to the device. Note: `MphyInitTable`, `MphyInitEndTable`, and `MphyLaneInitTable` are used for UFS phy initialization and these values are tuned by Qualcomm. For debugging/tuning any phy-level issue, these values should be changed with guidance from the Qualcomm team. Note: The default values are for UFS 3.1 part. For UFS 2.x part, `NumGears` value should be 3. Other parameters need not be changed for UFS 2.x part. **Parent Topic:** [Configure](https://docs.qualcomm.com/doc/80-70014-6/topic/configuration.html) Last Published: Jul 10, 2024 [Previous Topic Power management states](https://docs.qualcomm.com/bundle/publicresource/80-70014-6/topics/power_management_states.md) [Next Topic Linux device tree](https://docs.qualcomm.com/bundle/publicresource/80-70014-6/topics/linux-device-tree.md)