Skip to content

USB DWC3 host wake up support from system suspend

Sandeep Maheswaram linux-arm-msm linux-pm linux-usb lkml 8 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v8 Latest6 patches 7 repliesIn review
  2. v75 patches 15 repliesSuperseded
  3. v65 patches 5 repliesSuperseded
Earlier versions · 5
VersionPostedPatchesRepliesStatus
v54 patches8 repliesSuperseded
v45 patches5 repliesSuperseded
v35 patches9 repliesSuperseded
v23 patches6 repliesSuperseded
v12 patches7 repliesSuperseded

Changes in v8 from the cover letter

Moved the dwc3 suspend quirk code in dwc3/host.c to xhci-plat.c Checking phy_power_off flag instead of usb_wakeup_enabled_descendants to keep gdsc active.

Patches in v8 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/6usb: dwc3: core: Add HS phy mode variable and phy poweroff flagdrivers/usb/dwc3/core.h+3 -00 replies
2/6usb: host: xhci: plat: Add suspend quirk for dwc3 controllerdrivers/usb/host/xhci-plat.c+38 -02 replies
3/6usb: dwc3: core: Host wake up support from system suspenddrivers/usb/dwc3/core.c+5 -20 replies
4/6usb: dwc3: qcom: Add helper functions to enable,disable wake irqsdrivers/usb/dwc3/dwc3-qcom.c+26 -320 replies
5/6usb: dwc3: qcom: Configure wakeup interrupts during suspenddrivers/usb/dwc3/dwc3-qcom.c+20 -60 replies
6/6usb: dwc3: qcom: Keep power domain on to support wakeupdrivers/usb/dwc3/dwc3-qcom.c+13 -05 replies

Reviews trailers per patch

3 of 6 patches have a Reviewed-by or Acked-by.

PatchMatthias Kaehlcke
1/6
2/6
3/6R-b
4/6R-b
5/6R-b
6/6

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v8 thread

Cover letter [PATCH v8 0/6] USB DWC3 host wake up support from system suspend

Avoiding phy powerdown in host mode when wakeup capable devices are connected, so that it can be wake up by devices.
Set GENPD_FLAG_ACTIVE_WAKEUP flag to keep usb30_prim gdsc active when wakeup capable devices are connected to the host.

Changes in v8:
Moved the dwc3 suspend quirk code in dwc3/host.c to xhci-plat.c Checking phy_power_off flag instead of usb_wakeup_enabled_descendants to keep gdsc active.

Changes in v7:
Change in commit text and message in PATCH 1/5 and PATCH 5/5 as per Matthias suggestion.
Added curly braces for if and else if sections in PATCH 4/5.

Changes in v6:
Addressed comments in host.c and core.c
Separated the patches in dwc3-qcom.c to make it simple. Dropped wakeup-source change as it is not related to this series.

Changes in v5:
Added phy_power_off flag to check presence of wakeup capable devices. Dropped patch[v4,4/5] as it is present linux-next. Addressed comments in host.c and dwc3-qcom.c.

Changes in v4:
Addressed Matthias comments raised in v3.

Changes in v3:
Removed need_phy_for_wakeup flag and by default avoiding phy powerdown. Addressed Matthias comments and added entry for DEV_SUPERSPEED. Added suspend_quirk in dwc3 host and moved the dwc3_set_phy_speed_flags. Added wakeup-source dt entry and reading in dwc-qcom.c glue driver.

Changes in v2:
Dropped the patch in clock to set GENPD_FLAG_ACTIVE_WAKEUP flag and setting in usb dwc3 driver.
Separated the core patch and glue driver patch.
Made need_phy_for_wakeup flag part of dwc structure and hs_phy_flags as unsgined int.
Adrressed the comment on device_init_wakeup call. Corrected offset for reading portsc register.
Added pacth to support wakeup in xo shutdown case.

Sandeep Maheswaram (6):
usb: dwc3: core: Add HS phy mode variable and phy poweroff flag
usb: host: xhci: plat: Add suspend quirk for dwc3 controller
usb: dwc3: core: Host wake up support from system suspend
usb: dwc3: qcom: Add helper functions to enable,disable wake irqs
usb: dwc3: qcom: Configure wakeup interrupts during suspend
usb: dwc3: qcom: Keep power domain on to support wakeup

 drivers/usb/dwc3/core.c      |  7 ++--
 drivers/usb/dwc3/core.h      |  3 ++
 drivers/usb/dwc3/dwc3-qcom.c | 81 ++++++++++++++++++++++++++++----------------
 drivers/usb/host/xhci-plat.c | 38 +++++++++++++++++++++
 4 files changed, 97 insertions(+), 32 deletions(-)
Signature · 2 lines
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation