QUSB-v2 and QMP-v3 USB PHYs are present on Qualcomm's 14nm and 10nm SOCs. This patch series adds support for runtime PM for these USB PHYs and adds fixes in drivers to follow PHY reset and initialization sequence as per hardware programming manual. Changes since v4: - Use SPDX License identifier. - Instead of adding set_mode() PHY op, added phy_mode attribute. Changes since v3: - Add extra PHY_MODEs for updating USB speed instead of adding new callback. - Continue to use power_on() for QMP driver as pci-qcom driver initialization sequence requires pipe_clk to enabled as part of power_on(). - Fix bug in the usage clk_bulk_ APIs in QMP driver. - Update handling of fuse values for tune1 parameter in QUSB2 driver for v2 PHY. - Incorporated other review comments. Changes since v2: - Drop sw-vbus override related patches as dwc3 glue driver to take care of same. - Don't read current linestate but rather rely on current speed which will be notified by core driver. This is required to have correct polarity of wakeup events detection in PHY. Changes since v1: - Incorporated review comments. - Fixes to align with hardware programming manual. - Added support for QUSBv2 and QMPv3 PHYs. - Enable DP/DM asynchronous interrupts from QUSB2 USB2 PHY for remote-wakeup. - Enable LFPS and RX-TERM detection for attach and detach events from QMP USB3 PHY for remotewakeup. - Update sw-vbus override in PHY wrapper for device mode. - Dropped one dwc3 patch from this series which I will submit with other dwc3 patches. ("usb: dwc3: core: Notify USB3 PHY as well for DRD modes") Manu Gautam (15): phy: qcom-qmp: Power-on PHY before initialization phy: qcom-qusb2: Power-on PHY before initialization phy: qcom-qmp: Fix PHY block reset sequence phy: qcom-qmp: Move SERDES/PCS START after PHY reset phy: qcom-qusb2: Add support for different register layouts dt-bindings: phy-qcom-qusb2: Update binding for QUSB2 V2 version phy: qcom-qusb2: Add support for QUSB2 V2 version phy: qcom-qmp: Move register offsets to header file phy: qcom-qmp: Add register offsets for QMP V3 PHY dt-bindings: phy-qcom-qmp: Update bindings for QMP V3 USB PHY phy: qcom-qmp: Add support for QMP V3 USB3 PHY phy: Add USB speed related PHY modes phy: qcom-qusb2: Add support for runtime PM phy: qcom-qmp: Add support for runtime PM phy: add SPDX identifier to QMP and QUSB2 PHY drivers Vivek Gautam (2): phy: qcom-qmp: Fix phy pipe clock gating phy: qcom-qmp: Adapt to clk_bulk_* APIs .../devicetree/bindings/phy/qcom-qmp-phy.txt | 6 +- .../devicetree/bindings/phy/qcom-qusb2-phy.txt | 5 +- drivers/phy/phy-core.c | 2 + drivers/phy/qualcomm/phy-qcom-qmp.c | 647 ++++++++++++++------- drivers/phy/qualcomm/phy-qcom-qmp.h | 280 +++++++++ drivers/phy/qualcomm/phy-qcom-qusb2.c | 418 ++++++++++--- include/linux/phy/phy.h | 18 + 7 files changed, 1106 insertions(+), 270 deletions(-) create mode 100644 drivers/phy/qualcomm/phy-qcom-qmp.h -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html