xref: /linux/Documentation/devicetree/bindings/media/ti,am437x-vpfe.yaml (revision f4cdf7ca9a1fdcca413157df19753f388a5a224e)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/media/ti,am437x-vpfe.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Texas Instruments AM437x CAMERA Video Processing Front End (VPFE)
8
9maintainers:
10  - Benoit Parrot <bparrot@ti.com>
11  - Bhargav Joshi <j.bhargav.u@gmail.com>
12
13description:
14  The Video Processing Front End (VPFE) is a key component for image capture
15  applications. The capture module provides the system interface and the
16  processing capability to connect RAW image-sensor modules and video decoders
17  to the AM437x device.
18
19properties:
20  compatible:
21    const: ti,am437x-vpfe
22
23  reg:
24    maxItems: 1
25
26  interrupts:
27    maxItems: 1
28
29  port:
30    $ref: /schemas/graph.yaml#/$defs/port-base
31    unevaluatedProperties: false
32    description:
33      A single parallel input port connecting to an external image sensor or
34      video decoder. The VPFE supports only one input port per instance.
35
36    properties:
37      endpoint:
38        $ref: video-interfaces.yaml#
39        unevaluatedProperties: false
40
41        properties:
42          ti,am437x-vpfe-interface:
43            $ref: /schemas/types.yaml#/definitions/uint32
44            enum: [0, 1, 2, 3, 4]
45            description:
46              Selects the VPFE input interface type can be one of following
47                0 - Raw Bayer        (VPFE_RAW_BAYER)
48                1 - BT.656 8-bit     (VPFE_BT656)
49                2 - BT.656 10-bit    (VPFE_BT656_10BIT)
50                3 - YCbCr 8-bit sync (VPFE_YCBCR_SYNC_8)
51                4 - YCbCr 16-bit sync (VPFE_YCBCR_SYNC_16)
52
53          bus-width:
54            minimum: 8
55            maximum: 16
56
57        required:
58          - remote-endpoint
59          - ti,am437x-vpfe-interface
60          - bus-width
61
62required:
63  - compatible
64  - reg
65  - interrupts
66  - port
67
68additionalProperties: false
69
70examples:
71  - |
72    #include <dt-bindings/interrupt-controller/arm-gic.h>
73    #include <dt-bindings/interrupt-controller/irq.h>
74
75    vpfe@48328000{
76        compatible = "ti,am437x-vpfe";
77        reg = <0x48328000 0x2000>;
78        interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
79
80        pinctrl-names = "default", "sleep";
81        pinctrl-0 = <&vpfe_pins_default>;
82        pinctrl-1 = <&vpfe_pins_sleep>;
83
84        port {
85            vpfe0_ep: endpoint {
86                remote-endpoint = <&ov2659_1>;
87                ti,am437x-vpfe-interface = <0>;
88                bus-width = <8>;
89                hsync-active = <0>;
90                vsync-active = <0>;
91            };
92        };
93    };
94