lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 12 Jul 2018 06:46:57 +0100
From:   Pawel Laszczak <pawell@...ence.com>
To:     unlisted-recipients:; (no To-header on input)
CC:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        <linux-usb@...r.kernel.org>, Felipe Balbi <balbi@...nel.org>,
        <linux-kernel@...r.kernel.org>, <ltyrala@...ence.com>,
        <adouglas@...ence.com>, <pawell@...ence.com>
Subject: [PATCH 00/31] Introduced new Cadence USBSSP DRD Driver

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.

---

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      |  567 +++++
 drivers/usb/usbssp/gadget-ext-caps.h |  101 +
 drivers/usb/usbssp/gadget-if.c       |  568 +++++
 drivers/usb/usbssp/gadget-mem.c      | 1927 ++++++++++++++
 drivers/usb/usbssp/gadget-port.c     |  284 +++
 drivers/usb/usbssp/gadget-ring.c     | 3444 ++++++++++++++++++++++++++
 drivers/usb/usbssp/gadget-trace.c    |   13 +
 drivers/usb/usbssp/gadget-trace.h    |  482 ++++
 drivers/usb/usbssp/gadget.c          | 1907 ++++++++++++++
 drivers/usb/usbssp/gadget.h          | 2336 +++++++++++++++++
 drivers/usb/usbssp/usbssp-pci-wrap.c |  229 ++
 drivers/usb/usbssp/usbssp-plat.c     |  186 ++
 17 files changed, 12131 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

-- 
2.17.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ