1# SPDX-License-Identifier: GPL-2.0-only
2# Copyright (C) 2016-2021 Microchip Technology, Inc.
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/media/atmel,isc.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Atmel Image Sensor Controller (ISC)
9
10maintainers:
11  - Eugen Hristev <eugen.hristev@microchip.com>
12
13description: |
14  The Image Sensor Controller (ISC) device provides the video input capabilities for the
15  Atmel/Microchip AT91 SAMA family of devices.
16
17  The ISC has a single parallel input that supports RAW Bayer, RGB or YUV video,
18  with both external synchronization and BT.656 synchronization for the latter.
19
20properties:
21  compatible:
22    const: atmel,sama5d2-isc
23
24  reg:
25    maxItems: 1
26
27  interrupts:
28    maxItems: 1
29
30  clocks:
31    minItems: 3
32    maxItems: 3
33
34  clock-names:
35    items:
36      - const: hclock
37      - const: iscck
38      - const: gck
39
40  '#clock-cells':
41    const: 0
42
43  clock-output-names:
44    const: isc-mck
45
46  port:
47    $ref: /schemas/graph.yaml#/$defs/port-base
48    additionalProperties: false
49    description:
50      Input port node, single endpoint describing the input pad.
51
52    properties:
53      endpoint:
54        $ref: video-interfaces.yaml#
55
56        properties:
57          remote-endpoint: true
58
59          bus-width:
60            enum: [8, 9, 10, 11, 12]
61            default: 12
62
63          hsync-active:
64            enum: [0, 1]
65            default: 1
66
67          vsync-active:
68            enum: [0, 1]
69            default: 1
70
71          pclk-sample:
72            enum: [0, 1]
73            default: 1
74
75        required:
76          - remote-endpoint
77
78        additionalProperties: false
79
80required:
81  - compatible
82  - reg
83  - clocks
84  - clock-names
85  - '#clock-cells'
86  - clock-output-names
87  - port
88
89additionalProperties: false
90
91examples:
92  - |
93    #include <dt-bindings/interrupt-controller/irq.h>
94
95    isc: isc@f0008000 {
96        compatible = "atmel,sama5d2-isc";
97        reg = <0xf0008000 0x4000>;
98        interrupts = <46 IRQ_TYPE_LEVEL_HIGH 5>;
99        clocks = <&isc_clk>, <&iscck>, <&isc_gclk>;
100        clock-names = "hclock", "iscck", "gck";
101        #clock-cells = <0>;
102        clock-output-names = "isc-mck";
103
104        port {
105                isc_0: endpoint {
106                       remote-endpoint = <&ov7740_0>;
107                       hsync-active = <1>;
108                       vsync-active = <0>;
109                       pclk-sample = <1>;
110                       bus-width = <8>;
111                };
112        };
113    };
114