Re: [RFC PATCH 4/4] usb: xhci: Introduce Synopsys glue extension for DWC_usb3x

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

 



Hi Thinh,

On Fri, Jun 03, 2022 at 07:48:28PM -0700, Thinh Nguyen wrote:
> Synopsys DWC_usb3x IPs are used on many different platforms. Since they
> share the same IP, often the quirks are common across different
> platforms and versions. This drives the need to find a way to handle all
> the common (and platform specific) quirks and separate its logic from
> dwc3 and xhci core logic. Hopefully this helps reduce introducing new
> device properties while maintaining abstraction.
> 
> So, let's create a xhci-snps glue extension that can apply to xhci-plat
> and xhci-pci glue drivers and teach it to handle DWC_usb3x hosts. For
> this particular change, we'll start with xhci-plat glue driver.
> 
> Signed-off-by: Thinh Nguyen <Thinh.Nguyen@xxxxxxxxxxxx>
> ---
>  drivers/usb/host/Kconfig     |   8 ++
>  drivers/usb/host/Makefile    |   3 +
>  drivers/usb/host/xhci-plat.c |  40 ++++++++
>  drivers/usb/host/xhci-plat.h |   3 +
>  drivers/usb/host/xhci-snps.c | 185 +++++++++++++++++++++++++++++++++++
>  drivers/usb/host/xhci-snps.h |  32 ++++++
>  6 files changed, 271 insertions(+)
>  create mode 100644 drivers/usb/host/xhci-snps.c
>  create mode 100644 drivers/usb/host/xhci-snps.h
> 
> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> index 57ca5f97a3dc..efbfb79baf44 100644
> --- a/drivers/usb/host/Kconfig
> +++ b/drivers/usb/host/Kconfig
> @@ -62,6 +62,14 @@ config USB_XHCI_PLATFORM
>  
>  	  If unsure, say N.
>  
> +config USB_XHCI_SNPS
> +	bool "xHCI fine tune for Synopsys platforms"
> +	help
> +	  Say 'Y' to enable additional fine tune for Synopsys DWC_usb3x xHCI
> +	  controllers.
> +
> +	  If unsure, say N.
> +

Can this work without compiling in dwc3? i.e directly adding xhci-plat from
device tree or some wrapper to create platform device assuming that DWC3
core is initialized and forced in HOST role?

Thanks,
Pavan



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux