# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/allwinner,sun4i-a10-ir.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Allwinner A10 Infrared Controller Device Tree Bindings

maintainers:
  - Chen-Yu Tsai <wens@csie.org>
  - Maxime Ripard <mripard@kernel.org>

allOf:
  - $ref: "rc.yaml#"

properties:
  compatible:
    oneOf:
      - const: allwinner,sun4i-a10-ir
      - const: allwinner,sun5i-a13-ir
      - const: allwinner,sun6i-a31-ir
      - items:
          - const: allwinner,sun8i-a83t-ir
          - const: allwinner,sun6i-a31-ir
      - items:
          - const: allwinner,sun8i-r40-ir
          - const: allwinner,sun6i-a31-ir
      - items:
          - const: allwinner,sun50i-a64-ir
          - const: allwinner,sun6i-a31-ir
      - items:
          - const: allwinner,sun50i-h6-ir
          - const: allwinner,sun6i-a31-ir

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    items:
      - description: Bus Clock
      - description: Module Clock

  clock-names:
    items:
      - const: apb
      - const: ir

  resets:
    maxItems: 1

  clock-frequency:
    default: 8000000
    description:
      IR Receiver clock frequency, in Hertz.

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names

unevaluatedProperties: false

examples:
  - |
      ir0: ir@1c21800 {
          compatible = "allwinner,sun4i-a10-ir";
          clocks = <&apb0_gates 6>, <&ir0_clk>;
          clock-names = "apb", "ir";
          clock-frequency = <3000000>;
          resets = <&apb0_rst 1>;
          interrupts = <0 5 1>;
          reg = <0x01C21800 0x40>;
          linux,rc-map-name = "rc-rc6-mce";
      };

...
