GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / phy / qcom,hdmi-phy-other.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4
5 $id: http://devicetree.org/schemas/phy/qcom,hdmi-phy-other.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
7
8 title: Qualcomm Adreno/Snapdragon HDMI phy
9
10 maintainers:
11   - Rob Clark <robdclark@gmail.com>
12
13 properties:
14   compatible:
15     enum:
16       - qcom,hdmi-phy-8660
17       - qcom,hdmi-phy-8960
18       - qcom,hdmi-phy-8974
19       - qcom,hdmi-phy-8084
20
21   reg:
22     maxItems: 2
23
24   reg-names:
25     items:
26       - const: hdmi_phy
27       - const: hdmi_pll
28
29   clocks:
30     minItems: 1
31     maxItems: 2
32
33   clock-names:
34     minItems: 1
35     maxItems: 2
36
37   power-domains:
38     maxItems: 1
39
40   core-vdda-supply:
41     description: phandle to VDDA supply regulator
42
43   vddio-supply:
44     description: phandle to VDD I/O supply regulator
45
46   '#phy-cells':
47     const: 0
48
49 allOf:
50   - if:
51       properties:
52         compatible:
53           contains:
54             enum:
55               - qcom,hdmi-phy-8660
56               - qcom,hdmi-phy-8960
57     then:
58       properties:
59         clocks:
60           maxItems: 1
61         clock-names:
62           items:
63             - const: slave_iface
64         vddio-supply: false
65
66   - if:
67       properties:
68         compatible:
69           contains:
70             enum:
71               - qcom,hdmi-phy-8084
72               - qcom,hdmi-phy-8974
73     then:
74       properties:
75         clocks:
76           maxItems: 2
77         clock-names:
78           items:
79             - const: iface
80             - const: alt_iface
81
82 required:
83   - compatible
84   - clocks
85   - reg
86   - reg-names
87   - '#phy-cells'
88
89 additionalProperties: false
90
91 examples:
92   - |
93     hdmi_phy: phy@4a00400 {
94       compatible = "qcom,hdmi-phy-8960";
95       reg-names = "hdmi_phy",
96                   "hdmi_pll";
97       reg = <0x4a00400 0x60>,
98             <0x4a00500 0x100>;
99       #phy-cells = <0>;
100       power-domains = <&mmcc 1>;
101       clock-names = "slave_iface";
102       clocks = <&clk 21>;
103       core-vdda-supply = <&pm8921_hdmi_mvs>;
104     };