usb: cdns3: Add Cadence USB3 DRD Driver
authorPawel Laszczak <pawell@cadence.com>
Mon, 26 Aug 2019 11:19:30 +0000 (12:19 +0100)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Thu, 29 Aug 2019 07:57:04 +0000 (10:57 +0300)
commit7733f6c32e36ff9d7adadf40001039bf219b1cbe
tree5cdaa653c1764993c4009d9e8c9daf04c070bb41
parentf72429fc88b5f48ee9ff2617224bbe098e40e86f
usb: cdns3: Add Cadence USB3 DRD Driver

This patch introduce new Cadence USBSS DRD driver to Linux kernel.

The Cadence USBSS DRD Controller 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 platform. We have
support for PCIe bus, which is used on FPGA prototyping.

The host side of USBSS-DRD controller is compliant with XHCI
specification, so it works with standard XHCI Linux driver.

Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
18 files changed:
drivers/usb/Kconfig
drivers/usb/Makefile
drivers/usb/cdns3/Kconfig [new file with mode: 0644]
drivers/usb/cdns3/Makefile [new file with mode: 0644]
drivers/usb/cdns3/cdns3-pci-wrap.c [new file with mode: 0644]
drivers/usb/cdns3/core.c [new file with mode: 0644]
drivers/usb/cdns3/core.h [new file with mode: 0644]
drivers/usb/cdns3/debug.h [new file with mode: 0644]
drivers/usb/cdns3/drd.c [new file with mode: 0644]
drivers/usb/cdns3/drd.h [new file with mode: 0644]
drivers/usb/cdns3/ep0.c [new file with mode: 0644]
drivers/usb/cdns3/gadget-export.h [new file with mode: 0644]
drivers/usb/cdns3/gadget.c [new file with mode: 0644]
drivers/usb/cdns3/gadget.h [new file with mode: 0644]
drivers/usb/cdns3/host-export.h [new file with mode: 0644]
drivers/usb/cdns3/host.c [new file with mode: 0644]
drivers/usb/cdns3/trace.c [new file with mode: 0644]
drivers/usb/cdns3/trace.h [new file with mode: 0644]