1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/media/renesas,ceu.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Renesas Capture Engine Unit (CEU) Bindings
8
9maintainers:
10  - Jacopo Mondi <jacopo+renesas@jmondi.org>
11  - linux-renesas-soc@vger.kernel.org
12
13description: |+
14  The Capture Engine Unit is the image capture interface found in the Renesas SH
15  Mobile, R-Mobile and RZ SoCs. The interface supports a single parallel input
16  with data bus width of 8 or 16 bits.
17
18properties:
19  compatible:
20    enum:
21      - renesas,r7s72100-ceu
22      - renesas,r8a7740-ceu
23
24  reg:
25    maxItems: 1
26
27  interrupts:
28    maxItems: 1
29
30  clocks:
31    maxItems: 1
32
33  power-domains:
34    maxItems: 1
35
36  port:
37    $ref: /schemas/graph.yaml#/$defs/port-base
38    unevaluatedProperties: false
39
40    properties:
41      endpoint:
42        $ref: video-interfaces.yaml#
43        unevaluatedProperties: false
44
45        properties:
46          hsync-active: true
47          vsync-active: true
48          field-even-active: false
49          bus-width:
50            enum: [8, 16]
51            default: 8
52
53required:
54  - compatible
55  - reg
56  - interrupts
57  - clocks
58  - power-domains
59  - port
60
61additionalProperties: false
62
63examples:
64  - |
65    #include <dt-bindings/interrupt-controller/arm-gic.h>
66    #include <dt-bindings/clock/r7s72100-clock.h>
67
68    ceu: ceu@e8210000 {
69        reg = <0xe8210000 0x209c>;
70        compatible = "renesas,r7s72100-ceu";
71        interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
72        clocks = <&mstp6_clks R7S72100_CLK_CEU>;
73        power-domains = <&cpg_clocks>;
74
75        port {
76            ceu_in: endpoint {
77                remote-endpoint = <&ov7670_out>;
78                hsync-active = <1>;
79                vsync-active = <0>;
80            };
81        };
82    };
83