From: Pawel Laszczak <pawell@cadence.com>
To: Peter Chen <peter.chen@nxp.com>
Cc: "gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"balbi@kernel.org" <balbi@kernel.org>,
"colin.king@canonical.com" <colin.king@canonical.com>,
"rogerq@ti.com" <rogerq@ti.com>,
Jayshri Dajiram Pawar <jpawar@cadence.com>,
Rahul Kumar <kurahul@cadence.com>,
Sanket Parmar <sparmar@cadence.com>,
"nsekhar@ti.com" <nsekhar@ti.com>,
"heikki.krogerus@linux.intel.com"
<heikki.krogerus@linux.intel.com>,
"chunfeng.yun@mediatek.com" <chunfeng.yun@mediatek.com>,
"yanaijie@huawei.com" <yanaijie@huawei.com>
Subject: RE: [PATCH 0/8] Introduced new Cadence USBSSP DRD Driver.
Date: Wed, 30 Sep 2020 07:43:45 +0000 [thread overview]
Message-ID: <DM6PR07MB55297822FC01723AC9E34BF1DD330@DM6PR07MB5529.namprd07.prod.outlook.com> (raw)
In-Reply-To: <20200929032258.GA9076@b29397-desktop>
>On 20-09-28 14:27:33, Pawel Laszczak wrote:
>> 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 burned. We have support
>> for PCIe bus, which is used on FPGA prototyping.
>>
>> The host side of USBSS-DRD controller is compliance with XHCI
>> specification, so it works with standard XHCI Linux driver.
>>
>> The host side of USBSS DRD controller is compliant with XHCI.
>
>The device side?
Yes, it should be device side.
Thanks
>
>> The architecture for device side is almost the same as for host side,
>> and most of the XHCI specification can be used to understand how
>> this controller operates.
>>
>> This controller and driver support Full Speed, Hight Speed, Supper Speed
>> and Supper Speed Plus USB protocol.
>>
>> The prefix cdnsp used in driver has chosen by analogy to cdn3 driver.
>> The last letter of this acronym means PLUS. The formal name of controller
>> is USBSSP but it's to generic so I've decided to use CDNSP.
>>
>> The patch 1: adds support for DRD CDNSP.
>> The patch 2: separates common code that can be reusable by cdnsp driver.
>> The patch 3: moves reusable code to separate module.
>> The patch 4: changes prefixes in reusable code frome cdns3 to common cdns.
>> The patch 5: adopts gadget_dev pointer in cdns structure to make possible
>> use it in both drivers.
>> The patches 6-8: add the main part of driver and has been intentionally
>> split into 3 part. In my opinion such division should not
>> affect understanding and reviewing the driver, and cause that
>> main patch (7/8) is little smaller. Patch 6 introduces main
>> header file for driver, 7 is the main part that implements all
>> functionality of driver and 8 introduces tracepoints.
>>
>> ---
>>
>> Pawel Laszczak (7):
>> usb: cdns3: Add support for DRD CDNSP
>> usb: cdns3: Split core.c into cdns3-plat and core.c file
>> usb: cdns3: Moves reusable code to separate module
>> usb: cdns3: Refactoring names in reusable code
>> usb: cdns3: Changed type of gadget_dev in cdns structure
>> usb: cdnsp: Device side header file for CDNSP driver
>> usb: cdnsp: cdns3 Add main part of Cadence USBSSP DRD Driver
>> usb: cdnsp: Add tracepoints for CDNSP driver
>>
>> drivers/usb/Kconfig | 1 +
>> drivers/usb/Makefile | 1 +
>> drivers/usb/cdns3/Kconfig | 8 +
>> drivers/usb/cdns3/Makefile | 8 +-
>> drivers/usb/cdns3/cdns3-plat.c | 209 +++
>> drivers/usb/cdns3/core.c | 336 ++--
>> drivers/usb/cdns3/core.h | 51 +-
>> drivers/usb/cdns3/drd.c | 219 ++-
>> drivers/usb/cdns3/drd.h | 93 +-
>> drivers/usb/cdns3/gadget-export.h | 26 +-
>> drivers/usb/cdns3/gadget.c | 29 +-
>> drivers/usb/cdns3/host-export.h | 10 +-
>> drivers/usb/cdns3/host.c | 23 +-
>> drivers/usb/cdnsp/Kconfig | 40 +
>> drivers/usb/cdnsp/Makefile | 12 +
>> drivers/usb/cdnsp/cdnsp-pci.c | 247 +++
>> drivers/usb/cdnsp/debug.h | 583 +++++++
>> drivers/usb/cdnsp/ep0.c | 500 ++++++
>> drivers/usb/cdnsp/gadget.c | 2009 ++++++++++++++++++++++++
>> drivers/usb/cdnsp/gadget.h | 1598 +++++++++++++++++++
>> drivers/usb/cdnsp/mem.c | 1326 ++++++++++++++++
>> drivers/usb/cdnsp/ring.c | 2426 +++++++++++++++++++++++++++++
>> drivers/usb/cdnsp/trace.c | 12 +
>> drivers/usb/cdnsp/trace.h | 840 ++++++++++
>> 24 files changed, 10228 insertions(+), 379 deletions(-)
>> create mode 100644 drivers/usb/cdns3/cdns3-plat.c
>> create mode 100644 drivers/usb/cdnsp/Kconfig
>> create mode 100644 drivers/usb/cdnsp/Makefile
>> create mode 100644 drivers/usb/cdnsp/cdnsp-pci.c
>> create mode 100644 drivers/usb/cdnsp/debug.h
>> create mode 100644 drivers/usb/cdnsp/ep0.c
>> create mode 100644 drivers/usb/cdnsp/gadget.c
>> create mode 100644 drivers/usb/cdnsp/gadget.h
>> create mode 100644 drivers/usb/cdnsp/mem.c
>> create mode 100644 drivers/usb/cdnsp/ring.c
>> create mode 100644 drivers/usb/cdnsp/trace.c
>> create mode 100644 drivers/usb/cdnsp/trace.h
>>
>> --
>> 2.17.1
>>
>
>--
>
>Thanks,
>Peter Chen
prev parent reply other threads:[~2020-09-30 7:44 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-28 12:27 [PATCH 0/8] Introduced new Cadence USBSSP DRD Driver Pawel Laszczak
2020-09-28 12:27 ` [PATCH 1/8] usb: cdns3: Add support for DRD CDNSP Pawel Laszczak
2020-09-28 12:27 ` [PATCH 2/8] usb: cdns3: Split core.c into cdns3-plat and core.c file Pawel Laszczak
2020-09-29 1:46 ` Chunfeng Yun
2020-09-30 5:22 ` Pawel Laszczak
2020-09-30 7:38 ` Pawel Laszczak
2020-09-29 3:37 ` Peter Chen
2020-09-30 9:35 ` Pawel Laszczak
2020-09-28 12:27 ` [PATCH 3/8] usb: cdns3: Moves reusable code to separate module Pawel Laszczak
2020-09-28 12:27 ` [PATCH 4/8] usb: cdns3: Refactoring names in reusable code Pawel Laszczak
2020-09-28 12:27 ` [PATCH 5/8] usb: cdns3: Changed type of gadget_dev in cdns structure Pawel Laszczak
2020-09-29 4:36 ` Peter Chen
2020-10-01 4:40 ` Pawel Laszczak
2020-10-05 6:15 ` Pawel Laszczak
2020-09-28 12:27 ` [PATCH 6/8] usb: cdnsp: Device side header file for CDNSP driver Pawel Laszczak
2020-09-29 2:26 ` Chunfeng Yun
2020-09-30 8:55 ` Pawel Laszczak
2020-09-29 4:37 ` Peter Chen
2020-09-30 9:22 ` Pawel Laszczak
2020-09-28 12:27 ` [PATCH 7/8] usb: cdnsp: cdns3 Add main part of Cadence USBSSP DRD Driver Pawel Laszczak
2020-09-29 4:27 ` Chunfeng Yun
2020-09-30 11:58 ` Pawel Laszczak
2020-09-29 4:46 ` Peter Chen
2020-09-30 13:01 ` Pawel Laszczak
2020-09-28 12:27 ` [PATCH 8/8] usb: cdnsp: Add tracepoints for CDNSP driver Pawel Laszczak
2020-09-29 3:24 ` [PATCH 0/8] Introduced new Cadence USBSSP DRD Driver Peter Chen
2020-09-30 7:43 ` Pawel Laszczak [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DM6PR07MB55297822FC01723AC9E34BF1DD330@DM6PR07MB5529.namprd07.prod.outlook.com \
--to=pawell@cadence.com \
--cc=balbi@kernel.org \
--cc=chunfeng.yun@mediatek.com \
--cc=colin.king@canonical.com \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=jpawar@cadence.com \
--cc=kurahul@cadence.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=nsekhar@ti.com \
--cc=peter.chen@nxp.com \
--cc=rogerq@ti.com \
--cc=sparmar@cadence.com \
--cc=yanaijie@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).