Introduced new Cadence USBSSP DRD Driver

From: Pawel Laszczak
Date: Tue Jul 03 2018 - 15:58:17 EST


From: Laszczak Pawel <pawell@xxxxxxxxxxx>

This patchset 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 the way that it looks likes XHCI. It means that
most of logic of USBSSP controller is also compliance
with XHCI specification.

As a consequence, 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 next versions.

---

Laszczak Pawel (2):
Introduce Cadence USBSSP DRD Driver - added gadget.c file.
Introduce Cadence USBSSP DRD Driver - added USBSSP in Makefile and
Kconfig files

Pawel Laszczak (13):
Introduce Cadence USBSSP DRD driver - added gadget-mem.c
Introduce Cadence USBSSP DRD Driver - added gadget-ring.c file
Introduce Cadence USBSSP DRD Driver - added gadget.h file
Introduce Cadence USBSSP DRD Driver - added gadget-port.c file.
Introduce Cadence USBSSP DRD Driver - added gadget-ep0 file.
Introduce Cadence USBSSP DRD Driver - added gadget-if.c Driver
implements interface between gadget drivers and USBSSP device
driver.
Introduce Cadence USBSSP DRD driver - added gadget-ext-caps.h
Introduce Cadence USBSSP DRD Driver - added debugfs files.
Introduce Cadence USBSSP DRD Driver - added trace files.
Introduce Cadence USBSSP DRD driver - added gadget-dbg.c file
Introduce Cadence USBSSP DRD Driver - added usbssp-plat.c file
Introduce Cadence USBSSP DRD Driver - added usbssp-pci-of-wrap.c file
This file implements wrapper between PCI adn platform driver.
Introduce Cadence USBSSP DRD Driver - added Kconfig and Makefile
files.

drivers/usb/Kconfig | 2 +
drivers/usb/Makefile | 2 +
drivers/usb/usbssp/Kconfig | 29 +
drivers/usb/usbssp/Makefile | 17 +
drivers/usb/usbssp/gadget-dbg.c | 613 ++++
drivers/usb/usbssp/gadget-debugfs.c | 514 +++
drivers/usb/usbssp/gadget-debugfs.h | 137 +
drivers/usb/usbssp/gadget-ep0.c | 565 ++++
drivers/usb/usbssp/gadget-ext-caps.h | 99 +
drivers/usb/usbssp/gadget-if.c | 572 ++++
drivers/usb/usbssp/gadget-mem.c | 2275 +++++++++++++
drivers/usb/usbssp/gadget-port.c | 284 ++
drivers/usb/usbssp/gadget-ring.c | 3925 +++++++++++++++++++++++
drivers/usb/usbssp/gadget-trace.c | 12 +
drivers/usb/usbssp/gadget-trace.h | 505 +++
drivers/usb/usbssp/gadget.c | 2082 ++++++++++++
drivers/usb/usbssp/gadget.h | 2422 ++++++++++++++
drivers/usb/usbssp/usbssp-pci-of-wrap.c | 229 ++
drivers/usb/usbssp/usbssp-plat.c | 186 ++
19 files changed, 14470 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-debugfs.c
create mode 100644 drivers/usb/usbssp/gadget-debugfs.h
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-of-wrap.c
create mode 100644 drivers/usb/usbssp/usbssp-plat.c

--
2.17.1