xref: /freebsd/sys/contrib/device-tree/Bindings/media/atmel,isc.yaml (revision 8bab661a3316d8bd9b9fbd11a3b4371b91507bd2)
15956d97fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only
25956d97fSEmmanuel Vadot# Copyright (C) 2016-2021 Microchip Technology, Inc.
35956d97fSEmmanuel Vadot%YAML 1.2
45956d97fSEmmanuel Vadot---
55956d97fSEmmanuel Vadot$id: http://devicetree.org/schemas/media/atmel,isc.yaml#
65956d97fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
75956d97fSEmmanuel Vadot
85956d97fSEmmanuel Vadottitle: Atmel Image Sensor Controller (ISC)
95956d97fSEmmanuel Vadot
105956d97fSEmmanuel Vadotmaintainers:
115956d97fSEmmanuel Vadot  - Eugen Hristev <eugen.hristev@microchip.com>
125956d97fSEmmanuel Vadot
135956d97fSEmmanuel Vadotdescription: |
145956d97fSEmmanuel Vadot  The Image Sensor Controller (ISC) device provides the video input capabilities for the
155956d97fSEmmanuel Vadot  Atmel/Microchip AT91 SAMA family of devices.
165956d97fSEmmanuel Vadot
175956d97fSEmmanuel Vadot  The ISC has a single parallel input that supports RAW Bayer, RGB or YUV video,
185956d97fSEmmanuel Vadot  with both external synchronization and BT.656 synchronization for the latter.
195956d97fSEmmanuel Vadot
205956d97fSEmmanuel Vadotproperties:
215956d97fSEmmanuel Vadot  compatible:
225956d97fSEmmanuel Vadot    const: atmel,sama5d2-isc
235956d97fSEmmanuel Vadot
245956d97fSEmmanuel Vadot  reg:
255956d97fSEmmanuel Vadot    maxItems: 1
265956d97fSEmmanuel Vadot
275956d97fSEmmanuel Vadot  interrupts:
285956d97fSEmmanuel Vadot    maxItems: 1
295956d97fSEmmanuel Vadot
305956d97fSEmmanuel Vadot  clocks:
315956d97fSEmmanuel Vadot    minItems: 3
325956d97fSEmmanuel Vadot    maxItems: 3
335956d97fSEmmanuel Vadot
345956d97fSEmmanuel Vadot  clock-names:
355956d97fSEmmanuel Vadot    items:
365956d97fSEmmanuel Vadot      - const: hclock
375956d97fSEmmanuel Vadot      - const: iscck
385956d97fSEmmanuel Vadot      - const: gck
395956d97fSEmmanuel Vadot
405956d97fSEmmanuel Vadot  '#clock-cells':
415956d97fSEmmanuel Vadot    const: 0
425956d97fSEmmanuel Vadot
435956d97fSEmmanuel Vadot  clock-output-names:
445956d97fSEmmanuel Vadot    const: isc-mck
455956d97fSEmmanuel Vadot
465956d97fSEmmanuel Vadot  port:
47354d7675SEmmanuel Vadot    $ref: /schemas/graph.yaml#/$defs/port-base
48*8bab661aSEmmanuel Vadot    additionalProperties: false
495956d97fSEmmanuel Vadot    description:
505956d97fSEmmanuel Vadot      Input port node, single endpoint describing the input pad.
515956d97fSEmmanuel Vadot
525956d97fSEmmanuel Vadot    properties:
535956d97fSEmmanuel Vadot      endpoint:
545956d97fSEmmanuel Vadot        $ref: video-interfaces.yaml#
555956d97fSEmmanuel Vadot
565956d97fSEmmanuel Vadot        properties:
575956d97fSEmmanuel Vadot          remote-endpoint: true
585956d97fSEmmanuel Vadot
595956d97fSEmmanuel Vadot          bus-width:
605956d97fSEmmanuel Vadot            enum: [8, 9, 10, 11, 12]
615956d97fSEmmanuel Vadot            default: 12
625956d97fSEmmanuel Vadot
635956d97fSEmmanuel Vadot          hsync-active:
645956d97fSEmmanuel Vadot            enum: [0, 1]
655956d97fSEmmanuel Vadot            default: 1
665956d97fSEmmanuel Vadot
675956d97fSEmmanuel Vadot          vsync-active:
685956d97fSEmmanuel Vadot            enum: [0, 1]
695956d97fSEmmanuel Vadot            default: 1
705956d97fSEmmanuel Vadot
715956d97fSEmmanuel Vadot          pclk-sample:
725956d97fSEmmanuel Vadot            enum: [0, 1]
735956d97fSEmmanuel Vadot            default: 1
745956d97fSEmmanuel Vadot
755956d97fSEmmanuel Vadot        required:
765956d97fSEmmanuel Vadot          - remote-endpoint
775956d97fSEmmanuel Vadot
785956d97fSEmmanuel Vadot        additionalProperties: false
795956d97fSEmmanuel Vadot
805956d97fSEmmanuel Vadotrequired:
815956d97fSEmmanuel Vadot  - compatible
825956d97fSEmmanuel Vadot  - reg
835956d97fSEmmanuel Vadot  - clocks
845956d97fSEmmanuel Vadot  - clock-names
855956d97fSEmmanuel Vadot  - '#clock-cells'
865956d97fSEmmanuel Vadot  - clock-output-names
875956d97fSEmmanuel Vadot  - port
885956d97fSEmmanuel Vadot
895956d97fSEmmanuel VadotadditionalProperties: false
905956d97fSEmmanuel Vadot
915956d97fSEmmanuel Vadotexamples:
925956d97fSEmmanuel Vadot  - |
935956d97fSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
945956d97fSEmmanuel Vadot
955956d97fSEmmanuel Vadot    isc: isc@f0008000 {
965956d97fSEmmanuel Vadot        compatible = "atmel,sama5d2-isc";
975956d97fSEmmanuel Vadot        reg = <0xf0008000 0x4000>;
985956d97fSEmmanuel Vadot        interrupts = <46 IRQ_TYPE_LEVEL_HIGH 5>;
995956d97fSEmmanuel Vadot        clocks = <&isc_clk>, <&iscck>, <&isc_gclk>;
1005956d97fSEmmanuel Vadot        clock-names = "hclock", "iscck", "gck";
1015956d97fSEmmanuel Vadot        #clock-cells = <0>;
1025956d97fSEmmanuel Vadot        clock-output-names = "isc-mck";
1035956d97fSEmmanuel Vadot
1045956d97fSEmmanuel Vadot        port {
1055956d97fSEmmanuel Vadot                isc_0: endpoint {
1065956d97fSEmmanuel Vadot                       remote-endpoint = <&ov7740_0>;
1075956d97fSEmmanuel Vadot                       hsync-active = <1>;
1085956d97fSEmmanuel Vadot                       vsync-active = <0>;
1095956d97fSEmmanuel Vadot                       pclk-sample = <1>;
1105956d97fSEmmanuel Vadot                       bus-width = <8>;
1115956d97fSEmmanuel Vadot                };
1125956d97fSEmmanuel Vadot        };
1135956d97fSEmmanuel Vadot    };
114