[PATCH v5 00/17] Support for Qualcomm QUSBv2 and QMPv3 USB PHYs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux