xref: /freebsd/sys/contrib/device-tree/Bindings/media/amlogic,meson-gx-ao-cec.yaml (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*c66ec88fSEmmanuel Vadot# Copyright 2019 BayLibre, SAS
3*c66ec88fSEmmanuel Vadot%YAML 1.2
4*c66ec88fSEmmanuel Vadot---
5*c66ec88fSEmmanuel Vadot$id: "http://devicetree.org/schemas/media/amlogic,meson-gx-ao-cec.yaml#"
6*c66ec88fSEmmanuel Vadot$schema: "http://devicetree.org/meta-schemas/core.yaml#"
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel Vadottitle: Amlogic Meson AO-CEC Controller
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel Vadotmaintainers:
11*c66ec88fSEmmanuel Vadot  - Neil Armstrong <narmstrong@baylibre.com>
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel Vadotdescription: |
14*c66ec88fSEmmanuel Vadot  The Amlogic Meson AO-CEC module is present is Amlogic SoCs and its purpose is
15*c66ec88fSEmmanuel Vadot  to handle communication between HDMI connected devices over the CEC bus.
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel Vadotproperties:
18*c66ec88fSEmmanuel Vadot  compatible:
19*c66ec88fSEmmanuel Vadot    enum:
20*c66ec88fSEmmanuel Vadot      - amlogic,meson-gx-ao-cec # GXBB, GXL, GXM, G12A and SM1 AO_CEC_A module
21*c66ec88fSEmmanuel Vadot      - amlogic,meson-g12a-ao-cec # G12A AO_CEC_B module
22*c66ec88fSEmmanuel Vadot      - amlogic,meson-sm1-ao-cec # SM1 AO_CEC_B module
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadot  reg:
25*c66ec88fSEmmanuel Vadot    maxItems: 1
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel Vadot  clocks:
28*c66ec88fSEmmanuel Vadot    maxItems: 1
29*c66ec88fSEmmanuel Vadot
30*c66ec88fSEmmanuel Vadot  clock-names:
31*c66ec88fSEmmanuel Vadot    maxItems: 1
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel Vadot  interrupts:
34*c66ec88fSEmmanuel Vadot    maxItems: 1
35*c66ec88fSEmmanuel Vadot
36*c66ec88fSEmmanuel Vadot  hdmi-phandle:
37*c66ec88fSEmmanuel Vadot    description: phandle to the HDMI controller
38*c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
39*c66ec88fSEmmanuel Vadot
40*c66ec88fSEmmanuel VadotallOf:
41*c66ec88fSEmmanuel Vadot  - if:
42*c66ec88fSEmmanuel Vadot      properties:
43*c66ec88fSEmmanuel Vadot        compatible:
44*c66ec88fSEmmanuel Vadot          contains:
45*c66ec88fSEmmanuel Vadot            enum:
46*c66ec88fSEmmanuel Vadot              - amlogic,meson-gx-ao-cec
47*c66ec88fSEmmanuel Vadot
48*c66ec88fSEmmanuel Vadot    then:
49*c66ec88fSEmmanuel Vadot      properties:
50*c66ec88fSEmmanuel Vadot        clocks:
51*c66ec88fSEmmanuel Vadot          items:
52*c66ec88fSEmmanuel Vadot            - description: AO-CEC clock
53*c66ec88fSEmmanuel Vadot
54*c66ec88fSEmmanuel Vadot        clock-names:
55*c66ec88fSEmmanuel Vadot          items:
56*c66ec88fSEmmanuel Vadot            - const: core
57*c66ec88fSEmmanuel Vadot
58*c66ec88fSEmmanuel Vadot  - if:
59*c66ec88fSEmmanuel Vadot      properties:
60*c66ec88fSEmmanuel Vadot        compatible:
61*c66ec88fSEmmanuel Vadot          contains:
62*c66ec88fSEmmanuel Vadot            enum:
63*c66ec88fSEmmanuel Vadot              - amlogic,meson-g12a-ao-cec
64*c66ec88fSEmmanuel Vadot              - amlogic,meson-sm1-ao-cec
65*c66ec88fSEmmanuel Vadot
66*c66ec88fSEmmanuel Vadot    then:
67*c66ec88fSEmmanuel Vadot      properties:
68*c66ec88fSEmmanuel Vadot        clocks:
69*c66ec88fSEmmanuel Vadot          items:
70*c66ec88fSEmmanuel Vadot            - description: AO-CEC clock generator source
71*c66ec88fSEmmanuel Vadot
72*c66ec88fSEmmanuel Vadot        clock-names:
73*c66ec88fSEmmanuel Vadot          items:
74*c66ec88fSEmmanuel Vadot            - const: oscin
75*c66ec88fSEmmanuel Vadot
76*c66ec88fSEmmanuel Vadotrequired:
77*c66ec88fSEmmanuel Vadot  - compatible
78*c66ec88fSEmmanuel Vadot  - reg
79*c66ec88fSEmmanuel Vadot  - interrupts
80*c66ec88fSEmmanuel Vadot  - hdmi-phandle
81*c66ec88fSEmmanuel Vadot  - clocks
82*c66ec88fSEmmanuel Vadot  - clock-names
83*c66ec88fSEmmanuel Vadot
84*c66ec88fSEmmanuel VadotadditionalProperties: false
85*c66ec88fSEmmanuel Vadot
86*c66ec88fSEmmanuel Vadotexamples:
87*c66ec88fSEmmanuel Vadot  - |
88*c66ec88fSEmmanuel Vadot    cec_AO: cec@100 {
89*c66ec88fSEmmanuel Vadot        compatible = "amlogic,meson-gx-ao-cec";
90*c66ec88fSEmmanuel Vadot        reg = <0x00100 0x14>;
91*c66ec88fSEmmanuel Vadot        interrupts = <199>;
92*c66ec88fSEmmanuel Vadot        clocks = <&clkc_cec>;
93*c66ec88fSEmmanuel Vadot        clock-names = "core";
94*c66ec88fSEmmanuel Vadot        hdmi-phandle = <&hdmi_tx>;
95*c66ec88fSEmmanuel Vadot    };
96