162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/media/renesas,imr.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Renesas R-Car Image Renderer (Distortion Correction Engine)
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Sergei Shtylyov <sergei.shtylyov@gmail.com>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_cidescription: |
1362306a36Sopenharmony_ci  The image renderer, or the distortion correction engine, is a drawing
1462306a36Sopenharmony_ci  processor with a simple instruction system capable of referencing video
1562306a36Sopenharmony_ci  capture data or data in an external memory as 2D texture data and performing
1662306a36Sopenharmony_ci  texture mapping and drawing with respect to any shape that is split into
1762306a36Sopenharmony_ci  triangular objects.
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci  The image renderer light extended 4 (IMR-LX4) is found in R-Car Gen3 SoCs.
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ciproperties:
2262306a36Sopenharmony_ci  compatible:
2362306a36Sopenharmony_ci    items:
2462306a36Sopenharmony_ci      - enum:
2562306a36Sopenharmony_ci          - renesas,r8a7795-imr-lx4 # R-Car H3
2662306a36Sopenharmony_ci          - renesas,r8a7796-imr-lx4 # R-Car M3-W
2762306a36Sopenharmony_ci      - const: renesas,imr-lx4      # R-Car Gen3
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci  reg:
3062306a36Sopenharmony_ci    maxItems: 1
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci  interrupts:
3362306a36Sopenharmony_ci    maxItems: 1
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci  clocks:
3662306a36Sopenharmony_ci    maxItems: 1
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci  power-domains:
3962306a36Sopenharmony_ci    maxItems: 1
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci  resets:
4262306a36Sopenharmony_ci    maxItems: 1
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_cirequired:
4562306a36Sopenharmony_ci  - compatible
4662306a36Sopenharmony_ci  - reg
4762306a36Sopenharmony_ci  - interrupts
4862306a36Sopenharmony_ci  - clocks
4962306a36Sopenharmony_ci  - power-domains
5062306a36Sopenharmony_ci  - resets
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ciadditionalProperties: false
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ciexamples:
5562306a36Sopenharmony_ci  - |
5662306a36Sopenharmony_ci    #include <dt-bindings/clock/r8a7795-cpg-mssr.h>
5762306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
5862306a36Sopenharmony_ci    #include <dt-bindings/power/r8a7795-sysc.h>
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ci    imr-lx4@fe860000 {
6162306a36Sopenharmony_ci            compatible = "renesas,r8a7795-imr-lx4", "renesas,imr-lx4";
6262306a36Sopenharmony_ci            reg = <0xfe860000 0x2000>;
6362306a36Sopenharmony_ci            interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
6462306a36Sopenharmony_ci            clocks = <&cpg CPG_MOD 823>;
6562306a36Sopenharmony_ci            power-domains = <&sysc R8A7795_PD_A3VC>;
6662306a36Sopenharmony_ci            resets = <&cpg 823>;
6762306a36Sopenharmony_ci    };
68