[PATCH] usb: dwc3: xilinx: add shutdown callback

Thinh Nguyen Thinh.Nguyen at synopsys.com
Wed Jun 4 17:23:30 PDT 2025


On Wed, Jun 04, 2025, Radhey Shyam Pandey wrote:
> Adds a shutdown callback to ensure that the XHCI stack is properly
> shutdown in reboot/shutdown path.
> 
> In kexec flow, kernel_restart_prepare() performs actions necessary
> to prepare the system for a restart and invokes device_shutdown. To
> ensure proper shutdown attach the dwc3 shutdown implementation which
> mirrors the remove method.
> 
> $ kexec -e
> 
> <snip>
> xhci-hcd xhci-hcd.0.auto: remove, state 1
> usb usb1: USB disconnect, device number 1
> usb 1-1: USB disconnect, device number 6
> xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
> kexec_core: Starting new kernel
> 
> Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey at amd.com>
> ---
> Referred implementation from mainline commit ' 85e8a23936ab
> ("scsi: lpfc: Add shutdown method for kexec").
> ---
>  drivers/usb/dwc3/dwc3-xilinx.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/usb/dwc3/dwc3-xilinx.c b/drivers/usb/dwc3/dwc3-xilinx.c
> index 4ca7f6240d07..09c3c5c226ab 100644
> --- a/drivers/usb/dwc3/dwc3-xilinx.c
> +++ b/drivers/usb/dwc3/dwc3-xilinx.c
> @@ -422,6 +422,7 @@ static const struct dev_pm_ops dwc3_xlnx_dev_pm_ops = {
>  static struct platform_driver dwc3_xlnx_driver = {
>  	.probe		= dwc3_xlnx_probe,
>  	.remove		= dwc3_xlnx_remove,
> +	.shutdown	= dwc3_xlnx_remove,
>  	.driver		= {
>  		.name		= "dwc3-xilinx",
>  		.of_match_table	= dwc3_xlnx_of_match,
> 
> base-commit: a0bea9e39035edc56a994630e6048c8a191a99d8
> -- 
> 2.34.1
> 

Acked-by: Thinh Nguyen <Thinh.Nguyen at synopsys.com>

BR,
Thinh


More information about the linux-arm-kernel mailing list