Re: [PATCH v11 2/5] usb: renesas-xhci: Add the renesas xhci driver

From: Mathias Nyman
Date: Thu Apr 30 2020 - 10:33:21 EST


On 30.4.2020 13.10, Vinod Koul wrote:
> From: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx>
>
> This add a new driver for renesas xhci which is basically a firmware
> loader for uPD720201 and uPD720202 w/o ROM. It uses xhci-pci driver for
> most of the work.
>
> This is added in Makefile before the xhci-pci driver so that it first
> get probed for renesas devices before the xhci-pci driver has a chance
> to claim any device.

Most of the above is no longer correct

>
> This patch adds a firmware loader for the uPD720201K8-711-BAC-A
> and uPD720202K8-711-BAA-A variant. Both of these chips are listed
> in Renesas' R19UH0078EJ0500 Rev.5.00 "User's Manual: Hardware" as
> devices which need the firmware loader on page 2 in order to
> work as they "do not support the External ROM".
>
> The "Firmware Download Sequence" is describe in chapter
> "7.1 FW Download Interface" R19UH0078EJ0500 Rev.5.00 page 131.
>
> The firmware "K2013080.mem" is available from a USB3.0 Host to
> PCIe Adapter (PP2U-E card) "Firmware download" archive. An
> alternative version can be sourced from Netgear's WNDR4700 GPL
> archives.
>
> The release notes of the PP2U-E's "Firmware Download" ver 2.0.1.3
> (2012-06-15) state that the firmware is for the following devices:
> - uPD720201 ES 2.0 sample whose revision ID is 2.
> - uPD720201 ES 2.1 sample & CS sample & Mass product, ID is 3.
> - uPD720202 ES 2.0 sample & CS sample & Mass product, ID is 2.
>
> Signed-off-by: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx>
> Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
> [vkoul: fixed comments:
> used macros for timeout count and delay
> removed renesas_fw_alive_check
> cleaned renesas_fw_callback
> removed recursion for renesas_fw_download
> add register defines and field names
> move to a separate file
> make fw loader as sync probe so that we execute in probe and
> prevent race]
> Signed-off-by: Vinod Koul <vkoul@xxxxxxxxxx>
> ---
> drivers/usb/host/Makefile | 3 +-
> drivers/usb/host/xhci-pci-renesas.c | 361 ++++++++++++++++++++++++++++
> drivers/usb/host/xhci-pci.h | 16 ++
> 3 files changed, 379 insertions(+), 1 deletion(-)
> create mode 100644 drivers/usb/host/xhci-pci-renesas.c
> create mode 100644 drivers/usb/host/xhci-pci.h
>
> diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile
> index b191361257cc..c3a79f626393 100644
> --- a/drivers/usb/host/Makefile
> +++ b/drivers/usb/host/Makefile
> @@ -70,7 +70,8 @@ obj-$(CONFIG_USB_OHCI_HCD_DAVINCI) += ohci-da8xx.o
> obj-$(CONFIG_USB_UHCI_HCD) += uhci-hcd.o
> obj-$(CONFIG_USB_FHCI_HCD) += fhci.o
> obj-$(CONFIG_USB_XHCI_HCD) += xhci-hcd.o
> -obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o
> +usb-xhci-pci-objs := xhci-pci.o xhci-pci-renesas.o
> +obj-$(CONFIG_USB_XHCI_PCI) += usb-xhci-pci.o

I don't think it's a good idea to rename the xhci-pci module to usb-xhci-pci

does

xhci-pci-y := xhci-pci.o xhci-pci-renesas.o
obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o

cause some kbuild issues?

-Mathias