This series enables USB3 Super-Speed functionality on QCM6490 and SC7280 platforms by adding support for the QMP USB3-DP Combo PHY. The combo PHY is a dual-mode PHY that can operate in either USB3 or DisplayPort mode, and this implementation focuses on USB3 mode to enable Super-Speed USB support.
The series adds the necessary clock support, implements the QMP Combo PHY driver ported from upstream Linux, and automates USB speed fixup. --- Changes in v3: - Corrected regulator names in drivers/phy/qcom/phy-qcom-qmp-combo.c - Made regulators mandatory in phy probe; if regulator not present, now probe fails - Removed support to manually disable the USB HS fixup via Kconfig. - Instead added code to automatically detect if SSPHY driver is available and do HS fixup only if SSPHY driver is not available. - Link to v2: https://lore.kernel.org/u-boot/[email protected]/ Changes in v2: - Gave correct commit id for reference linux implementation for adding mdelay in drivers/usb/dwc3/core.c - In drivers/phy/qcom/phy-qcom-qmp-combo.c: - Added pipe clock disable in qmp_combo_power_off sequence - Added all required clocks except pipe clock in qmp_combo_phy_clk_l - All clocks except pipe clock are enabled and disabled seperate from pipe clock - Added support for regulator power supplies - Added a minimal xlate to only return the USB3 phy - Added "drivers/phy/qcom" to ARM SNAPDRAGON section in MAINTAINERS file - Link to v1: https://lore.kernel.org/u-boot/[email protected]/ --- Balaji Selvanathan (6): drivers: clk: qcom: sc7280: Add USB3 PHY pipe clock drivers: usb: dwc3: Add delay after core soft reset drivers: phy: qcom: Add QMP USB3-DP Combo PHY driver arch: arm: mach-snapdragon: Auto-detect USB SSPHY driver support configs: qcm6490: Enable super-speed USB support MAINTAINERS: Add entry for Qualcomm PHY drivers MAINTAINERS | 1 + arch/arm/mach-snapdragon/of_fixup.c | 130 ++++- configs/qcm6490_defconfig | 2 + drivers/clk/qcom/clock-sc7280.c | 1 + drivers/phy/qcom/Kconfig | 8 + drivers/phy/qcom/Makefile | 1 + drivers/phy/qcom/phy-qcom-qmp-combo.c | 644 +++++++++++++++++++++ drivers/phy/qcom/phy-qcom-qmp-common.h | 62 ++ drivers/phy/qcom/phy-qcom-qmp-dp-com-v3.h | 18 + drivers/phy/qcom/phy-qcom-qmp-pcs-usb-v4.h | 34 ++ drivers/phy/qcom/phy-qcom-qmp.h | 17 + drivers/usb/dwc3/core.c | 2 + 12 files changed, 902 insertions(+), 18 deletions(-) create mode 100644 drivers/phy/qcom/phy-qcom-qmp-combo.c create mode 100644 drivers/phy/qcom/phy-qcom-qmp-common.h create mode 100644 drivers/phy/qcom/phy-qcom-qmp-dp-com-v3.h create mode 100644 drivers/phy/qcom/phy-qcom-qmp-pcs-usb-v4.h -- 2.34.1

