soc: qcom: add UCSI function to PMIC GLINK The PMIC GLINK interface offers an UCSI endpoint for newer SoCs, the UCSI exchange is necessary to configure the USB-C port USB role and altmode on the SM8450 HDK and SM8550 MTP boards. Since the DT description is the same, support for SM8350 HDK is also added. This patchset focuses on USB and disables altmode support on those 2 SoCs until DP altmode over the combo phy is supported. Depends on PMIC Glink patchset at [1]. [1] https://lore.kernel.org/all/20230130042003.577063-1-quic_bjorande@quicinc.com/ To: Heikki Krogerus <heikki.krogerus@linux.intel.com> To: Greg Kroah-Hartman <gregkh@linuxfoundation.org> To: Andy Gross <agross@kernel.org> To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh+dt@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Catalin Marinas <catalin.marinas@arm.com> To: Will Deacon <will@kernel.org> Cc: linux-kernel@vger.kernel.org Cc: linux-usb@vger.kernel.org Cc: linux-arm-msm@vger.kernel.org Cc: devicetree@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v2: - Moved the dwc3 port subnodes to dtsi - Added SM8350 HDK support - Added help about ucsi module name - Added bindings acks - Fixed sm8550 pmic glink compatible - Added more description in config update patch - Link to v1: https://lore.kernel.org/r/20230130-topic-sm8450-upstream-pmic-glink-v1-0-0b0acfad301e@linaro.org --- Neil Armstrong (11): usb: typec: ucsi: add PMIC Glink UCSI driver dt-bindings: soc: qcom: qcom,pmic-glink: document SM8450 compatible dt-bindings: soc: qcom: qcom,pmic-glink: document SM8550 compatible soc: qcom: pmic_glink: register ucsi aux device arm64: dts: qcom: sm8350: add port subnodes in dwc3 node arm64: dts: qcom: sm8450: add port subnodes in dwc3 node arm64: dts: qcom: sm8550: add port subnodes in dwc3 node arm64: dts: qcom: sm8350-hdk: add pmic glink node arm64: dts: qcom: sm8450-hdk: add pmic glink node arm64: dts: qcom: sm8550-mtp: add pmic glink node arm64: defconfig: add PMIC GLINK modules .../bindings/soc/qcom/qcom,pmic-glink.yaml | 2 + arch/arm64/boot/dts/qcom/sm8350-hdk.dts | 77 ++++- arch/arm64/boot/dts/qcom/sm8350.dtsi | 19 ++ arch/arm64/boot/dts/qcom/sm8450-hdk.dts | 45 ++- arch/arm64/boot/dts/qcom/sm8450.dtsi | 19 ++ arch/arm64/boot/dts/qcom/sm8550-mtp.dts | 45 ++- arch/arm64/boot/dts/qcom/sm8550.dtsi | 19 ++ arch/arm64/configs/defconfig | 4 + drivers/soc/qcom/pmic_glink.c | 67 ++++- drivers/usb/typec/ucsi/Kconfig | 10 + drivers/usb/typec/ucsi/Makefile | 1 + drivers/usb/typec/ucsi/ucsi_glink.c | 320 +++++++++++++++++++++ 12 files changed, 604 insertions(+), 24 deletions(-) --- base-commit: 2746a238ae3ea7215b3e95b78020a3d72243d55f change-id: 20230130-topic-sm8450-upstream-pmic-glink-3b3a0b7bcd33 Best regards,