lkml.org 
[lkml]   [2019]   [Jul]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH v2 0/3] Exynos EHCI/OHCI: resolve conflict with the generic USB device bindings
Date
Dear All,

Commit 69bec7259853 ("USB: core: let USB device know device node") added
support for attaching devicetree node for USB devices. Those nodes are
children of their USB host controller. However Exynos EHCI and OHCI
driver bindings already define child-nodes for each physical root hub
port and assigns respective PHY controller and parameters to them. This
leads to the conflict. A workaround for it has been merged as commit
01d4071486fe ("usb: exynos: add workaround for the USB device bindings
conflict"), but it disabled support for USB device binding for Exynos
EHCI/OHCI controllers.

This patchset tries to resolve this binding conflict by changing Exynos
EHCI/OHCI bindings: PHYs are moved from the sub-nodes to a standard array
under the 'phys' property. Such solution has been suggested by Måns
Rullgård in the following thread: https://lkml.org/lkml/2019/5/13/228

To keep everything working during the transitional time, the changes has
been split into 2 steps. First the changes to Exynos OHCI and EHCI
drivers have to be merged, then in the next kernel release the DTS can be
finally updated to the new bindings.

This patchset has been tested on various Exynos boards with different
USB host controller configurations (Odroids family: X2, U3, XU3).

Best regards
Marek Szyprowski
Samsung R&D Institute Poland


Changelog:
v2:
- rearranged the code as suggested by Måns Rullgård, kept support for
legacy bindings the Exynos EHCI/OHCI drivers

v1: https://patchwork.kernel.org/cover/10953495/
- initial version


Patch summary:

Marek Szyprowski (3):
dt-bindings: switch Exynos EHCI/OHCI bindings to use array of generic
PHYs
usb: exynos: add support for getting PHYs from the standard dt array
ARM: dts: exynos: Use standard arrays of generic PHYs for EHCI/OHCI
devices

.../devicetree/bindings/usb/exynos-usb.txt | 41 +++++++------------
arch/arm/boot/dts/exynos4.dtsi | 28 ++-----------
.../boot/dts/exynos4210-universal_c210.dts | 8 +---
arch/arm/boot/dts/exynos4412-itop-elite.dts | 9 +---
arch/arm/boot/dts/exynos4412-odroidu3.dts | 8 +---
arch/arm/boot/dts/exynos4412-odroidx.dts | 5 +--
arch/arm/boot/dts/exynos4412-origen.dts | 9 +---
arch/arm/boot/dts/exynos5250.dtsi | 16 ++------
arch/arm/boot/dts/exynos54xx.dtsi | 18 ++------
drivers/usb/host/ehci-exynos.c | 23 +++++++++--
drivers/usb/host/ohci-exynos.c | 23 +++++++++--
11 files changed, 74 insertions(+), 114 deletions(-)

--
2.17.1

\
 
 \ /
  Last update: 2019-07-26 10:16    [W:0.057 / U:24.132 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site