xref: /freebsd/sys/contrib/device-tree/Bindings/display/tegra/nvidia,tegra20-hdmi.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2b97ee269SEmmanuel Vadot%YAML 1.2
3b97ee269SEmmanuel Vadot---
4b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/display/tegra/nvidia,tegra20-hdmi.yaml#
5b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6b97ee269SEmmanuel Vadot
7b97ee269SEmmanuel Vadottitle: NVIDIA Tegra HDMI Output Encoder
8b97ee269SEmmanuel Vadot
9b97ee269SEmmanuel Vadotmaintainers:
10b97ee269SEmmanuel Vadot  - Thierry Reding <thierry.reding@gmail.com>
11b97ee269SEmmanuel Vadot  - Jon Hunter <jonathanh@nvidia.com>
12b97ee269SEmmanuel Vadot
13b97ee269SEmmanuel Vadotproperties:
14b97ee269SEmmanuel Vadot  $nodename:
15b97ee269SEmmanuel Vadot    pattern: "^hdmi@[0-9a-f]+$"
16b97ee269SEmmanuel Vadot
17b97ee269SEmmanuel Vadot  compatible:
18b97ee269SEmmanuel Vadot    oneOf:
19b97ee269SEmmanuel Vadot      - enum:
20b97ee269SEmmanuel Vadot          - nvidia,tegra20-hdmi
21b97ee269SEmmanuel Vadot          - nvidia,tegra30-hdmi
22b97ee269SEmmanuel Vadot          - nvidia,tegra114-hdmi
23b97ee269SEmmanuel Vadot          - nvidia,tegra124-hdmi
24b97ee269SEmmanuel Vadot
25b97ee269SEmmanuel Vadot      - items:
26b97ee269SEmmanuel Vadot          - const: nvidia,tegra132-hdmi
27b97ee269SEmmanuel Vadot          - const: nvidia,tegra124-hdmi
28b97ee269SEmmanuel Vadot
29b97ee269SEmmanuel Vadot  reg:
30b97ee269SEmmanuel Vadot    maxItems: 1
31b97ee269SEmmanuel Vadot
32b97ee269SEmmanuel Vadot  interrupts:
33b97ee269SEmmanuel Vadot    maxItems: 1
34b97ee269SEmmanuel Vadot
35b97ee269SEmmanuel Vadot  clocks:
36b97ee269SEmmanuel Vadot    items:
37b97ee269SEmmanuel Vadot      - description: module clock
38b97ee269SEmmanuel Vadot      - description: parent clock
39b97ee269SEmmanuel Vadot
40b97ee269SEmmanuel Vadot  clock-names:
41b97ee269SEmmanuel Vadot    items:
42b97ee269SEmmanuel Vadot      - const: hdmi
43b97ee269SEmmanuel Vadot      - const: parent
44b97ee269SEmmanuel Vadot
45b97ee269SEmmanuel Vadot  resets:
46b97ee269SEmmanuel Vadot    items:
47b97ee269SEmmanuel Vadot      - description: module reset
48b97ee269SEmmanuel Vadot
49b97ee269SEmmanuel Vadot  reset-names:
50b97ee269SEmmanuel Vadot    items:
51b97ee269SEmmanuel Vadot      - const: hdmi
52b97ee269SEmmanuel Vadot
53cb7aa33aSEmmanuel Vadot  operating-points-v2: true
54b97ee269SEmmanuel Vadot
55b97ee269SEmmanuel Vadot  power-domains:
56b97ee269SEmmanuel Vadot    items:
57b97ee269SEmmanuel Vadot      - description: phandle to the core power domain
58b97ee269SEmmanuel Vadot
59b97ee269SEmmanuel Vadot  hdmi-supply:
60b97ee269SEmmanuel Vadot    description: supply for the +5V HDMI connector pin
61b97ee269SEmmanuel Vadot
62b97ee269SEmmanuel Vadot  vdd-supply:
63b97ee269SEmmanuel Vadot    description: regulator for supply voltage
64b97ee269SEmmanuel Vadot
65b97ee269SEmmanuel Vadot  pll-supply:
66b97ee269SEmmanuel Vadot    description: regulator for PLL
67b97ee269SEmmanuel Vadot
68b97ee269SEmmanuel Vadot  nvidia,ddc-i2c-bus:
69b97ee269SEmmanuel Vadot    description: phandle of an I2C controller used for DDC EDID
70b97ee269SEmmanuel Vadot      probing
71*fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
72b97ee269SEmmanuel Vadot
73b97ee269SEmmanuel Vadot  nvidia,hpd-gpio:
74b97ee269SEmmanuel Vadot    description: specifies a GPIO used for hotplug detection
75b97ee269SEmmanuel Vadot    maxItems: 1
76b97ee269SEmmanuel Vadot
77b97ee269SEmmanuel Vadot  nvidia,edid:
78b97ee269SEmmanuel Vadot    description: supplies a binary EDID blob
79*fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint8-array
80b97ee269SEmmanuel Vadot
81b97ee269SEmmanuel Vadot  nvidia,panel:
82b97ee269SEmmanuel Vadot    description: phandle of a display panel
83*fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
84b97ee269SEmmanuel Vadot
85b97ee269SEmmanuel Vadot  "#sound-dai-cells":
86b97ee269SEmmanuel Vadot    const: 0
87b97ee269SEmmanuel Vadot
88b97ee269SEmmanuel VadotadditionalProperties: false
89b97ee269SEmmanuel Vadot
90b97ee269SEmmanuel Vadotrequired:
91b97ee269SEmmanuel Vadot  - compatible
92b97ee269SEmmanuel Vadot  - reg
93b97ee269SEmmanuel Vadot  - interrupts
94b97ee269SEmmanuel Vadot  - clocks
95b97ee269SEmmanuel Vadot  - clock-names
96b97ee269SEmmanuel Vadot  - resets
97b97ee269SEmmanuel Vadot  - reset-names
98b97ee269SEmmanuel Vadot  - pll-supply
99b97ee269SEmmanuel Vadot  - vdd-supply
100b97ee269SEmmanuel Vadot  - nvidia,ddc-i2c-bus
101b97ee269SEmmanuel Vadot  - nvidia,hpd-gpio
102b97ee269SEmmanuel Vadot
103b97ee269SEmmanuel Vadotexamples:
104b97ee269SEmmanuel Vadot  - |
105b97ee269SEmmanuel Vadot    #include <dt-bindings/clock/tegra124-car.h>
106b97ee269SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
107b97ee269SEmmanuel Vadot    #include <dt-bindings/gpio/tegra-gpio.h>
108b97ee269SEmmanuel Vadot
109b97ee269SEmmanuel Vadot    hdmi@54280000 {
110b97ee269SEmmanuel Vadot        compatible = "nvidia,tegra124-hdmi";
111b97ee269SEmmanuel Vadot        reg = <0x54280000 0x00040000>;
112b97ee269SEmmanuel Vadot        interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
113b97ee269SEmmanuel Vadot        clocks = <&tegra_car TEGRA124_CLK_HDMI>,
114b97ee269SEmmanuel Vadot                 <&tegra_car TEGRA124_CLK_PLL_D2_OUT0>;
115b97ee269SEmmanuel Vadot        clock-names = "hdmi", "parent";
116b97ee269SEmmanuel Vadot        resets = <&tegra_car 51>;
117b97ee269SEmmanuel Vadot        reset-names = "hdmi";
118b97ee269SEmmanuel Vadot
119b97ee269SEmmanuel Vadot        hdmi-supply = <&vdd_5v0_hdmi>;
120b97ee269SEmmanuel Vadot        pll-supply = <&vdd_hdmi_pll>;
121b97ee269SEmmanuel Vadot        vdd-supply = <&vdd_3v3_hdmi>;
122b97ee269SEmmanuel Vadot
123b97ee269SEmmanuel Vadot        nvidia,ddc-i2c-bus = <&hdmi_ddc>;
124b97ee269SEmmanuel Vadot        nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
125b97ee269SEmmanuel Vadot    };
126