1 # SPDX-License-Identifier: GPL-2.0-only OR BSD 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/phy/samsung 4 $id: http://devicetree.org/schemas/phy/samsung,usb3-drd-phy.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Samsung Exynos SoC USB 3.0 DRD PHY USB 7 title: Samsung Exynos SoC USB 3.0 DRD PHY USB 2.0 PHY 8 8 9 maintainers: 9 maintainers: 10 - Krzysztof Kozlowski <krzk@kernel.org> 10 - Krzysztof Kozlowski <krzk@kernel.org> 11 - Marek Szyprowski <m.szyprowski@samsung.com> 11 - Marek Szyprowski <m.szyprowski@samsung.com> 12 - Sylwester Nawrocki <s.nawrocki@samsung.com> 12 - Sylwester Nawrocki <s.nawrocki@samsung.com> 13 13 14 description: | 14 description: | 15 For samsung,exynos5250-usbdrd-phy and samsun 15 For samsung,exynos5250-usbdrd-phy and samsung,exynos5420-usbdrd-phy 16 compatible PHYs, the second cell in the PHY 16 compatible PHYs, the second cell in the PHY specifier identifies the 17 PHY id, which is interpreted as follows:: 17 PHY id, which is interpreted as follows:: 18 0 - UTMI+ type phy, 18 0 - UTMI+ type phy, 19 1 - PIPE3 type phy. 19 1 - PIPE3 type phy. 20 20 21 For SoCs like Exynos5420 having multiple USB 21 For SoCs like Exynos5420 having multiple USB 3.0 DRD PHY controllers, 22 'usbdrd_phy' nodes should have numbered alia 22 'usbdrd_phy' nodes should have numbered alias in the aliases node, in the 23 form of usbdrdphyN, N = 0, 1... (depending o 23 form of usbdrdphyN, N = 0, 1... (depending on number of controllers). 24 24 25 properties: 25 properties: 26 compatible: 26 compatible: 27 enum: 27 enum: 28 - google,gs101-usb31drd-phy << 29 - samsung,exynos5250-usbdrd-phy 28 - samsung,exynos5250-usbdrd-phy 30 - samsung,exynos5420-usbdrd-phy 29 - samsung,exynos5420-usbdrd-phy 31 - samsung,exynos5433-usbdrd-phy 30 - samsung,exynos5433-usbdrd-phy 32 - samsung,exynos7-usbdrd-phy 31 - samsung,exynos7-usbdrd-phy 33 - samsung,exynos850-usbdrd-phy 32 - samsung,exynos850-usbdrd-phy 34 33 35 clocks: 34 clocks: 36 minItems: 2 35 minItems: 2 37 maxItems: 5 36 maxItems: 5 38 37 39 clock-names: 38 clock-names: 40 minItems: 2 39 minItems: 2 41 maxItems: 5 40 maxItems: 5 42 description: | 41 description: | 43 At least two clocks:: 42 At least two clocks:: 44 - Main PHY clock (same as USB DRD cont 43 - Main PHY clock (same as USB DRD controller i.e. DWC3 IP clock), used 45 for register access. 44 for register access. 46 - PHY reference clock (usually crystal 45 - PHY reference clock (usually crystal clock), used for PHY operations, 47 associated by phy name. It is used t 46 associated by phy name. It is used to determine bit values for clock 48 settings register. For Exynos5420 t 47 settings register. For Exynos5420 this is given as 'sclk_usbphy30' 49 in the CMU. 48 in the CMU. 50 49 51 "#phy-cells": 50 "#phy-cells": 52 const: 1 51 const: 1 53 52 54 port: 53 port: 55 $ref: /schemas/graph.yaml#/properties/port 54 $ref: /schemas/graph.yaml#/properties/port 56 description: 55 description: 57 Any connector to the data bus of this co 56 Any connector to the data bus of this controller should be modelled using 58 the OF graph bindings specified. 57 the OF graph bindings specified. 59 58 60 reg: 59 reg: 61 minItems: 1 !! 60 maxItems: 1 62 maxItems: 3 << 63 << 64 reg-names: << 65 minItems: 1 << 66 items: << 67 - const: phy << 68 - const: pcs << 69 - const: pma << 70 61 71 samsung,pmu-syscon: 62 samsung,pmu-syscon: 72 $ref: /schemas/types.yaml#/definitions/pha 63 $ref: /schemas/types.yaml#/definitions/phandle 73 description: 64 description: 74 Phandle to PMU system controller interfa 65 Phandle to PMU system controller interface. 75 66 76 vbus-supply: 67 vbus-supply: 77 description: 68 description: 78 VBUS power source. 69 VBUS power source. 79 70 80 vbus-boost-supply: 71 vbus-boost-supply: 81 description: 72 description: 82 VBUS Boost 5V power source. 73 VBUS Boost 5V power source. 83 74 84 pll-supply: << 85 description: Power supply for the USB PLL. << 86 dvdd-usb20-supply: << 87 description: DVDD power supply for the USB << 88 vddh-usb20-supply: << 89 description: VDDh power supply for the USB << 90 vdd33-usb20-supply: << 91 description: 3.3V power supply for the USB << 92 vdda-usbdp-supply: << 93 description: VDDa power supply for the USB << 94 vddh-usbdp-supply: << 95 description: VDDh power supply for the USB << 96 << 97 required: 75 required: 98 - compatible 76 - compatible 99 - clocks 77 - clocks 100 - clock-names 78 - clock-names 101 - "#phy-cells" 79 - "#phy-cells" 102 - reg 80 - reg 103 - samsung,pmu-syscon 81 - samsung,pmu-syscon 104 82 105 allOf: 83 allOf: 106 - if: 84 - if: 107 properties: 85 properties: 108 compatible: 86 compatible: 109 contains: 87 contains: 110 const: google,gs101-usb31drd-phy << 111 then: << 112 properties: << 113 clocks: << 114 items: << 115 - description: Gate of main PHY cl << 116 - description: Gate of PHY referen << 117 - description: Gate of control int << 118 - description: Gate of control int << 119 - description: Gate of SCL APB clo << 120 clock-names: << 121 items: << 122 - const: phy << 123 - const: ref << 124 - const: ctrl_aclk << 125 - const: ctrl_pclk << 126 - const: scl_pclk << 127 reg: << 128 minItems: 3 << 129 reg-names: << 130 minItems: 3 << 131 required: << 132 - reg-names << 133 - pll-supply << 134 - dvdd-usb20-supply << 135 - vddh-usb20-supply << 136 - vdd33-usb20-supply << 137 - vdda-usbdp-supply << 138 - vddh-usbdp-supply << 139 << 140 - if: << 141 properties: << 142 compatible: << 143 contains: << 144 enum: 88 enum: 145 - samsung,exynos5433-usbdrd-phy 89 - samsung,exynos5433-usbdrd-phy 146 - samsung,exynos7-usbdrd-phy 90 - samsung,exynos7-usbdrd-phy 147 then: 91 then: 148 properties: 92 properties: 149 clocks: 93 clocks: 150 minItems: 5 94 minItems: 5 151 maxItems: 5 95 maxItems: 5 152 clock-names: 96 clock-names: 153 items: 97 items: 154 - const: phy 98 - const: phy 155 - const: ref 99 - const: ref 156 - const: phy_utmi 100 - const: phy_utmi 157 - const: phy_pipe 101 - const: phy_pipe 158 - const: itp 102 - const: itp 159 reg: !! 103 else: 160 maxItems: 1 << 161 reg-names: << 162 maxItems: 1 << 163 << 164 - if: << 165 properties: << 166 compatible: << 167 contains: << 168 enum: << 169 - samsung,exynos5250-usbdrd-phy << 170 - samsung,exynos5420-usbdrd-phy << 171 - samsung,exynos850-usbdrd-phy << 172 then: << 173 properties: 104 properties: 174 clocks: 105 clocks: 175 minItems: 2 106 minItems: 2 176 maxItems: 2 107 maxItems: 2 177 clock-names: 108 clock-names: 178 items: 109 items: 179 - const: phy 110 - const: phy 180 - const: ref 111 - const: ref 181 reg: << 182 maxItems: 1 << 183 reg-names: << 184 maxItems: 1 << 185 112 186 additionalProperties: false 113 additionalProperties: false 187 114 188 examples: 115 examples: 189 - | 116 - | 190 #include <dt-bindings/clock/exynos5420.h> 117 #include <dt-bindings/clock/exynos5420.h> 191 118 192 phy@12100000 { 119 phy@12100000 { 193 compatible = "samsung,exynos5420-usbdr 120 compatible = "samsung,exynos5420-usbdrd-phy"; 194 reg = <0x12100000 0x100>; 121 reg = <0x12100000 0x100>; 195 #phy-cells = <1>; 122 #phy-cells = <1>; 196 clocks = <&clock CLK_USBD300>, <&clock 123 clocks = <&clock CLK_USBD300>, <&clock CLK_SCLK_USBPHY300>; 197 clock-names = "phy", "ref"; 124 clock-names = "phy", "ref"; 198 samsung,pmu-syscon = <&pmu_system_cont 125 samsung,pmu-syscon = <&pmu_system_controller>; 199 vbus-supply = <&usb300_vbus_reg>; 126 vbus-supply = <&usb300_vbus_reg>; 200 }; 127 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.