[RESEND PATCH v6, 4/5] usb: Add MediaTek USB3 DRD Driver
From: chunfeng.yun@mediatek.com (Chunfeng Yun)
Date: 2016-10-11 03:15:11
Also in:
linux-devicetree, linux-mediatek, lkml
On Mon, 2016-10-10 at 13:00 +0200, Matthias Brugger wrote:
On 09/21/2016 07:54 AM, Chunfeng Yun wrote:quoted
This patch adds support for the MediaTek USB3 controller integrated into MT8173. It can be configured as Dual-Role Device (DRD), Peripheral Only and Host Only (xHCI) modes. Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com> --- drivers/usb/Kconfig | 2 + drivers/usb/Makefile | 1 + drivers/usb/mtu3/Kconfig | 54 +++ drivers/usb/mtu3/Makefile | 19 + drivers/usb/mtu3/mtu3.h | 422 +++++++++++++++++ drivers/usb/mtu3/mtu3_core.c | 871 +++++++++++++++++++++++++++++++++++ drivers/usb/mtu3/mtu3_dr.c | 379 ++++++++++++++++ drivers/usb/mtu3/mtu3_dr.h | 108 +++++ drivers/usb/mtu3/mtu3_gadget.c | 731 +++++++++++++++++++++++++++++ drivers/usb/mtu3/mtu3_gadget_ep0.c | 883 ++++++++++++++++++++++++++++++++++++ drivers/usb/mtu3/mtu3_host.c | 294 ++++++++++++ drivers/usb/mtu3/mtu3_hw_regs.h | 473 +++++++++++++++++++ drivers/usb/mtu3/mtu3_plat.c | 490 ++++++++++++++++++++ drivers/usb/mtu3/mtu3_qmu.c | 599 ++++++++++++++++++++++++ drivers/usb/mtu3/mtu3_qmu.h | 43 ++ 15 files changed, 5369 insertions(+) create mode 100644 drivers/usb/mtu3/Kconfig create mode 100644 drivers/usb/mtu3/Makefile create mode 100644 drivers/usb/mtu3/mtu3.h create mode 100644 drivers/usb/mtu3/mtu3_core.c create mode 100644 drivers/usb/mtu3/mtu3_dr.c create mode 100644 drivers/usb/mtu3/mtu3_dr.h create mode 100644 drivers/usb/mtu3/mtu3_gadget.c create mode 100644 drivers/usb/mtu3/mtu3_gadget_ep0.c create mode 100644 drivers/usb/mtu3/mtu3_host.c create mode 100644 drivers/usb/mtu3/mtu3_hw_regs.h create mode 100644 drivers/usb/mtu3/mtu3_plat.c create mode 100644 drivers/usb/mtu3/mtu3_qmu.c create mode 100644 drivers/usb/mtu3/mtu3_qmu.hAs Oliver already said, this patch is quiet big which makes it difficult to review. I propose to provide a first implementation with minimal functionality and incremental patches on top of this when the first got merged. You could split the patch in three series/parts: 1. Host only 2. Peripheral only 3. Dual mode What do you think?
Ok, I'll split the patch into some small ones as many as possible. Thanks a lot
Regards, Matthias