Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: usb: samsung,exynos-usb2: convert to dtschema

Convert the Samsung Exynos SoC USB 2.0 EHCI and OHCI Controller bindings
to DT schema format.

Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20220302190938.6195-3-krzysztof.kozlowski@canonical.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Krzysztof Kozlowski and committed by
Greg Kroah-Hartman
4bf2283c 949ea75b

+117 -66
-66
Documentation/devicetree/bindings/usb/exynos-usb.txt
··· 1 - Samsung Exynos SoC USB controller 2 - 3 - The USB devices interface with USB controllers on Exynos SOCs. 4 - The device node has following properties. 5 - 6 - EHCI 7 - Required properties: 8 - - compatible: should be "samsung,exynos4210-ehci" for USB 2.0 9 - EHCI controller in host mode. 10 - - reg: physical base address of the controller and length of memory mapped 11 - region. 12 - - interrupts: interrupt number to the cpu. 13 - - clocks: from common clock binding: handle to usb clock. 14 - - clock-names: from common clock binding: Shall be "usbhost". 15 - - phys: from the *Generic PHY* bindings; array specifying phy(s) used 16 - by the root port. 17 - - phy-names: from the *Generic PHY* bindings; array of the names for 18 - each phy for the root ports, must be a subset of the following: 19 - "host", "hsic0", "hsic1". 20 - 21 - Optional properties: 22 - - samsung,vbus-gpio: if present, specifies the GPIO that 23 - needs to be pulled up for the bus to be powered. 24 - 25 - Example: 26 - 27 - usb@12110000 { 28 - compatible = "samsung,exynos4210-ehci"; 29 - reg = <0x12110000 0x100>; 30 - interrupts = <0 71 0>; 31 - samsung,vbus-gpio = <&gpx2 6 1 3 3>; 32 - 33 - clocks = <&clock 285>; 34 - clock-names = "usbhost"; 35 - 36 - phys = <&usb2phy 1>; 37 - phy-names = "host"; 38 - }; 39 - 40 - OHCI 41 - Required properties: 42 - - compatible: should be "samsung,exynos4210-ohci" for USB 2.0 43 - OHCI companion controller in host mode. 44 - - reg: physical base address of the controller and length of memory mapped 45 - region. 46 - - interrupts: interrupt number to the cpu. 47 - - clocks: from common clock binding: handle to usb clock. 48 - - clock-names: from common clock binding: Shall be "usbhost". 49 - - phys: from the *Generic PHY* bindings; array specifying phy(s) used 50 - by the root port. 51 - - phy-names: from the *Generic PHY* bindings; array of the names for 52 - each phy for the root ports, must be a subset of the following: 53 - "host", "hsic0", "hsic1". 54 - 55 - Example: 56 - usb@12120000 { 57 - compatible = "samsung,exynos4210-ohci"; 58 - reg = <0x12120000 0x100>; 59 - interrupts = <0 71 0>; 60 - 61 - clocks = <&clock 285>; 62 - clock-names = "usbhost"; 63 - 64 - phys = <&usb2phy 1>; 65 - phy-names = "host"; 66 - };
+117
Documentation/devicetree/bindings/usb/samsung,exynos-usb2.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/usb/samsung,exynos-usb2.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Samsung Exynos SoC USB 2.0 EHCI/OHCI Controller 8 + 9 + maintainers: 10 + - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> 11 + 12 + properties: 13 + compatible: 14 + enum: 15 + - samsung,exynos4210-ehci 16 + - samsung,exynos4210-ohci 17 + 18 + '#address-cells': 19 + const: 1 20 + 21 + clocks: 22 + maxItems: 1 23 + 24 + clock-names: 25 + items: 26 + - const: usbhost 27 + 28 + interrupts: 29 + maxItems: 1 30 + 31 + phys: 32 + minItems: 1 33 + maxItems: 3 34 + 35 + phy-names: 36 + items: 37 + enum: [host, hsic0, hsic1] 38 + minItems: 1 39 + maxItems: 3 40 + 41 + reg: 42 + maxItems: 1 43 + 44 + samsung,vbus-gpio: 45 + description: 46 + Only for controller in EHCI mode, if present, specifies the GPIO that 47 + needs to be pulled up for the bus to be powered. 48 + 49 + '#size-cells': 50 + const: 0 51 + 52 + patternProperties: 53 + "^.*@[0-9a-f]{1,2}$": 54 + description: The hard wired USB devices 55 + type: object 56 + $ref: /usb/usb-device.yaml 57 + 58 + required: 59 + - compatible 60 + - clocks 61 + - clock-names 62 + - interrupts 63 + - phys 64 + - phy-names 65 + 66 + allOf: 67 + - if: 68 + properties: 69 + compatible: 70 + contains: 71 + const: samsung,exynos4210-ohci 72 + then: 73 + properties: 74 + samsung,vbus-gpio: false 75 + 76 + additionalProperties: false 77 + 78 + examples: 79 + - | 80 + #include <dt-bindings/clock/exynos5420.h> 81 + #include <dt-bindings/interrupt-controller/arm-gic.h> 82 + 83 + usb@12110000 { 84 + compatible = "samsung,exynos4210-ehci"; 85 + reg = <0x12110000 0x100>; 86 + interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 87 + clocks = <&clock CLK_USBH20>; 88 + clock-names = "usbhost"; 89 + phys = <&usb2_phy 0>; 90 + phy-names = "host"; 91 + 92 + #address-cells = <1>; 93 + #size-cells = <0>; 94 + 95 + hub@1 { 96 + compatible = "usb0424,9514"; 97 + reg = <1>; 98 + #address-cells = <1>; 99 + #size-cells = <0>; 100 + 101 + usbether@1 { 102 + compatible = "usb0424,ec00"; 103 + reg = <1>; 104 + local-mac-address = [00 00 00 00 00 00]; 105 + }; 106 + }; 107 + }; 108 + 109 + usb@12120000 { 110 + compatible = "samsung,exynos4210-ohci"; 111 + reg = <0x12120000 0x100>; 112 + interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 113 + clocks = <&clock CLK_USBH20>; 114 + clock-names = "usbhost"; 115 + phys = <&usb2_phy 0>; 116 + phy-names = "host"; 117 + };