From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v3,5/6] usb:cdns3 Add Cadence USB3 DRD Driver From: Greg Kroah-Hartman Message-Id: <20190204114841.GD28608@kroah.com> Date: Mon, 4 Feb 2019 12:48:41 +0100 To: Pawel Laszczak Cc: devicetree@vger.kernel.org, mark.rutland@arm.com, linux-usb@vger.kernel.org, hdegoede@redhat.com, heikki.krogerus@linux.intel.com, andy.shevchenko@gmail.com, robh+dt@kernel.org, rogerq@ti.com, linux-kernel@vger.kernel.org, jbergsagel@ti.com, nsekhar@ti.com, nm@ti.com, sureshp@cadence.com, peter.chen@nxp.com, pjez@cadence.com, kurahul@cadence.com List-ID: T24gVGh1LCBKYW4gMzEsIDIwMTkgYXQgMTE6NTI6MzJBTSArMDAwMCwgUGF3ZWwgTGFzemN6YWsg d3JvdGU6Cj4gVGhpcyBwYXRjaCBpbnRyb2R1Y2UgbmV3IENhZGVuY2UgVVNCU1MgRFJEIGRyaXZl cgo+IHRvIGxpbnV4IGtlcm5lbC4KPiAKPiBUaGUgQ2FkZW5jZSBVU0JTUyBEUkQgRHJpdmVyIGlz IGEgaGlnaGx5Cj4gY29uZmlndXJhYmxlIElQIENvcmUgd2hpY2ggY2FuIGJlCj4gaW5zdGFudGlh dGVkIGFzIER1YWwtUm9sZSBEZXZpY2UgKERSRCksCj4gUGVyaXBoZXJhbCBPbmx5IGFuZCBIb3N0 IE9ubHkgKFhIQ0kpCj4gY29uZmlndXJhdGlvbnMuCj4gCj4gVGhlIGN1cnJlbnQgZHJpdmVyIGhh cyBiZWVuIHZhbGlkYXRlZCB3aXRoCj4gRlBHQSBidXJuZWQuIFdlIGhhdmUgc3VwcG9ydCBmb3Ig UENJZQo+IGJ1cywgd2hpY2ggaXMgdXNlZCBvbiBGUEdBIHByb3RvdHlwaW5nLgo+IAo+IFRoZSBo b3N0IHNpZGUgb2YgVVNCU1MtRFJEIGNvbnRyb2xsZXIgaXMgY29tcGxpYW5jZQo+IHdpdGggWEhD SSBzcGVjaWZpY2F0aW9uLCBzbyBpdCB3b3JrcyB3aXRoCj4gc3RhbmRhcmQgWEhDSSBsaW51eCBk cml2ZXIuCgpQbGVhc2UgbGluZS13cmFwIHRoaXMgcHJvcGVybHkgYXQgNzIgY29sdW1ucywgbGlr ZSB5b3VyIGVkaXRvciBhc2tzIHlvdQp0byB3aGVuIHlvdSBydW4gZ2l0IDopCgo+IAo+IFNpZ25l ZC1vZmYtYnk6IFBhd2VsIExhc3pjemFrIDxwYXdlbGxAY2FkZW5jZS5jb20+Cj4gLS0tCj4gIGRy aXZlcnMvdXNiL0tjb25maWcgICAgICAgICAgICAgICAgfCAgICAyICsKPiAgZHJpdmVycy91c2Iv TWFrZWZpbGUgICAgICAgICAgICAgICB8ICAgIDIgKwo+ICBkcml2ZXJzL3VzYi9jZG5zMy9LY29u ZmlnICAgICAgICAgIHwgICA0NCArCj4gIGRyaXZlcnMvdXNiL2NkbnMzL01ha2VmaWxlICAgICAg ICAgfCAgIDE0ICsKPiAgZHJpdmVycy91c2IvY2RuczMvY2RuczMtcGNpLXdyYXAuYyB8ICAxNTUg KysrCj4gIGRyaXZlcnMvdXNiL2NkbnMzL2NvcmUuYyAgICAgICAgICAgfCAgNDAzICsrKysrKwo+ ICBkcml2ZXJzL3VzYi9jZG5zMy9jb3JlLmggICAgICAgICAgIHwgIDExNiArKwo+ICBkcml2ZXJz L3VzYi9jZG5zMy9kZWJ1Zy5oICAgICAgICAgIHwgIDE2OCArKysKPiAgZHJpdmVycy91c2IvY2Ru czMvZGVidWdmcy5jICAgICAgICB8ICAxNjQgKysrCj4gIGRyaXZlcnMvdXNiL2NkbnMzL2RyZC5j ICAgICAgICAgICAgfCAgMzY1ICsrKysrCj4gIGRyaXZlcnMvdXNiL2NkbnMzL2RyZC5oICAgICAg ICAgICAgfCAgMTYyICsrKwo+ICBkcml2ZXJzL3VzYi9jZG5zMy9lcDAuYyAgICAgICAgICAgIHwg IDkwNyArKysrKysrKysrKysrCj4gIGRyaXZlcnMvdXNiL2NkbnMzL2dhZGdldC1leHBvcnQuaCAg fCAgIDI4ICsKPiAgZHJpdmVycy91c2IvY2RuczMvZ2FkZ2V0LmMgICAgICAgICB8IDE5ODUgKysr KysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBkcml2ZXJzL3VzYi9jZG5zMy9nYWRnZXQuaCAg ICAgICAgIHwgMTIwNyArKysrKysrKysrKysrKysrKwo+ICBkcml2ZXJzL3VzYi9jZG5zMy9ob3N0 LWV4cG9ydC5oICAgIHwgICAyOCArCj4gIGRyaXZlcnMvdXNiL2NkbnMzL2hvc3QuYyAgICAgICAg ICAgfCAgIDcyICsKPiAgZHJpdmVycy91c2IvY2RuczMvdHJhY2UuYyAgICAgICAgICB8ICAgMjMg Kwo+ICBkcml2ZXJzL3VzYi9jZG5zMy90cmFjZS5oICAgICAgICAgIHwgIDQwNCArKysrKysKPiAg MTkgZmlsZXMgY2hhbmdlZCwgNjI0OSBpbnNlcnRpb25zKCspCj4gIGNyZWF0ZSBtb2RlIDEwMDY0 NCBkcml2ZXJzL3VzYi9jZG5zMy9LY29uZmlnCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJz L3VzYi9jZG5zMy9NYWtlZmlsZQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy91c2IvY2Ru czMvY2RuczMtcGNpLXdyYXAuYwo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy91c2IvY2Ru czMvY29yZS5jCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3VzYi9jZG5zMy9jb3JlLmgK PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvdXNiL2NkbnMzL2RlYnVnLmgKPiAgY3JlYXRl IG1vZGUgMTAwNjQ0IGRyaXZlcnMvdXNiL2NkbnMzL2RlYnVnZnMuYwo+ICBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy91c2IvY2RuczMvZHJkLmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZl cnMvdXNiL2NkbnMzL2RyZC5oCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3VzYi9jZG5z My9lcDAuYwo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy91c2IvY2RuczMvZ2FkZ2V0LWV4 cG9ydC5oCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3VzYi9jZG5zMy9nYWRnZXQuYwo+ ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy91c2IvY2RuczMvZ2FkZ2V0LmgKPiAgY3JlYXRl IG1vZGUgMTAwNjQ0IGRyaXZlcnMvdXNiL2NkbnMzL2hvc3QtZXhwb3J0LmgKPiAgY3JlYXRlIG1v ZGUgMTAwNjQ0IGRyaXZlcnMvdXNiL2NkbnMzL2hvc3QuYwo+ICBjcmVhdGUgbW9kZSAxMDA2NDQg ZHJpdmVycy91c2IvY2RuczMvdHJhY2UuYwo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy91 c2IvY2RuczMvdHJhY2UuaAoKVGhpcyBpcyB3YXkgdG9vIGJpZyB0byB0cnkgdG8gcmV2aWV3IGFs bCBhdCBvbmNlLiAgWW91IG5lZWQgdG8gYnJlYWsKdGhpcyB1cCBpbnRvIGxvZ2ljYWwgY2h1bmtz LCBlYWNoIG9uZSBhZGRpbmcgYSBzaW5nbGUgZnVuY3Rpb25hbGl0eSB0bwptYWtlIGl0IHBvc3Np YmxlIHRvIGFjdHVhbGx5IHJldmlldyBpdC4KCnRoYW5rcywKCmdyZWcgay1oCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg KH Subject: Re: [PATCH v3 5/6] usb:cdns3 Add Cadence USB3 DRD Driver Date: Mon, 4 Feb 2019 12:48:41 +0100 Message-ID: <20190204114841.GD28608@kroah.com> References: <1548935553-452-1-git-send-email-pawell@cadence.com> <1548935553-452-6-git-send-email-pawell@cadence.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1548935553-452-6-git-send-email-pawell@cadence.com> Sender: linux-kernel-owner@vger.kernel.org To: Pawel Laszczak Cc: devicetree@vger.kernel.org, mark.rutland@arm.com, linux-usb@vger.kernel.org, hdegoede@redhat.com, heikki.krogerus@linux.intel.com, andy.shevchenko@gmail.com, robh+dt@kernel.org, rogerq@ti.com, linux-kernel@vger.kernel.org, jbergsagel@ti.com, nsekhar@ti.com, nm@ti.com, sureshp@cadence.com, peter.chen@nxp.com, pjez@cadence.com, kurahul@cadence.com List-Id: devicetree@vger.kernel.org On Thu, Jan 31, 2019 at 11:52:32AM +0000, Pawel Laszczak wrote: > This patch introduce new Cadence USBSS DRD driver > to linux kernel. > > The Cadence USBSS DRD Driver 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. Please line-wrap this properly at 72 columns, like your editor asks you to when you run git :) > > Signed-off-by: Pawel Laszczak > --- > drivers/usb/Kconfig | 2 + > drivers/usb/Makefile | 2 + > drivers/usb/cdns3/Kconfig | 44 + > drivers/usb/cdns3/Makefile | 14 + > drivers/usb/cdns3/cdns3-pci-wrap.c | 155 +++ > drivers/usb/cdns3/core.c | 403 ++++++ > drivers/usb/cdns3/core.h | 116 ++ > drivers/usb/cdns3/debug.h | 168 +++ > drivers/usb/cdns3/debugfs.c | 164 +++ > drivers/usb/cdns3/drd.c | 365 +++++ > drivers/usb/cdns3/drd.h | 162 +++ > drivers/usb/cdns3/ep0.c | 907 +++++++++++++ > drivers/usb/cdns3/gadget-export.h | 28 + > drivers/usb/cdns3/gadget.c | 1985 ++++++++++++++++++++++++++++ > drivers/usb/cdns3/gadget.h | 1207 +++++++++++++++++ > drivers/usb/cdns3/host-export.h | 28 + > drivers/usb/cdns3/host.c | 72 + > drivers/usb/cdns3/trace.c | 23 + > drivers/usb/cdns3/trace.h | 404 ++++++ > 19 files changed, 6249 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.h > 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 > create mode 100644 drivers/usb/cdns3/trace.c > create mode 100644 drivers/usb/cdns3/trace.h This is way too big to try to review all at once. You need to break this up into logical chunks, each one adding a single functionality to make it possible to actually review it. thanks, greg k-h