# QUPs in HLOS

Source: [https://docs.qualcomm.com/doc/80-88500-1/topic/53_QUPs_in_HLOS.html](https://docs.qualcomm.com/doc/80-88500-1/topic/53_QUPs_in_HLOS.html)

Following are the device drivers for QUP:

- UART: /kernel/drivers/tty/serial/msm\_geni\_serial.c
- I^2^C: /kernel/drivers/i2c/busses/i2c-qcom-geni.c
- SPI: /kernel/drivers/spi/spi-geni-qcom.c

## Enabling QUP in HLOS

All 16 QUP instances are defined in the
          kernel/arch/arm64/boot/dts/qcom/&lt;chipset&gt;-qupv3.dtsi. The
        status field for each required instance must be marked as `ok`.

For example:

    qupv3_se0_i2c: i2c@880000 {
    ……
    ……
    ……
    status = “ok";
    }; Copy to clipboard

**Parent Topic:** [Qualcomm universal peripheral (QUP)](https://docs.qualcomm.com/doc/80-88500-1/topic/16_Qualcomm_universal_peripheral__QUP_.html)

Last Published: Aug 18, 2023

[Previous Topic
Debug I2C in sensor core](https://docs.qualcomm.com/bundle/publicresource/80-88500-1/topics/52_Debug_I2C_in_sensor_core.md) [Next Topic
QUPs in TrustZone](https://docs.qualcomm.com/bundle/publicresource/80-88500-1/topics/54_QUPs_in_TrustZone.md#QUPs_in_TrustZone_54)