linux_dsm_epyc7002/drivers/usb/chipidea
Paul Kocialkowski 68ef236274 usb: chipidea: Grab the (legacy) USB PHY by phandle first
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>
2019-02-27 15:51:02 +01:00
..
bits.h USB: chipidea: Remove redundant license text 2017-11-07 15:45:01 +01:00
ci_hdrc_imx.c usb: chipidea: imx: set power polarity 2019-02-27 15:51:02 +01:00
ci_hdrc_imx.h usb: chipidea: imx: set power polarity 2019-02-27 15:51:02 +01:00
ci_hdrc_msm.c USB: chipidea: msm: fix ulpi-node lookup 2017-12-13 09:50:52 +08:00
ci_hdrc_pci.c USB: chipidea: Remove redundant license text 2017-11-07 15:45:01 +01:00
ci_hdrc_tegra.c usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() 2019-02-26 11:57:38 +01:00
ci_hdrc_usb2.c USB: chipidea: Remove redundant license text 2017-11-07 15:45:01 +01:00
ci_hdrc_zevio.c USB: chipidea: Remove redundant license text 2017-11-07 15:45:01 +01:00
ci.h usb: chipidea: Always build ULPI code 2018-07-05 14:22:47 +08:00
core.c usb: chipidea: Grab the (legacy) USB PHY by phandle first 2019-02-27 15:51:02 +01:00
debug.c USB: chipidea: no need to check return value of debugfs_create functions 2018-05-31 12:54:22 +02:00
host.c usb: chipidea: host: override ehci->hub_control 2018-12-11 09:12:30 +08:00
host.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Kconfig USB: add missing SPDX lines to Kconfig and Makefiles 2019-01-22 09:08:17 +01:00
Makefile usb: chipidea: Always build ULPI code 2018-07-05 14:22:47 +08:00
otg_fsm.c USB: move many drivers to use DEVICE_ATTR_WO 2018-01-24 08:49:52 +01:00
otg_fsm.h USB: chipidea: Remove redundant license text 2017-11-07 15:45:01 +01:00
otg.c usb: chipidea: Fix otg event handler 2018-09-20 17:04:22 +08:00
otg.h usb: chipidea: Prevent unbalanced IRQ disable 2018-09-20 17:04:21 +08:00
udc.c usb: chipidea: Add dynamic pinctrl selection 2018-09-20 17:04:21 +08:00
udc.h USB: chipidea: Remove redundant license text 2017-11-07 15:45:01 +01:00
ulpi.c usb: chipidea: Always build ULPI code 2018-07-05 14:22:47 +08:00
usbmisc_imx.c usb: chipidea: imx: set power polarity 2019-02-27 15:51:02 +01:00