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