158361eaaSJacopo Mondi# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
258361eaaSJacopo Mondi%YAML 1.2
358361eaaSJacopo Mondi---
458361eaaSJacopo Mondi$id: http://devicetree.org/schemas/media/renesas,ceu.yaml#
558361eaaSJacopo Mondi$schema: http://devicetree.org/meta-schemas/core.yaml#
658361eaaSJacopo Mondi
758361eaaSJacopo Mondititle: Renesas Capture Engine Unit (CEU) Bindings
858361eaaSJacopo Mondi
958361eaaSJacopo Mondimaintainers:
1058361eaaSJacopo Mondi  - Jacopo Mondi <jacopo+renesas@jmondi.org>
1158361eaaSJacopo Mondi  - linux-renesas-soc@vger.kernel.org
1258361eaaSJacopo Mondi
1358361eaaSJacopo Mondidescription: |+
1458361eaaSJacopo Mondi  The Capture Engine Unit is the image capture interface found in the Renesas SH
1558361eaaSJacopo Mondi  Mobile, R-Mobile and RZ SoCs. The interface supports a single parallel input
1658361eaaSJacopo Mondi  with data bus width of 8 or 16 bits.
1758361eaaSJacopo Mondi
1858361eaaSJacopo Mondiproperties:
1958361eaaSJacopo Mondi  compatible:
2058361eaaSJacopo Mondi    enum:
2158361eaaSJacopo Mondi      - renesas,r7s72100-ceu
2258361eaaSJacopo Mondi      - renesas,r8a7740-ceu
2358361eaaSJacopo Mondi
2458361eaaSJacopo Mondi  reg:
2558361eaaSJacopo Mondi    maxItems: 1
2658361eaaSJacopo Mondi
2758361eaaSJacopo Mondi  interrupts:
2858361eaaSJacopo Mondi    maxItems: 1
2958361eaaSJacopo Mondi
3058361eaaSJacopo Mondi  port:
3158361eaaSJacopo Mondi    type: object
3258361eaaSJacopo Mondi    additionalProperties: false
3358361eaaSJacopo Mondi
3458361eaaSJacopo Mondi    properties:
3558361eaaSJacopo Mondi       endpoint:
3658361eaaSJacopo Mondi         type: object
3758361eaaSJacopo Mondi         additionalProperties: false
3858361eaaSJacopo Mondi
3958361eaaSJacopo Mondi         # Properties described in
4058361eaaSJacopo Mondi         # Documentation/devicetree/bindings/media/video-interfaces.txt
4158361eaaSJacopo Mondi         properties:
4258361eaaSJacopo Mondi           remote-endpoint: true
4358361eaaSJacopo Mondi           hsync-active: true
4458361eaaSJacopo Mondi           vsync-active: true
4558361eaaSJacopo Mondi           field-even-active: false
4658361eaaSJacopo Mondi           bus-width:
4758361eaaSJacopo Mondi             enum: [8, 16]
4858361eaaSJacopo Mondi             default: 8
4958361eaaSJacopo Mondi
5058361eaaSJacopo Mondi         required:
5158361eaaSJacopo Mondi           - remote-endpoint
5258361eaaSJacopo Mondi
5358361eaaSJacopo Mondi    required:
5458361eaaSJacopo Mondi      - endpoint
5558361eaaSJacopo Mondi
5658361eaaSJacopo Mondirequired:
5758361eaaSJacopo Mondi  - compatible
5858361eaaSJacopo Mondi  - reg
5958361eaaSJacopo Mondi  - interrupts
6058361eaaSJacopo Mondi  - port
6158361eaaSJacopo Mondi
627f464532SRob HerringadditionalProperties: false
637f464532SRob Herring
6458361eaaSJacopo Mondiexamples:
6558361eaaSJacopo Mondi  - |
6658361eaaSJacopo Mondi    #include <dt-bindings/interrupt-controller/arm-gic.h>
6758361eaaSJacopo Mondi
6858361eaaSJacopo Mondi    ceu: ceu@e8210000 {
6958361eaaSJacopo Mondi        reg = <0xe8210000 0x209c>;
7058361eaaSJacopo Mondi        compatible = "renesas,r7s72100-ceu";
7158361eaaSJacopo Mondi        interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
7258361eaaSJacopo Mondi
7358361eaaSJacopo Mondi        port {
7458361eaaSJacopo Mondi            ceu_in: endpoint {
7558361eaaSJacopo Mondi                remote-endpoint = <&ov7670_out>;
7658361eaaSJacopo Mondi                hsync-active = <1>;
7758361eaaSJacopo Mondi                vsync-active = <0>;
7858361eaaSJacopo Mondi            };
7958361eaaSJacopo Mondi        };
8058361eaaSJacopo Mondi    };
81