[PATCH 3/5] usb: dwc3: glue: Add documentation

Thinh Nguyen Thinh.Nguyen at synopsys.com
Tue Oct 14 16:13:27 PDT 2025


On Mon, Oct 13, 2025, Sven Peter wrote:
> We're about to add more exported functions to be used inside glue
> driver which will need more detailed documentation explaining how
> they must be used. Let's also add documentation for the functions
> already available.
> 
> Signed-off-by: Sven Peter <sven at kernel.org>
> ---
>  drivers/usb/dwc3/glue.h | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
> 
> diff --git a/drivers/usb/dwc3/glue.h b/drivers/usb/dwc3/glue.h
> index 2efd00e763be4fc51911f32d43054059e61fb43a..7f326cff12458901904d4c32f62ed9357d0f6e3b 100644
> --- a/drivers/usb/dwc3/glue.h
> +++ b/drivers/usb/dwc3/glue.h
> @@ -22,9 +22,36 @@ struct dwc3_probe_data {
>  	bool ignore_clocks_and_resets;
>  };
>  
> +/**
> + * dwc3_core_probe - Initialize the core dwc3 driver
> + * @data: Initialization and configuration parameters for the controller
> + *
> + * Initializes the DesignWare USB3 core driver by setting up resources,
> + * registering interrupts, performing hardware setup, and preparing
> + * the controller for operation in the appropriate mode (host, gadget,
> + * or OTG). This is the main initialization function called by glue
> + * layer drivers to set up the core controller.
> + *
> + * Return: 0 on success, negative error code on failure
> + */
>  int dwc3_core_probe(const struct dwc3_probe_data *data);
> +
> +/**
> + * dwc3_core_remove - Deinitialize and remove the core dwc3 driver
> + * @dwc: Pointer to DWC3 controller context
> + *
> + * Cleans up resources and disables the dwc3 core driver. This should be called
> + * during driver removal or when the glue layer needs to shut down the
> + * controller completely.
> + */
>  void dwc3_core_remove(struct dwc3 *dwc);
>  
> +/*
> + * The following callbacks are provided for glue drivers to call from their
> + * own pm callbacks provided in struct dev_pm_ops. Glue drivers can perform
> + * platform-specific work before or after calling these functions and delegate
> + * the core suspend/resume operations to the core driver.
> + */
>  int dwc3_runtime_suspend(struct dwc3 *dwc);
>  int dwc3_runtime_resume(struct dwc3 *dwc);
>  int dwc3_runtime_idle(struct dwc3 *dwc);
> 
> -- 
> 2.34.1
> 
> 

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

Thanks!
Thinh


More information about the linux-arm-kernel mailing list