xref: /linux/Documentation/devicetree/bindings/phy/qcom,usb-hs-phy.yaml (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1# SPDX-License-Identifier: GPL-2.0-only
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/phy/qcom,usb-hs-phy.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm's USB HS PHY
8
9maintainers:
10  - Bjorn Andersson <bjorn.andersson@linaro.org>
11
12if:
13  properties:
14    compatible:
15      contains:
16        enum:
17          - qcom,usb-hs-phy-apq8064
18          - qcom,usb-hs-phy-msm8660
19          - qcom,usb-hs-phy-msm8960
20then:
21  properties:
22    resets:
23      maxItems: 1
24
25    reset-names:
26      const: por
27
28else:
29  properties:
30    resets:
31      minItems: 2
32      maxItems: 2
33
34    reset-names:
35      items:
36        - const: phy
37        - const: por
38
39properties:
40  compatible:
41    items:
42      - enum:
43          - qcom,usb-hs-phy-apq8064
44          - qcom,usb-hs-phy-msm8226
45          - qcom,usb-hs-phy-msm8660
46          - qcom,usb-hs-phy-msm8916
47          - qcom,usb-hs-phy-msm8960
48          - qcom,usb-hs-phy-msm8974
49      - const: qcom,usb-hs-phy
50
51  clocks:
52    minItems: 2
53    maxItems: 2
54
55  clock-names:
56    maxItems: 2
57    contains:
58      items:
59        - const: ref
60        - const: sleep
61
62  resets: true
63
64  reset-names: true
65
66  v1p8-supply: true
67
68  v3p3-supply: true
69
70  extcon: true
71
72  "#phy-cells":
73    const: 0
74
75  qcom,init-seq:
76    $ref: /schemas/types.yaml#/definitions/uint8-matrix
77    description: >
78      Sequence of ULPI address and value pairs to
79      program into the ULPI_EXT_VENDOR_SPECIFIC area.
80      This is related to Device Mode Eye Diagram test.
81    maxItems: 32 # no hard limit
82    items:
83      items:
84        - description: >
85            the address is offset from the ULPI_EXT_VENDOR_SPECIFIC address
86        - description: value
87
88required:
89  - clocks
90  - clock-names
91  - resets
92  - reset-names
93  - "#phy-cells"
94
95additionalProperties: false
96
97examples:
98  - |
99    otg: usb-controller {
100      #reset-cells = <1>;
101
102      ulpi {
103        phy {
104          compatible = "qcom,usb-hs-phy-msm8974", "qcom,usb-hs-phy";
105          #phy-cells = <0>;
106          clocks = <&clk 0>, <&clk 258>;
107          clock-names = "ref", "sleep";
108          resets = <&gcc 10>, <&otg 0>;
109          reset-names = "phy", "por";
110          v3p3-supply = <&pm8941_l24>;
111          v1p8-supply = <&pm8941_l6>;
112          extcon = <&smbb>;
113          qcom,init-seq = /bits/ 8 <0x1 0x63>;
114        };
115      };
116    };
117