> > This patch set introduce new Cadence USBSSP DRD driver to linux > > kernel. > > > > The Cadence USBSSP DRD Driver s 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 site of USBSSP controller is compliance with XHCI > > specification, so it works with standard XHCI linux driver. > > > > Also, device side of USBSSP controller was designed in such way to > > looks like XHCI. It means that most of logic of USBSSP controller is > > also compliance with XHCI specification. > > > > Consequently, the USBSSP driver for peripheral mode is very similar to > > XHCI driver. > > > > This version of driver supports only Device mode but DRD and Host mode > > will be added in the future. > > > > Based on the posting date this series looks like v3. > > You should add the version prefix to the patches next time. > e.g. [PATCH v4 ...] > I wanted to start versioning driver after this set patch will be approved. Also I have plan to add change-log after approval this patch set. I now treat this patch set as Initial version of driver. If my approach is incorrect please correct me ?? Maybe before approval the better versioning will be [PATCH vrc4] ? > It is also recommended to add a Change-log in the cover letter explaining > what changes were made in each revision. > I > There are a bunch of checkpatch warnings in this series. > You can use ./scripts/checkpatch.pl on the patches and fix the issues. Yes I know, but most of them are related to "line over 80 characters" and " quoted string split across lines" warnings. The first group I could correct but then I will make readability worse. To eliminate the second group I will have to enlarge the first group of warnings and the number of characters in single line will be bigger than 100. > > --- > > > > Pawel Laszczak (31): > > usb: usbssp: Defined register maps and other useful structures. > > usb: usbssp: Added some decoding functions. > > usb: usbssp: Add trace events used in driver > > usb: usbssp: Added USBSSP platform driver > > usb: usbssp: Added first part of initialization sequence. > > usb: usbssp: added template functions used by upper layer. > > usb: usbssp: Initialization - added usbssp_mem_init > > usb: usbssp: Added ring and segment handling functions. > > usb: usbssp: add implementation of usbssp_mem_cleanup > > usb: usbssp: added usbssp_trb_in_td function. > > usb: usbssp: added function for stopping driver. > > usb: usbssp: added functions for queuing commands. > > usb: usbssp: addec procedure for handlin Port Status Change events. > > usb: usbssp: added procedure handling command completion events. > > usb: usbssp: added device controller error, transfer and SETUP > > completion event. > > usb: usbssp: added connect/disconnect procedures. > > usb: usbssp: added implementation of usbssp_halt_endpoint function. > > usb: usbssp: added handling of Port Reset event. > > usb: usbssp: added support for USB enumeration process. > > usb: usbssp: added queuing procedure for control transfer. > > usb: usbssp: added queuing procedure for BULK and INT transfer. > > usb: usbssp: added procedure removing request from transfer ring > > usb: usbssp: added implementation of transfer events. > > usb: usbssp: added detecting command timeout. > > usb: usbssp: added implementation of usbssp interface. > > usb: usbssp: added endpoint configuration functionality. > > usb: usbssp: implements usbssp_gadget_ep_enable function > > usb: usbssp: implemented usbssp_gadget_ep_disable function. > > usb: usbssp: added support for LPM. > > usb: usbssp: added support for TEST_MODE. > > usb: usbssp: add pci to platform driver wrapper. > > > > drivers/usb/Kconfig | 2 + > > drivers/usb/Makefile | 2 + > > drivers/usb/usbssp/Kconfig | 29 + > > drivers/usb/usbssp/Makefile | 15 + > > drivers/usb/usbssp/gadget-dbg.c | 39 + > > drivers/usb/usbssp/gadget-ep0.c | 571 +++++ > > drivers/usb/usbssp/gadget-ext-caps.h | 102 + > > drivers/usb/usbssp/gadget-if.c | 569 +++++ > > drivers/usb/usbssp/gadget-mem.c | 1938 +++++++++++++++ > > drivers/usb/usbssp/gadget-port.c | 287 +++ > > drivers/usb/usbssp/gadget-ring.c | 3452 ++++++++++++++++++++++++++ > > drivers/usb/usbssp/gadget-trace.c | 13 + > > drivers/usb/usbssp/gadget-trace.h | 482 ++++ > > drivers/usb/usbssp/gadget.c | 1909 ++++++++++++++ > > drivers/usb/usbssp/gadget.h | 2373 ++++++++++++++++++ > > drivers/usb/usbssp/usbssp-pci-wrap.c | 226 ++ > > drivers/usb/usbssp/usbssp-plat.c | 186 ++ > > 17 files changed, 12195 insertions(+) create mode 100644 > > drivers/usb/usbssp/Kconfig create mode 100644 > > drivers/usb/usbssp/Makefile create mode 100644 > > drivers/usb/usbssp/gadget-dbg.c create mode 100644 > > drivers/usb/usbssp/gadget-ep0.c create mode 100644 > > drivers/usb/usbssp/gadget-ext-caps.h > > create mode 100644 drivers/usb/usbssp/gadget-if.c create mode 100644 > > drivers/usb/usbssp/gadget-mem.c create mode 100644 > > drivers/usb/usbssp/gadget-port.c create mode 100644 > > drivers/usb/usbssp/gadget-ring.c create mode 100644 > > drivers/usb/usbssp/gadget-trace.c create mode 100644 > > drivers/usb/usbssp/gadget-trace.h create mode 100644 > > drivers/usb/usbssp/gadget.c create mode 100644 > > drivers/usb/usbssp/gadget.h create mode 100644 > > drivers/usb/usbssp/usbssp-pci-wrap.c > > create mode 100644 drivers/usb/usbssp/usbssp-plat.c > > > > -- cheers, Pawel ��.n��������+%������w��{.n�����{���)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥