Commit 58361eaa authored by Jacopo Mondi's avatar Jacopo Mondi Committed by Rob Herring
Browse files

dt-bindings: media: renesas,ceu: Convert to yaml



Convert the Renesas CEU bindings description to yaml schema and remove
the existing textual bindings document.

Signed-off-by: default avatarJacopo Mondi <jacopo+renesas@jmondi.org>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent 606f53b0
Loading
Loading
Loading
Loading
+0 −86
Original line number Diff line number Diff line
Renesas Capture Engine Unit (CEU)
----------------------------------------------

The Capture Engine Unit is the image capture interface found in the Renesas
SH Mobile, R-Mobile and RZ SoCs.

The interface supports a single parallel input with data bus width of 8 or 16
bits.

Required properties:
- compatible: Shall be one of the following values:
	"renesas,r7s72100-ceu" for CEU units found in RZ/A1H and RZ/A1M SoCs
	"renesas,r8a7740-ceu" for CEU units found in R-Mobile A1 R8A7740 SoCs
- reg: Registers address base and size.
- interrupts: The interrupt specifier.

The CEU supports a single parallel input and should contain a single 'port'
subnode with a single 'endpoint'. Connection to input devices are modeled
according to the video interfaces OF bindings specified in:
[1] Documentation/devicetree/bindings/media/video-interfaces.txt

Optional endpoint properties applicable to parallel input bus described in
the above mentioned "video-interfaces.txt" file are supported.

- hsync-active: See [1] for description. If property is not present,
  default is active high.
- vsync-active: See [1] for description. If property is not present,
  default is active high.
- bus-width: See [1] for description. Accepted values are '8' and '16'.
  If property is not present, default is '8'.
- field-even-active: See [1] for description. If property is not present,
  an even field is identified by a logic 0 (active-low signal).

Example:

The example describes the connection between the Capture Engine Unit and an
OV7670 image sensor connected to i2c1 interface.

ceu: ceu@e8210000 {
	reg = <0xe8210000 0x209c>;
	compatible = "renesas,r7s72100-ceu";
	interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;

	pinctrl-names = "default";
	pinctrl-0 = <&vio_pins>;

	status = "okay";

	port {
		ceu_in: endpoint {
			remote-endpoint = <&ov7670_out>;

			hsync-active = <1>;
			vsync-active = <0>;
		};
	};
};

i2c1: i2c@fcfee400 {
	pinctrl-names = "default";
	pinctrl-0 = <&i2c1_pins>;

	status = "okay";

	clock-frequency = <100000>;

	ov7670: camera@21 {
		compatible = "ovti,ov7670";
		reg = <0x21>;

		pinctrl-names = "default";
		pinctrl-0 = <&vio_pins>;

		reset-gpios = <&port3 11 GPIO_ACTIVE_LOW>;
		powerdown-gpios = <&port3 12 GPIO_ACTIVE_HIGH>;

		port {
			ov7670_out: endpoint {
				remote-endpoint = <&ceu_in>;

				hsync-active = <1>;
				vsync-active = <0>;
			};
		};
	};
};
+78 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/renesas,ceu.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Renesas Capture Engine Unit (CEU) Bindings

maintainers:
  - Jacopo Mondi <jacopo+renesas@jmondi.org>
  - linux-renesas-soc@vger.kernel.org

description: |+
  The Capture Engine Unit is the image capture interface found in the Renesas SH
  Mobile, R-Mobile and RZ SoCs. The interface supports a single parallel input
  with data bus width of 8 or 16 bits.

properties:
  compatible:
    enum:
      - renesas,r7s72100-ceu
      - renesas,r8a7740-ceu

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  port:
    type: object
    additionalProperties: false

    properties:
       endpoint:
         type: object
         additionalProperties: false

         # Properties described in
         # Documentation/devicetree/bindings/media/video-interfaces.txt
         properties:
           remote-endpoint: true
           hsync-active: true
           vsync-active: true
           field-even-active: false
           bus-width:
             enum: [8, 16]
             default: 8

         required:
           - remote-endpoint

    required:
      - endpoint

required:
  - compatible
  - reg
  - interrupts
  - port

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    ceu: ceu@e8210000 {
        reg = <0xe8210000 0x209c>;
        compatible = "renesas,r7s72100-ceu";
        interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;

        port {
            ceu_in: endpoint {
                remote-endpoint = <&ov7670_out>;
                hsync-active = <1>;
                vsync-active = <0>;
            };
        };
    };
+1 −1
Original line number Diff line number Diff line
@@ -10277,7 +10277,7 @@ L: linux-media@vger.kernel.org
L:	linux-renesas-soc@vger.kernel.org
T:	git git://linuxtv.org/media_tree.git
S:	Supported
F:	Documentation/devicetree/bindings/media/renesas,ceu.txt
F:	Documentation/devicetree/bindings/media/renesas,ceu.yaml
F:	drivers/media/platform/renesas-ceu.c
F:	include/media/drv-intf/renesas-ceu.h