Yu Chen
df2bbf3f35
ANDROID: misc: hisi_hikey_usb: Driver to support usb functionality of 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 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.
NOTE: It was noted that controlling the TYPEC_VBUS_POWER_OFF and
TYPEC_VBUS_POWER_ON values here is not reccomended. I'm looking
for a way to remove that bit from the logic here, but wanted to
still get feedback on this approach.
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
CC: ShuFan Lee <shufan_lee@richtek.com>
Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Chunfeng Yun <chunfeng.yun@mediatek.com>
Cc: Yu Chen <chenyu56@huawei.com>
Cc: Felipe Balbi <balbi@kernel.org>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>
Cc: Jun Li <lijun.kernel@gmail.com>
Cc: Valentin Schneider <valentin.schneider@arm.com>
Cc: Jack Pham <jackp@codeaurora.org>
Cc: linux-usb@vger.kernel.org
Cc: devicetree@vger.kernel.org
Bug: 146450171
Link: https://lore.kernel.org/lkml/20191212014233.32799-9-john.stultz@linaro.org/
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>
Change-Id: Icf381520abd46d083750d01f91e478321560fbf9
2020-03-23 22:55:17 +00:00
..
accessibility
acpi
ACPI: watchdog: Allow disabling WDAT at boot
2020-03-21 08:11:47 +01:00
amba
android
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
ata
ata: ahci: Add shutdown to freeze hardware resources of ahci
2020-02-28 17:22:28 +01:00
atm
fore200e: Fix incorrect checks of NULL pointer dereference
2020-02-24 08:36:36 +01:00
auxdisplay
base
FROMGIT: BACKPORT: driver core: Add device links from fwnode only for the primary device
2020-03-21 21:22:42 +00:00
bcma
block
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
bluetooth
UPSTREAM: Bluetooth: hci_qca: Add support for Qualcomm Bluetooth SoC WCN3991
2020-03-20 16:08:04 +00:00
bus
bus: ti-sysc: Fix 1-wire reset quirk
2020-03-12 13:00:31 +01:00
cdrom
char
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
clk
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
clocksource
clocksource: davinci: only enable clockevents once tim34 is initialized
2020-02-24 08:36:46 +01:00
connector
counter
cpufreq
ANDROID: cpufreq: times: Remove per-UID time in state tracking
2020-03-06 20:23:16 +00:00
cpuidle
cpuidle: teo: Avoid using "early hits" incorrectly
2020-02-05 21:22:52 +00:00
crypto
ANDROID: Removed default m for virtual sw crypto device
2020-03-03 14:23:34 -08:00
dax
dca
devfreq
Revert "PM / devfreq: Modify the device name as devfreq(X) for sysfs"
2020-03-05 16:43:43 +01:00
dio
dma
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
dma-buf
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
edac
EDAC/synopsys: Do not print an error with back-to-back snprintf() calls
2020-03-12 13:00:31 +01:00
eisa
extcon
extcon-intel-cht-wc: Don't reset USB data connection at probe
2020-02-01 09:34:46 +00:00
firewire
firmware
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
fpga
fsi
gnss
gpio
gpiolib: Set lockdep class for hierarchical irq domains
2020-02-24 08:36:49 +01:00
gpu
This is the 5.4.27 stable release
2020-03-21 10:07:42 +01:00
greybus
hid
This is the 5.4.27 stable release
2020-03-21 10:07:42 +01:00
hsi
hv
hv_balloon: Balloon up according to request page number
2020-02-11 04:35:21 -08:00
hwmon
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
hwspinlock
hwtracing
i2c
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
i3c
ide
ide: serverworks: potential overflow in svwks_set_pio_mode()
2020-02-24 08:36:53 +01:00
idle
iio
iio: st_gyro: Correct data for LSM9DS0 gyro
2020-02-01 09:34:36 +00:00
infiniband
IB/hfi1, qib: Ensure RCU is locked when accessing list
2020-03-12 13:00:30 +01:00
input
Input: edt-ft5x06 - work around first register access error
2020-02-24 08:36:45 +01:00
interconnect
UPSTREAM: interconnect: Handle memory allocation errors
2020-03-12 14:52:54 +01:00
iommu
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
ipack
irqchip
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
isdn
leds
leds: pca963x: Fix open-drain initialization
2020-02-24 08:36:24 +01:00
lightnvm
macintosh
macintosh: windfarm: fix MODINFO regression
2020-03-18 07:17:53 +01:00
mailbox
mcb
md
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
media
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
memory
memory: mtk-smi: Add PM suspend and resume ops
2020-01-17 19:48:59 +01:00
memstick
message
scsi: mptfusion: Fix double fetch bug in ioctl
2020-01-23 08:22:35 +01:00
mfd
This is the 5.4.20 stable release
2020-02-19 08:28:27 +01:00
misc
ANDROID: misc: hisi_hikey_usb: Driver to support usb functionality of Hikey960
2020-03-23 22:55:17 +00:00
mmc
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
mtd
UPSTREAM: {tty: serial, nand: onenand}: samsung: rename to fix build warning
2020-02-20 20:11:28 +01:00
mux
net
This is the 5.4.27 stable release
2020-03-21 10:07:42 +01:00
nfc
nfc: pn544: Fix occasional HW initialization failure
2020-03-05 16:43:32 +01:00
ntb
nubus
nvdimm
nvme
nvme: Fix uninitialized-variable warning
2020-03-12 13:00:15 +01:00
nvmem
UPSTREAM: nvmem: sprd: Add Spreadtrum SoCs eFuse support
2020-02-12 17:10:44 +00:00
of
FROMGIT: of: property: Add device link support for power-domains and hwlocks
2020-02-26 22:48:53 +00:00
opp
opp: Free static OPPs on errors while adding them
2020-02-24 08:36:34 +01:00
oprofile
parisc
parport
pci
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
pcmcia
perf
perf/smmuv3: Use platform_get_irq_optional() for wired interrupt
2020-03-05 16:43:37 +01:00
phy
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
pinctrl
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
platform
platform/x86: intel_mid_powerbtn: Take a copy of ddata
2020-02-14 16:34:12 -05:00
pnp
power
FROMGIT: power: reset: sc27xx: Allow the SC27XX poweroff driver building into a module
2020-03-12 15:21:54 +00:00
powercap
powercap: intel_rapl: add NULL pointer check to rapl_mmio_cpu_online()
2020-01-14 20:08:18 +01:00
pps
ps3
ptp
ptp: free ptp device pin descriptors properly
2020-01-23 08:22:51 +01:00
pwm
This is the 5.4.24 stable release
2020-03-05 17:42:40 +01:00
rapidio
ras
regulator
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
remoteproc
remoteproc: Initialize rproc_class before use
2020-02-24 08:36:54 +01:00
reset
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
rpmsg
rpmsg: char: release allocated memory
2020-01-14 20:08:37 +01:00
rtc
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
s390
s390/dasd: fix data corruption for thin provisioned devices
2020-03-18 07:17:52 +01:00
sbus
scsi
This is the 5.4.27 stable release
2020-03-21 10:07:42 +01:00
sfi
sh
siox
slimbus
soc
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
soundwire
spi
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
spmi
spmi: pmic-arb: Set lockdep class for hierarchical irq domains
2020-02-19 19:53:07 +01:00
ssb
staging
ANDROID: staging: ion: Export query function to be used in modules
2020-03-20 20:11:35 +00:00
target
scsi: Revert "target: iscsi: Wait for all commands to finish before freeing a session"
2020-02-28 17:22:25 +01:00
tc
tee
tee: optee: Fix compilation issue with nommu
2020-02-05 21:22:49 +00:00
thermal
FROMGIT: thermal: sprd: Add Spreadtrum thermal driver support
2020-03-13 11:04:30 +00:00
thunderbolt
thunderbolt: Prevent crash if non-active NVMem file is read
2020-02-28 17:22:13 +01:00
tty
Revert "ANDROID: tty: serdev: Fix broken serial console input"
2020-03-13 15:32:19 +00:00
uio
uio: fix a sleep-in-atomic-context bug in uio_dmem_genirq_irqcontrol()
2020-02-24 08:36:27 +01:00
usb
FROMGIT: usb: dwc3: Rework resets initialization to be more flexible
2020-03-23 22:55:17 +00:00
vfio
vfio/spapr/nvlink2: Skip unpinning pages on error exit
2020-02-24 08:36:43 +01:00
vhost
This is the 5.4.24 stable release
2020-03-05 17:42:40 +01:00
video
This is the 5.4.25 stable release
2020-03-12 17:09:04 +01:00
virt
virtio
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
visorbus
visorbus: fix uninitialized variable access
2020-02-24 08:36:47 +01:00
vlynq
vme
vme: bridges: reduce stack usage
2020-02-24 08:36:48 +01:00
w1
watchdog
ACPI: watchdog: Set default timeout in probe
2020-03-21 08:11:48 +01:00
xen
xen: Enable interrupts when calling _cond_resched()
2020-02-28 17:22:28 +01:00
zorro
Kconfig
Makefile