[PATCH v1 0/9] Enable QUPs and Serial on SA8255p Qualcomm platforms

From: Praveen Talari
Date: Thu Apr 10 2025 - 13:42:52 EST


The Qualcomm automotive SA8255p SoC relies on firmware to configure
platform resources, including clocks, interconnects and TLMM. The device
drivers request resources operations over SCMI using power and
performance protocols.

The SCMI power protocol enables or disables resources like clocks,
interconnect paths, and TLMM (GPIOs) using runtime PM framework APIs,
such as resume/suspend, to control power states(on/off).

The SCMI performance protocol manages UART baud rates, with each baud
rate represented by a performance level. Drivers use the
dev_pm_opp_set_level() API to request the desired baud rate by
specifying the performance level.

The QUP drivers are SCMI clients, with clocks, interconnects, pinctrl
and power-domains abstracted by a SCMI server.

Nikunj Kela (3):
opp: add new helper API dev_pm_opp_set_level()
dt-bindings: serial: describe SA8255p
dt-bindings: qcom: geni-se: describe SA8255p

Praveen Talari (6):
soc: qcom: geni-se: Enable QUPs on SA8255p Qualcomm platforms
serial: qcom-geni: move resource initialization to separate functions
serial: qcom-geni: move resource control logic to separate functions
serial: qcom-geni: move clock-rate logic to separate function
serial: qcom-geni: Enable PM runtime for serial driver
serial: qcom-geni: Enable Serial on SA8255p Qualcomm platforms

.../serial/qcom,sa8255p-geni-uart.yaml | 59 +++
.../soc/qcom/qcom,sa8255p-geni-se-qup.yaml | 100 +++++
drivers/opp/core.c | 22 ++
drivers/soc/qcom/qcom-geni-se.c | 78 ++--
drivers/tty/serial/qcom_geni_serial.c | 345 ++++++++++++++----
include/linux/pm_opp.h | 6 +
6 files changed, 512 insertions(+), 98 deletions(-)
create mode 100644 Documentation/devicetree/bindings/serial/qcom,sa8255p-geni-uart.yaml
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,sa8255p-geni-se-qup.yaml

--
2.17.1