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

devicetree: bindings: phy: Document ipq806x dwc3 qcom phy

Document dwc3 qcom phy hs and ss phy bindings needed to correctly
inizialize and use usb on ipq806x SoC.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20200717131635.11076-2-ansuelsmth@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Ansuel Smith and committed by
Vinod Koul
dc171790 ef19b117

+128
+55
Documentation/devicetree/bindings/phy/qcom,ipq806x-usb-phy-hs.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/phy/qcom,ipq806x-usb-phy-hs.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Qualcomm ipq806x usb DWC3 HS PHY CONTROLLER 8 + 9 + maintainers: 10 + - Ansuel Smith <ansuelsmth@gmail.com> 11 + 12 + description: 13 + DWC3 PHY nodes are defined to describe on-chip Synopsis Physical layer 14 + controllers used in ipq806x. Each DWC3 PHY controller should have its 15 + own node. 16 + 17 + properties: 18 + compatible: 19 + const: qcom,ipq806x-usb-phy-hs 20 + 21 + "#phy-cells": 22 + const: 0 23 + 24 + reg: 25 + maxItems: 1 26 + 27 + clocks: 28 + minItems: 1 29 + maxItems: 2 30 + 31 + clock-names: 32 + minItems: 1 33 + maxItems: 2 34 + items: 35 + - const: ref 36 + - const: xo 37 + 38 + required: 39 + - compatible 40 + - "#phy-cells" 41 + - reg 42 + - clocks 43 + - clock-names 44 + 45 + examples: 46 + - | 47 + #include <dt-bindings/clock/qcom,gcc-ipq806x.h> 48 + 49 + hs_phy_0: phy@110f8800 { 50 + compatible = "qcom,ipq806x-usb-phy-hs"; 51 + reg = <0x110f8800 0x30>; 52 + clocks = <&gcc USB30_0_UTMI_CLK>; 53 + clock-names = "ref"; 54 + #phy-cells = <0>; 55 + };
+73
Documentation/devicetree/bindings/phy/qcom,ipq806x-usb-phy-ss.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/phy/qcom,ipq806x-usb-phy-ss.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Qualcomm ipq806x usb DWC3 SS PHY CONTROLLER 8 + 9 + maintainers: 10 + - Ansuel Smith <ansuelsmth@gmail.com> 11 + 12 + description: 13 + DWC3 PHY nodes are defined to describe on-chip Synopsis Physical layer 14 + controllers used in ipq806x. Each DWC3 PHY controller should have its 15 + own node. 16 + 17 + properties: 18 + compatible: 19 + const: qcom,ipq806x-usb-phy-ss 20 + 21 + "#phy-cells": 22 + const: 0 23 + 24 + reg: 25 + maxItems: 1 26 + 27 + clocks: 28 + minItems: 1 29 + maxItems: 2 30 + 31 + clock-names: 32 + minItems: 1 33 + maxItems: 2 34 + items: 35 + - const: ref 36 + - const: xo 37 + 38 + qcom,rx-eq: 39 + $ref: /schemas/types.yaml#/definitions/uint32 40 + description: Override value for rx_eq. 41 + default: 4 42 + maximum: 7 43 + 44 + qcom,tx-deamp-3_5db: 45 + $ref: /schemas/types.yaml#/definitions/uint32 46 + description: Override value for transmit preemphasis. 47 + default: 23 48 + maximum: 63 49 + 50 + qcom,mpll: 51 + $ref: /schemas/types.yaml#/definitions/uint32 52 + description: Override value for mpll. 53 + default: 0 54 + maximum: 7 55 + 56 + required: 57 + - compatible 58 + - "#phy-cells" 59 + - reg 60 + - clocks 61 + - clock-names 62 + 63 + examples: 64 + - | 65 + #include <dt-bindings/clock/qcom,gcc-ipq806x.h> 66 + 67 + ss_phy_0: phy@110f8830 { 68 + compatible = "qcom,ipq806x-usb-phy-ss"; 69 + reg = <0x110f8830 0x30>; 70 + clocks = <&gcc USB30_0_MASTER_CLK>; 71 + clock-names = "ref"; 72 + #phy-cells = <0>; 73 + };