The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH 0/5] usb: dwc3: xilinx: error handling and teardown fixes
@ 2026-08-10 17:47 Radhey Shyam Pandey
  2026-08-10 17:47 ` [PATCH 1/5] usb: dwc3: xilinx: use device_get_match_data() in probe Radhey Shyam Pandey
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Radhey Shyam Pandey @ 2026-08-10 17:47 UTC (permalink / raw)
  To: Thinh.Nguyen, gregkh, michal.simek, p.zabel
  Cc: linux-usb, linux-arm-kernel, linux-kernel, git,
	Radhey Shyam Pandey

This series improves error handling, resource teardown, and system sleep
PM robustness in the dwc3-xilinx glue driver for ZynqMP and Versal
platforms.

Patch 1 switches probe to device_get_match_data() and adds the direct
property.h include instead of relying on of.h for that helper.

Patch 2 introduces struct dwc3_xlnx_platdata and moves ZynqMP and
Versal setup behind plat->init(). The struct also defines an exit
callback slot used by the later teardown patches.

Patch 3 fixes system suspend and resume PHY handling: suspend now
powers off the PHY before phy_exit() and propagates errors; resume
disables clocks if PHY reinitialization fails after they were enabled.

Patch 4 fixes ZynqMP init error paths. Reset handles are saved in
driver private data and fall-through error labels re-assert only the
resets already released before unwinding the PHY when init fails
partway through reset deassert or PHY setup.

Patch 5 adds dwc3_xlnx_exit_zynqmp(), wires it as the ZynqMP platform
exit callback, and calls plat->exit() from probe error paths after a
successful plat->init() and from remove()/shutdown.

Radhey Shyam Pandey (5):
  usb: dwc3: xilinx: use device_get_match_data() in probe
  usb: dwc3: xilinx: add platform data struct with init callback
  usb: dwc3: xilinx: fix system suspend and resume PHY handling
  usb: dwc3: xilinx: re-assert resets on ZynqMP init error paths
  usb: dwc3: xilinx: unwind ZynqMP platform init on probe failure and
    remove

 drivers/usb/dwc3/dwc3-xilinx.c | 132 +++++++++++++++++++++++++--------
 1 file changed, 100 insertions(+), 32 deletions(-)


base-commit: 6b8c8af514d739d0335f5579b585e02babe8a727
-- 
2.43.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2026-08-26  1:30 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-10 17:47 [PATCH 0/5] usb: dwc3: xilinx: error handling and teardown fixes Radhey Shyam Pandey
2026-08-10 17:47 ` [PATCH 1/5] usb: dwc3: xilinx: use device_get_match_data() in probe Radhey Shyam Pandey
2026-08-26  0:09   ` Thinh Nguyen
2026-08-10 17:47 ` [PATCH 2/5] usb: dwc3: xilinx: add platform data struct with init callback Radhey Shyam Pandey
2026-08-10 17:47 ` [PATCH 3/5] usb: dwc3: xilinx: fix system suspend and resume PHY handling Radhey Shyam Pandey
2026-08-26  0:12   ` Thinh Nguyen
2026-08-10 17:47 ` [PATCH 4/5] usb: dwc3: xilinx: re-assert resets on ZynqMP init error paths Radhey Shyam Pandey
2026-08-10 17:47 ` [PATCH 5/5] usb: dwc3: xilinx: unwind ZynqMP platform init on probe failure and remove Radhey Shyam Pandey
2026-08-26  0:22 ` [PATCH 0/5] usb: dwc3: xilinx: error handling and teardown fixes Thinh Nguyen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox