linux/drivers/phy
Heiko Stuebner 605df8af33 phy: rockchip-usb: add handler for usb-uart functionality
Most newer Rockchip SoCs provide the possibility to use a usb-phy
as passthrough for the debug uart (uart2), making it possible to
for example get console output without needing to open the device.

This patch adds an early_initcall to enable this functionality
conditionally via the commandline and also disables the corresponding
usb controller in the devicetree.

Currently only data for the rk3288 is provided, but at least the
rk3188 and arm64 rk3368 also provide this functionality and will be
enabled later.

On a spliced usb cable the signals are tx on white wire(D+) and
rx on green wire(D-).

The one caveat is that currently the reconfiguration of the phy
happens as early_initcall, as the code depends on the unflattened
devicetree being available. Everything is fine if only a regular
console is active as the console-replay will happen after the
reconfiguation. But with earlycon active output up to smp-init
currently will get lost.

The phy is an optional property for the connected dwc2 controller,
so we still provide the phy device but fail all phy-ops with -EBUSY
to make sure the dwc2 does not try to transmit anything on the
repurposed phy.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
2016-03-01 17:13:50 +05:30
..
Kconfig phy: Add driver for rockchip Display Port PHY 2016-03-01 17:13:50 +05:30
Makefile phy: Add driver for rockchip Display Port PHY 2016-03-01 17:13:50 +05:30
phy-armada375-usb2.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-bcm-cygnus-pcie.c phy: cygnus: pcie: add missing of_node_put 2015-12-03 12:28:23 +05:30
phy-bcm-kona-usb2.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-berlin-sata.c phy: berlin-sata: add missing of_node_put 2015-12-03 12:28:23 +05:30
phy-berlin-usb.c phy: berlin-usb: don't set device's driver_data 2015-12-20 17:43:12 +05:30
phy-brcmstb-sata.c phy: phy_brcmstb_sata: add support for MIPS-based platforms 2015-12-20 17:28:33 +05:30
phy-core.c phy: core: fix wrong err handle for phy_power_on 2016-02-10 11:45:41 +05:30
phy-dm816x-usb.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-exynos4x12-usb2.c phy: samsung-usb2: Remove NULL terminating entry from phys array 2015-03-12 11:01:16 +05:30
phy-exynos5-usbdrd.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-exynos4210-usb2.c phy: samsung-usb2: Remove NULL terminating entry from phys array 2015-03-12 11:01:16 +05:30
phy-exynos5250-sata.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-exynos5250-usb2.c phy: samsung-usb2: Remove NULL terminating entry from phys array 2015-03-12 11:01:16 +05:30
phy-exynos-dp-video.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-exynos-mipi-video.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-hi6220-usb.c phy: add phy-hi6220-usb 2015-12-20 15:21:38 +05:30
phy-hix5hd2-sata.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-lpc18xx-usb-otg.c phy: lpc18xx-usb-otg: fix clock order in phy init 2015-08-10 20:11:58 +05:30
phy-miphy28lp.c phy: miphy28lp: add missing of_node_put 2015-12-03 12:28:23 +05:30
phy-miphy365x.c phy: miphy365x: add missing of_node_put 2015-12-03 12:28:23 +05:30
phy-mt65xx-usb3.c phy: phy-mt65xx-usb3: improve HS eye diagram 2015-12-20 15:21:37 +05:30
phy-mvebu-sata.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-omap-control.c New Features 2015-04-10 13:47:50 +02:00
phy-omap-usb2.c phy: omap-usb2: use *syscon* framework API to power on/off the PHY 2015-12-21 14:26:28 +05:30
phy-pistachio-usb.c PHY: Add driver for Pistachio USB2.0 PHY 2015-06-21 21:53:38 +02:00
phy-pxa-28nm-hsic.c phy: add Marvell HSIC 28nm PHY 2015-06-09 12:20:30 -07:00
phy-pxa-28nm-usb2.c phy: Add Marvell USB 2.0 OTG 28nm PHY 2015-06-09 12:20:30 -07:00
phy-qcom-apq8064-sata.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-qcom-ipq806x-sata.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-qcom-ufs-i.h phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-qcom-ufs-qmp-14nm.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-qcom-ufs-qmp-14nm.h phy: qcom-ufs: add support for 14nm phy 2015-01-20 19:43:26 +01:00
phy-qcom-ufs-qmp-20nm.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-qcom-ufs-qmp-20nm.h phy: qcom-ufs: add support for 20nm phy 2015-01-20 19:43:25 +01:00
phy-qcom-ufs.c phy: qcom-ufs: fix build error when the component is built as a module 2015-09-25 17:01:14 +05:30
phy-rcar-gen2.c locking/atomics, cmpxchg: Privatize the inclusion of asm/cmpxchg.h 2015-09-13 10:35:46 +02:00
phy-rcar-gen3-usb2.c phy: rcar-gen3-usb2: add runtime ID/VBUS pin detection 2015-12-20 15:21:37 +05:30
phy-rockchip-dp.c phy: Add driver for rockchip Display Port PHY 2016-03-01 17:13:50 +05:30
phy-rockchip-emmc.c phy: add a driver for the Rockchip SoC internal eMMC PHY 2016-03-01 17:13:50 +05:30
phy-rockchip-usb.c phy: rockchip-usb: add handler for usb-uart functionality 2016-03-01 17:13:50 +05:30
phy-s5pv210-usb2.c phy: Add support for S5PV210 to the Exynos USB 2.0 PHY driver 2014-07-19 04:25:09 +09:00
phy-samsung-usb2.c phy: exynos-usb2: add vbus regulator support 2015-10-06 20:21:47 +05:30
phy-samsung-usb2.h phy: exynos-usb2: add vbus regulator support 2015-10-06 20:21:47 +05:30
phy-spear1310-miphy.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-spear1340-miphy.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-stih41x-usb.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-stih407-usb.c phy: phy-stih407-usb: Pass sysconfig register offsets via syscfg property. 2015-01-21 15:23:06 +05:30
phy-sun4i-usb.c phy-sun4i-usb: Add support for the host usb-phys found on the H3 SoC 2015-12-20 15:21:38 +05:30
phy-sun9i-usb.c phy: Constify struct phy_ops variables 2015-08-03 18:35:09 +05:30
phy-ti-pipe3.c phy: ti-pipe3: use *syscon* framework API to set PCS value of the PHY 2015-12-21 14:26:27 +05:30
phy-tusb1210.c This is the bulk of GPIO changes for the v4.3 kernel cycle: 2015-09-04 10:07:45 -07:00
phy-twl4030-usb.c phy: twl4030-usb: Fix unbalanced pm_runtime_enable on module reload 2016-02-10 11:46:01 +05:30
phy-xgene.c New Features 2015-04-10 13:47:50 +02:00
ulpi_phy.h phy: ulpi_phy: Add const qualifier to ops 2015-08-03 18:35:09 +05:30