RE: [PATCH v3 5/6] usb:cdns3 Add Cadence USB3 DRD Driver

From: Pawel Laszczak
Date: Tue Feb 05 2019 - 03:33:25 EST


Hi,

>On Thu, Jan 31, 2019 at 11:52:32AM +0000, Pawel Laszczak wrote:
>> This patch introduce new Cadence USBSS DRD driver
>> to linux kernel.
>>
>> The Cadence USBSS DRD Driver is a highly
>> configurable IP Core which can be
>> instantiated as Dual-Role Device (DRD),
>> Peripheral Only and Host Only (XHCI)
>> configurations.
>>
>> The current driver has been validated with
>> FPGA burned. We have support for PCIe
>> bus, which is used on FPGA prototyping.
>>
>> The host side of USBSS-DRD controller is compliance
>> with XHCI specification, so it works with
>> standard XHCI linux driver.
>
>Please line-wrap this properly at 72 columns, like your editor asks you
>to when you run git :)
>
>>
>> Signed-off-by: Pawel Laszczak <pawell@xxxxxxxxxxx>
>> ---
>> drivers/usb/Kconfig | 2 +
>> drivers/usb/Makefile | 2 +
>> drivers/usb/cdns3/Kconfig | 44 +
>> drivers/usb/cdns3/Makefile | 14 +
>> drivers/usb/cdns3/cdns3-pci-wrap.c | 155 +++
>> drivers/usb/cdns3/core.c | 403 ++++++
>> drivers/usb/cdns3/core.h | 116 ++
>> drivers/usb/cdns3/debug.h | 168 +++
>> drivers/usb/cdns3/debugfs.c | 164 +++
>> drivers/usb/cdns3/drd.c | 365 +++++
>> drivers/usb/cdns3/drd.h | 162 +++
>> drivers/usb/cdns3/ep0.c | 907 +++++++++++++
>> drivers/usb/cdns3/gadget-export.h | 28 +
>> drivers/usb/cdns3/gadget.c | 1985 ++++++++++++++++++++++++++++
>> drivers/usb/cdns3/gadget.h | 1207 +++++++++++++++++
>> drivers/usb/cdns3/host-export.h | 28 +
>> drivers/usb/cdns3/host.c | 72 +
>> drivers/usb/cdns3/trace.c | 23 +
>> drivers/usb/cdns3/trace.h | 404 ++++++
>> 19 files changed, 6249 insertions(+)
>> create mode 100644 drivers/usb/cdns3/Kconfig
>> create mode 100644 drivers/usb/cdns3/Makefile
>> create mode 100644 drivers/usb/cdns3/cdns3-pci-wrap.c
>> create mode 100644 drivers/usb/cdns3/core.c
>> create mode 100644 drivers/usb/cdns3/core.h
>> create mode 100644 drivers/usb/cdns3/debug.h
>> create mode 100644 drivers/usb/cdns3/debugfs.c
>> create mode 100644 drivers/usb/cdns3/drd.c
>> create mode 100644 drivers/usb/cdns3/drd.h
>> create mode 100644 drivers/usb/cdns3/ep0.c
>> create mode 100644 drivers/usb/cdns3/gadget-export.h
>> create mode 100644 drivers/usb/cdns3/gadget.c
>> create mode 100644 drivers/usb/cdns3/gadget.h
>> create mode 100644 drivers/usb/cdns3/host-export.h
>> create mode 100644 drivers/usb/cdns3/host.c
>> create mode 100644 drivers/usb/cdns3/trace.c
>> create mode 100644 drivers/usb/cdns3/trace.h
>
>This is way too big to try to review all at once. You need to break
>this up into logical chunks, each one adding a single functionality to
>make it possible to actually review it.
>

In the past driver was split into series of patch, but it was difficult to review for other
reviewers so I made decision to prepare it in this way.
The short discuss you can find on https://lkml.org/lkml/2018/11/30/502.

Quotation: "
>> Frankly, I don't understand why this is a series. It's a single driver and splitting it into
>> a series just makes it more difficult to review, actually.
>>
>> Sure, a single patch will be large, but there's no way to have a functional driver until
>> all patches are applied, anyway.
>>
>
>Yes, I agree with Felipe. Pawel, you could remove the "RFC" prefix, and send the whole
>one as one patch. I will test it at my hardware.

Ok, I will prepare such single patch.
Peter I know that you have little different platform.
Probably you should made some additional changes for your platform.
"

Thanks

Pawel Laszczak.