android_kernel_oneplus_msm8998/drivers
Paul Kocialkowski f3666bfc4b usb: chipidea: Grab the (legacy) USB PHY by phandle first
[ Upstream commit 68ef236274793066b9ba3154b16c0acc1c891e5c ]

According to the chipidea driver bindings, the USB PHY is specified via
the "phys" phandle node. However, this only takes effect for USB PHYs
that use the common PHY framework. For legacy USB PHYs, a simple lookup
based on the USB PHY type is done instead.

This does not play out well when more than one USB PHY is registered,
since the first registered PHY matching the type will always be
returned regardless of what the driver was bound to.

Fix this by looking up the PHY based on the "phys" phandle node.
Although generic PHYs are rather matched by their "phys-name" and not
the "phys" phandle directly, there is no helper for similar lookup on
legacy PHYs and it's probably not worth the effort to add it.

When no legacy USB PHY is found by phandle, fallback to grabbing any
registered USB2 PHY. This ensures backward compatibility if some users
were actually relying on this mechanism.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-04-27 09:33:49 +02:00
..
accessibility
acpi ACPI / device_sysfs: Avoid OF modalias creation for removed device 2019-03-23 08:44:35 +01:00
amba
android
ata sata_rcar: fix deferred probing 2019-02-20 10:13:08 +01:00
atm atm: he: fix sign-extension overflow on large shift 2019-03-23 08:44:16 +01:00
auxdisplay
base PM / wakeup: Rework wakeup source timer cancellation 2019-03-23 08:44:39 +01:00
bcma
block block/swim3: Fix -EBUSY error when re-opening device after unmount 2019-02-20 10:13:13 +01:00
bluetooth Revert "Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV" 2018-11-27 16:08:01 +01:00
bus
cdrom gdrom: fix a memory leak bug 2019-02-20 10:13:13 +01:00
char applicom: Fix potential Spectre v1 vulnerabilities 2019-03-23 08:44:23 +01:00
clk clk: ingenic: Fix round_rate misbehaving with non-integer dividers 2019-03-23 08:44:36 +01:00
clocksource clocksource/drivers/exynos_mct: Clear timer interrupt when shutdown 2019-03-23 08:44:35 +01:00
connector
cpufreq cpufreq: pxa2xx: remove incorrect __init annotation 2019-03-23 08:44:36 +01:00
cpuidle cpuidle: big.LITTLE: fix refcount leak 2019-02-20 10:13:09 +01:00
crypto crypto: caam - fixed handling of sg list 2019-03-23 08:44:32 +01:00
dca
devfreq PM / devfreq: tegra: fix error return code in tegra_devfreq_probe() 2018-11-10 07:41:40 -08:00
dio
dma dmaengine: usb-dmac: Make DMAC system sleep callbacks explicit 2019-03-23 08:44:36 +01:00
dma-buf
edac EDAC, i7core: Fix memleaks and use-after-free on probe and remove 2018-10-10 08:52:06 +02:00
eisa
extcon extcon: usb-gpio: Don't miss event during suspend/resume 2019-04-03 06:23:18 +02:00
firewire
firmware efi: stub: define DISABLE_BRANCH_PROFILING for all architectures 2019-04-03 06:23:20 +02:00
fmc
fpga
gpio gpio: gpio-omap: fix level interrupt idling 2019-04-27 09:33:48 +02:00
gpu drm/vmwgfx: Don't double-free the mode stored in par->set_mode 2019-04-03 06:23:14 +02:00
hid hid-sensor-hub.c: fix wrong do_div() usage 2019-04-03 06:23:21 +02:00
hsi
hv Drivers: hv: vmbus: Return -EINVAL for the sys files for unopened channels 2019-01-13 10:05:27 +01:00
hwmon hwmon: (lm80) Fix missing unlock on error in set_fan_div() 2019-02-23 09:05:13 +01:00
hwspinlock
hwtracing stm class: Hide STM-specific options if STM is disabled 2019-04-03 06:23:29 +02:00
i2c i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA 2019-04-27 09:33:47 +02:00
ide ide: pmac: add of_node_put() 2018-12-21 14:09:52 +01:00
idle
iio iio: adc: at91: fix wrong channel number in triggered buffer mode 2018-11-21 09:27:35 +01:00
infiniband IB/{hfi1, qib}: Fix WC.byte_len calculation for UD_SEND_WITH_IMM 2019-03-23 08:44:24 +01:00
input Input: st-keyscan - fix potential zalloc NULL dereference 2019-03-23 08:44:33 +01:00
iommu iommu/amd: Fix IOMMU page flush when detach device from a domain 2019-03-23 08:44:24 +01:00
ipack
irqchip irqchip/mmp: Only touch the PJ4 IRQ & FIQ bits on enable/disable 2019-03-23 08:44:27 +01:00
isdn mISDN: hfcpci: Test both vendor & device ID for Digium HFC4S 2019-04-03 06:23:25 +02:00
leds leds: lp5523: fix a missing check of return value of lp55xx_read 2019-03-23 08:44:17 +01:00
lguest
lightnvm
macintosh macintosh/via-pmu: Add missing mmio accessors 2018-09-19 22:48:57 +02:00
mailbox
mcb
md dm thin: add sanity checks to thin-pool and external snapshot creation 2019-04-27 09:33:49 +02:00
media media: v4l2-ctrls.c/uvc: zero v4l2_event 2019-04-03 06:23:16 +02:00
memory memory: tegra: Apply interrupts mask per SoC 2018-08-06 16:24:38 +02:00
memstick memstick: Prevent memstick host from getting runtime suspended during card detection 2019-02-20 10:13:09 +01:00
message
mfd mfd: mc13xxx: Fix a missing check of a register-read failure 2019-03-23 08:44:16 +01:00
misc misc: vexpress: Off by one in vexpress_syscfg_exec() 2019-02-20 10:13:18 +01:00
mmc mmc: mmc: fix switch timeout issue caused by jiffies precision 2019-04-03 06:23:24 +02:00
mtd mtd: rawnand: gpmi: fix MX28 bus master lockup problem 2019-02-20 10:13:17 +01:00
net enic: fix build warning without CONFIG_CPUMASK_OFFSTACK 2019-04-27 09:33:48 +02:00
nfc NFC: nxp-nci: Include unaligned.h instead of access_ok.h 2019-02-20 10:13:20 +01:00
ntb
nubus
nvdimm libnvdimm: Hold reference on parent while scheduling async init 2018-11-21 09:27:34 +01:00
nvme nvme-pci: initialize queue memory before interrupts 2018-07-11 16:03:47 +02:00
nvmem
of of: add helper to lookup compatible child node 2018-12-01 09:46:35 +01:00
oprofile
parisc parisc/pci: Switch LBA PCI bus from Hard Fail to Soft Fail mode 2018-05-30 07:49:10 +02:00
parport parport_pc: fix find_superio io compare code, should use equal test. 2019-03-23 08:44:37 +01:00
pci PCI: altera: Move retrain from fixup to altera_pcie_host_init() 2019-01-16 22:16:11 +01:00
pcmcia pcmcia: Implement CLKRUN protocol disabling for Ricoh bridges 2018-11-21 09:27:30 +01:00
perf
phy
pinctrl pinctrl: meson: meson8b: fix the sdxc_a data 1..3 pins 2019-03-23 08:44:33 +01:00
platform platform/x86: Fix unmet dependency warning for SAMSUNG_Q10 2019-03-23 08:44:26 +01:00
pnp
power power: supply: olpc_battery: correct the temperature units 2019-01-13 10:05:34 +01:00
powercap
pps
ps3
ptp ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl 2019-02-20 10:13:05 +01:00
pwm pwm: tiehrpwm: Fix disabling of output of PWMs 2018-09-09 20:04:35 +02:00
rapidio
ras
regulator regulator: s2mpa01: Fix step values for some LDOs 2019-03-23 08:44:35 +01:00
remoteproc
reset
rpmsg
rtc rtc: Fix overflow when converting time64_t to rtc_time 2019-04-03 06:23:19 +02:00
s390 scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP devices 2019-04-03 06:23:27 +02:00
sbus drivers/sbus/char: add of_node_put() 2018-12-21 14:09:52 +01:00
scsi scsi: sd: Fix a race between closing an sd device and sd I/O 2019-04-03 06:23:27 +02:00
sfi
sh
sn
soc soc/tegra: Don't leak device tree node reference 2019-02-20 10:13:06 +01:00
spi spi: bcm2835: Unbreak the build of esoteric configs 2019-01-13 10:05:31 +01:00
spmi
ssb
staging staging: vt6655: Fix interrupt race condition on device start up. 2019-04-03 06:23:27 +02:00
target scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock 2019-03-23 08:44:35 +01:00
tc TC: Set DMA masks for devices 2018-11-21 09:27:36 +01:00
thermal thermal: int340x_thermal: Fix a NULL vs IS_ERR() check 2019-03-23 08:44:19 +01:00
thunderbolt
tty tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped 2019-04-27 09:33:47 +02:00
uio uio: Fix an Oops on load 2018-11-27 16:08:02 +01:00
usb usb: chipidea: Grab the (legacy) USB PHY by phandle first 2019-04-27 09:33:49 +02:00
uwb uwb: hwa-rc: fix memory leak at probe 2018-10-10 08:52:04 +02:00
vfio
vhost vhost: make sure used idx is seen before log in vhost_add_used_n() 2019-01-13 10:05:28 +01:00
video video: fbdev: Set pixclock = 0 in goldfishfb 2019-04-03 06:23:24 +02:00
virt mm: replace get_user_pages() write/force parameters with gup_flags 2018-12-17 21:55:16 +01:00
virtio virtio_balloon: fix another race between migration and ballooning 2018-08-06 16:24:42 +02:00
vlynq
vme
w1 w1: omap-hdq: fix missing bus unregister at removal 2018-11-21 09:27:35 +01:00
watchdog watchdog: f71808e_wdt: Fix magic close handling 2018-05-30 07:49:03 +02:00
xen xen: xlate_mmu: add missing header to fix 'W=1' warning 2018-12-17 21:55:11 +01:00
zorro zorro: Set up z->dev.dma_mask for the DMA API 2018-05-30 07:49:11 +02:00
Kconfig
Makefile