0001 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
0002 # Copyright 2019 BayLibre, SAS
0003 %YAML 1.2
0004 ---
0005 $id: "http://devicetree.org/schemas/media/amlogic,meson-gx-ao-cec.yaml#"
0006 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
0007
0008 title: Amlogic Meson AO-CEC Controller
0009
0010 maintainers:
0011 - Neil Armstrong <neil.armstrong@linaro.org>
0012
0013 description: |
0014 The Amlogic Meson AO-CEC module is present is Amlogic SoCs and its purpose is
0015 to handle communication between HDMI connected devices over the CEC bus.
0016
0017 properties:
0018 compatible:
0019 enum:
0020 - amlogic,meson-gx-ao-cec # GXBB, GXL, GXM, G12A and SM1 AO_CEC_A module
0021 - amlogic,meson-g12a-ao-cec # G12A AO_CEC_B module
0022 - amlogic,meson-sm1-ao-cec # SM1 AO_CEC_B module
0023
0024 reg:
0025 maxItems: 1
0026
0027 clocks:
0028 maxItems: 1
0029
0030 clock-names:
0031 maxItems: 1
0032
0033 interrupts:
0034 maxItems: 1
0035
0036 hdmi-phandle:
0037 description: phandle to the HDMI controller
0038 $ref: /schemas/types.yaml#/definitions/phandle
0039
0040 allOf:
0041 - if:
0042 properties:
0043 compatible:
0044 contains:
0045 enum:
0046 - amlogic,meson-gx-ao-cec
0047
0048 then:
0049 properties:
0050 clocks:
0051 items:
0052 - description: AO-CEC clock
0053
0054 clock-names:
0055 items:
0056 - const: core
0057
0058 - if:
0059 properties:
0060 compatible:
0061 contains:
0062 enum:
0063 - amlogic,meson-g12a-ao-cec
0064 - amlogic,meson-sm1-ao-cec
0065
0066 then:
0067 properties:
0068 clocks:
0069 items:
0070 - description: AO-CEC clock generator source
0071
0072 clock-names:
0073 items:
0074 - const: oscin
0075
0076 required:
0077 - compatible
0078 - reg
0079 - interrupts
0080 - hdmi-phandle
0081 - clocks
0082 - clock-names
0083
0084 additionalProperties: false
0085
0086 examples:
0087 - |
0088 cec_AO: cec@100 {
0089 compatible = "amlogic,meson-gx-ao-cec";
0090 reg = <0x00100 0x14>;
0091 interrupts = <199>;
0092 clocks = <&clkc_cec>;
0093 clock-names = "core";
0094 hdmi-phandle = <&hdmi_tx>;
0095 };