Re: [PATCH v2 08/11] misc: hisi_hikey_usb: Driver to support onboard USB gpio hub on Hikey960

From: Mauro Carvalho Chehab
Date: Wed Sep 09 2020 - 04:44:52 EST


Em Wed, 9 Sep 2020 10:35:55 +0200
Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> escreveu:

> On Mon, Sep 07, 2020 at 05:59:32PM +0200, Mauro Carvalho Chehab wrote:
> > From: Yu Chen <chenyu56@xxxxxxxxxx>
> >
> > The HiKey960 has a fairly complex USB configuration due to it
> > needing to support a USB-C port for host/device mode and multiple
> > USB-A ports in host mode, all using a single USB controller.
> >
> > See schematics here:
> > https://github.com/96boards/documentation/raw/master/consumer/hikey/hikey960/hardware-docs/HiKey960_Schematics.pdf
> >
> > This driver acts as a usb-role-switch intermediary, intercepting
> > the role switch notifications from the tcpm code, and passing
> > them on to the dwc3 core.
> >
> > In doing so, it also controls the onboard hub and power gpios in
> > order to properly route the data lines between the USB-C port
> > and the onboard hub to the USB-A ports.
> >
> > Signed-off-by: Yu Chen <chenyu56@xxxxxxxxxx>
> > [jstultz: Major rework to make the driver a usb-role-switch
> > intermediary]
> > Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>
> > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
> > ---
> > MAINTAINERS | 7 ++
> > drivers/misc/Kconfig | 9 ++
> > drivers/misc/Makefile | 1 +
> > drivers/misc/hisi_hikey_usb.c | 205 ++++++++++++++++++++++++++++++++++
> > 4 files changed, 222 insertions(+)
> > create mode 100644 drivers/misc/hisi_hikey_usb.c
>
> Can this, and the next patch, go into my char-misc tree independent of
> the other patches in this series?

Yes, they can go via char-misc tree. The drivers are independent.

> Or do they all need to go in together?

For USB functionality to actually work, both drivers are needed.
The DTS patch assumes both drivers to be merged.

While I don't see any big issue if this getting merged via
one of the trees (either together with PHY or with misc),
if you prefer, I can split it into two different patches
(at the cost of probably causing some trivial conflict
when both gets merged upstream).

Thanks,
Mauro