Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 # Copyright (C) 2021 Microchip Technology, Inc.
0003 %YAML 1.2
0004 ---
0005 $id: http://devicetree.org/schemas/media/microchip,xisc.yaml#
0006 $schema: http://devicetree.org/meta-schemas/core.yaml#
0007 
0008 title: Microchip eXtended Image Sensor Controller (XISC)
0009 
0010 maintainers:
0011   - Eugen Hristev <eugen.hristev@microchip.com>
0012 
0013 description: |
0014   The eXtended Image Sensor Controller (XISC) device provides the video input capabilities for the
0015   Microchip AT91 SAM family of devices.
0016 
0017   The XISC has a single internal parallel input that supports RAW Bayer, RGB or YUV video.
0018   The source can be either a demuxer from a CSI2 type of bus, or a simple direct bridge to a
0019   parallel sensor.
0020 
0021   The XISC provides one clock output that is used to clock the demuxer/bridge.
0022 
0023 properties:
0024   compatible:
0025     const: microchip,sama7g5-isc
0026 
0027   reg:
0028     maxItems: 1
0029 
0030   interrupts:
0031     maxItems: 1
0032 
0033   clocks:
0034     maxItems: 1
0035 
0036   clock-names:
0037     items:
0038       - const: hclock
0039 
0040   '#clock-cells':
0041     const: 0
0042 
0043   clock-output-names:
0044     const: isc-mck
0045 
0046   microchip,mipi-mode:
0047     type: boolean
0048     description:
0049       As the XISC is usually connected to a demux/bridge, the XISC receives
0050       the same type of input, however, it should be aware of the type of
0051       signals received. The mipi-mode enables different internal handling
0052       of the data and clock lines.
0053 
0054   port:
0055     $ref: /schemas/graph.yaml#/$defs/port-base
0056     description:
0057       Input port node, single endpoint describing the input pad.
0058 
0059     properties:
0060       endpoint:
0061         $ref: video-interfaces.yaml#
0062 
0063         properties:
0064           bus-type:
0065             enum: [5, 6]
0066 
0067           remote-endpoint: true
0068 
0069           bus-width:
0070             enum: [8, 9, 10, 11, 12, 14]
0071             default: 12
0072 
0073           hsync-active:
0074             enum: [0, 1]
0075             default: 1
0076 
0077           vsync-active:
0078             enum: [0, 1]
0079             default: 1
0080 
0081           pclk-sample:
0082             enum: [0, 1]
0083             default: 1
0084 
0085         required:
0086           - remote-endpoint
0087           - bus-type
0088 
0089         additionalProperties: false
0090 
0091     additionalProperties: false
0092 
0093 required:
0094   - compatible
0095   - reg
0096   - clocks
0097   - clock-names
0098   - '#clock-cells'
0099   - clock-output-names
0100   - port
0101 
0102 additionalProperties: false
0103 
0104 examples:
0105   - |
0106     #include <dt-bindings/interrupt-controller/arm-gic.h>
0107     #include <dt-bindings/clock/at91.h>
0108     #include <dt-bindings/interrupt-controller/irq.h>
0109 
0110     xisc: xisc@e1408000 {
0111         compatible = "microchip,sama7g5-isc";
0112         reg = <0xe1408000 0x2000>;
0113         interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
0114         clocks = <&pmc PMC_TYPE_PERIPHERAL 56>;
0115         clock-names = "hclock";
0116         #clock-cells = <0>;
0117         clock-output-names = "isc-mck";
0118 
0119         port {
0120                 xisc_in: endpoint {
0121                        bus-type = <5>; /* Parallel */
0122                        remote-endpoint = <&csi2dc_out>;
0123                        hsync-active = <1>;
0124                        vsync-active = <1>;
0125                        bus-width = <12>;
0126                 };
0127         };
0128     };