mbox series

[RFC,v1,00/14] Introduced new Cadence USBSS DRD Driver

Message ID 1541267487-3664-1-git-send-email-pawell@cadence.com (mailing list archive)
Headers show
Series Introduced new Cadence USBSS DRD Driver | expand

Message

Pawel Laszczak Nov. 3, 2018, 5:51 p.m. UTC
This patch set introduce new Cadence USBSS DRD driver
to linux kernel.

The Cadence USBSS 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 USBSS controller is compliance
with XHCI specification, so it works with
standard XHCI linux driver.

---

Pawel Laszczak (14):
  usb:cdns3: add pci to platform driver wrapper.
  usb:cdns3: Device side header file.
  usb:cdns3: Driver initialization code.
  usb:cdns3: Added DRD support
  usb:cdns3: Added Wrapper to XCHI driver
  usb:cdns3: Initialization code for Device side
  usb:cdns3: Implements device operations part of the API
  usb:cdns3: EpX operations part of the API
  usb:cdns3: Ep0 operations part of the API
  usb:cdns3: Implements ISR functionality.
  usb:cdns3: Adds enumeration related function.
  usb:cdns3: Adds transfer related function.
  usb:cdns3: Adds debugging function.
  usb:cdns3: Feature for changing role

 drivers/usb/Kconfig                |    2 +
 drivers/usb/Makefile               |    2 +
 drivers/usb/cdns3/Kconfig          |   44 +
 drivers/usb/cdns3/Makefile         |    7 +
 drivers/usb/cdns3/cdns3-pci-wrap.c |  162 +++
 drivers/usb/cdns3/core.c           |  381 +++++++
 drivers/usb/cdns3/core.h           |   88 ++
 drivers/usb/cdns3/debug.c          |  128 +++
 drivers/usb/cdns3/debugfs.c        |   94 ++
 drivers/usb/cdns3/drd.c            |  219 ++++
 drivers/usb/cdns3/drd.h            |  125 +++
 drivers/usb/cdns3/ep0.c            |  855 ++++++++++++++
 drivers/usb/cdns3/gadget-export.h  |   27 +
 drivers/usb/cdns3/gadget.c         | 1649 ++++++++++++++++++++++++++++
 drivers/usb/cdns3/gadget.h         | 1100 +++++++++++++++++++
 drivers/usb/cdns3/host-export.h    |   30 +
 drivers/usb/cdns3/host.c           |  252 +++++
 17 files changed, 5165 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.c
 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