]> git.baikalelectronics.ru Git - kernel.git/commit
misc: hisi_hikey_usb: Driver to support onboard USB gpio hub on Hikey960
authorYu Chen <chenyu56@huawei.com>
Thu, 10 Sep 2020 06:00:12 +0000 (08:00 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Sep 2020 16:56:38 +0000 (18:56 +0200)
commit9c78691b3824ca989d165c9dac5eb6566e64b2c7
treef7d6e3bd385d4239704230d7893ff2f62a39b302
parent63ac965c0a47d8e992659500e4a8c7d0bae8a795
misc: hisi_hikey_usb: Driver to support onboard USB gpio hub on Hikey960

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@huawei.com>
[jstultz: Major rework to make the driver a usb-role-switch
          intermediary]
Signed-off-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/c263f72e1d803c18c45a69ce2c333e79a7ed89ff.1599717402.git.mchehab+huawei@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
MAINTAINERS
drivers/misc/Kconfig
drivers/misc/Makefile
drivers/misc/hisi_hikey_usb.c [new file with mode: 0644]