1787d6946SPaul Kocialkowski# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2787d6946SPaul Kocialkowski%YAML 1.2 3787d6946SPaul Kocialkowski--- 4787d6946SPaul Kocialkowski$id: http://devicetree.org/schemas/media/allwinner,sun6i-a31-mipi-csi2.yaml# 5787d6946SPaul Kocialkowski$schema: http://devicetree.org/meta-schemas/core.yaml# 6787d6946SPaul Kocialkowski 7*dd3cb467SAndrew Lunntitle: Allwinner A31 MIPI CSI-2 8787d6946SPaul Kocialkowski 9787d6946SPaul Kocialkowskimaintainers: 10787d6946SPaul Kocialkowski - Paul Kocialkowski <paul.kocialkowski@bootlin.com> 11787d6946SPaul Kocialkowski 12787d6946SPaul Kocialkowskiproperties: 13787d6946SPaul Kocialkowski compatible: 14787d6946SPaul Kocialkowski oneOf: 15787d6946SPaul Kocialkowski - const: allwinner,sun6i-a31-mipi-csi2 16787d6946SPaul Kocialkowski - items: 17787d6946SPaul Kocialkowski - const: allwinner,sun8i-v3s-mipi-csi2 18787d6946SPaul Kocialkowski - const: allwinner,sun6i-a31-mipi-csi2 19787d6946SPaul Kocialkowski 20787d6946SPaul Kocialkowski reg: 21787d6946SPaul Kocialkowski maxItems: 1 22787d6946SPaul Kocialkowski 23787d6946SPaul Kocialkowski interrupts: 24787d6946SPaul Kocialkowski maxItems: 1 25787d6946SPaul Kocialkowski 26787d6946SPaul Kocialkowski clocks: 27787d6946SPaul Kocialkowski items: 28787d6946SPaul Kocialkowski - description: Bus Clock 29787d6946SPaul Kocialkowski - description: Module Clock 30787d6946SPaul Kocialkowski 31787d6946SPaul Kocialkowski clock-names: 32787d6946SPaul Kocialkowski items: 33787d6946SPaul Kocialkowski - const: bus 34787d6946SPaul Kocialkowski - const: mod 35787d6946SPaul Kocialkowski 36787d6946SPaul Kocialkowski phys: 37787d6946SPaul Kocialkowski maxItems: 1 38787d6946SPaul Kocialkowski description: MIPI D-PHY 39787d6946SPaul Kocialkowski 40787d6946SPaul Kocialkowski phy-names: 41787d6946SPaul Kocialkowski items: 42787d6946SPaul Kocialkowski - const: dphy 43787d6946SPaul Kocialkowski 44787d6946SPaul Kocialkowski resets: 45787d6946SPaul Kocialkowski maxItems: 1 46787d6946SPaul Kocialkowski 47787d6946SPaul Kocialkowski ports: 48787d6946SPaul Kocialkowski $ref: /schemas/graph.yaml#/properties/ports 49787d6946SPaul Kocialkowski 50787d6946SPaul Kocialkowski properties: 51787d6946SPaul Kocialkowski port@0: 52787d6946SPaul Kocialkowski $ref: /schemas/graph.yaml#/$defs/port-base 53787d6946SPaul Kocialkowski description: Input port, connect to a MIPI CSI-2 sensor 54787d6946SPaul Kocialkowski 55787d6946SPaul Kocialkowski properties: 56787d6946SPaul Kocialkowski reg: 57787d6946SPaul Kocialkowski const: 0 58787d6946SPaul Kocialkowski 59787d6946SPaul Kocialkowski endpoint: 60787d6946SPaul Kocialkowski $ref: video-interfaces.yaml# 61787d6946SPaul Kocialkowski unevaluatedProperties: false 62787d6946SPaul Kocialkowski 63787d6946SPaul Kocialkowski properties: 64787d6946SPaul Kocialkowski data-lanes: 65787d6946SPaul Kocialkowski minItems: 1 66787d6946SPaul Kocialkowski maxItems: 4 67787d6946SPaul Kocialkowski 68787d6946SPaul Kocialkowski required: 69787d6946SPaul Kocialkowski - data-lanes 70787d6946SPaul Kocialkowski 71787d6946SPaul Kocialkowski unevaluatedProperties: false 72787d6946SPaul Kocialkowski 73787d6946SPaul Kocialkowski port@1: 74787d6946SPaul Kocialkowski $ref: /schemas/graph.yaml#/properties/port 75787d6946SPaul Kocialkowski description: Output port, connect to a CSI controller 76787d6946SPaul Kocialkowski 77787d6946SPaul Kocialkowski required: 78787d6946SPaul Kocialkowski - port@0 79787d6946SPaul Kocialkowski - port@1 80787d6946SPaul Kocialkowski 81787d6946SPaul Kocialkowskirequired: 82787d6946SPaul Kocialkowski - compatible 83787d6946SPaul Kocialkowski - reg 84787d6946SPaul Kocialkowski - interrupts 85787d6946SPaul Kocialkowski - clocks 86787d6946SPaul Kocialkowski - clock-names 87787d6946SPaul Kocialkowski - phys 88787d6946SPaul Kocialkowski - phy-names 89787d6946SPaul Kocialkowski - resets 90787d6946SPaul Kocialkowski - ports 91787d6946SPaul Kocialkowski 92787d6946SPaul KocialkowskiadditionalProperties: false 93787d6946SPaul Kocialkowski 94787d6946SPaul Kocialkowskiexamples: 95787d6946SPaul Kocialkowski - | 96787d6946SPaul Kocialkowski #include <dt-bindings/interrupt-controller/arm-gic.h> 97787d6946SPaul Kocialkowski #include <dt-bindings/clock/sun8i-v3s-ccu.h> 98787d6946SPaul Kocialkowski #include <dt-bindings/reset/sun8i-v3s-ccu.h> 99787d6946SPaul Kocialkowski 100787d6946SPaul Kocialkowski mipi_csi2: csi@1cb1000 { 101787d6946SPaul Kocialkowski compatible = "allwinner,sun8i-v3s-mipi-csi2", 102787d6946SPaul Kocialkowski "allwinner,sun6i-a31-mipi-csi2"; 103787d6946SPaul Kocialkowski reg = <0x01cb1000 0x1000>; 104787d6946SPaul Kocialkowski interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 105787d6946SPaul Kocialkowski clocks = <&ccu CLK_BUS_CSI>, 106787d6946SPaul Kocialkowski <&ccu CLK_CSI1_SCLK>; 107787d6946SPaul Kocialkowski clock-names = "bus", "mod"; 108787d6946SPaul Kocialkowski resets = <&ccu RST_BUS_CSI>; 109787d6946SPaul Kocialkowski 110787d6946SPaul Kocialkowski phys = <&dphy>; 111787d6946SPaul Kocialkowski phy-names = "dphy"; 112787d6946SPaul Kocialkowski 113787d6946SPaul Kocialkowski ports { 114787d6946SPaul Kocialkowski #address-cells = <1>; 115787d6946SPaul Kocialkowski #size-cells = <0>; 116787d6946SPaul Kocialkowski 117787d6946SPaul Kocialkowski mipi_csi2_in: port@0 { 118787d6946SPaul Kocialkowski reg = <0>; 119787d6946SPaul Kocialkowski 120787d6946SPaul Kocialkowski mipi_csi2_in_ov5648: endpoint { 121787d6946SPaul Kocialkowski data-lanes = <1 2 3 4>; 122787d6946SPaul Kocialkowski 123787d6946SPaul Kocialkowski remote-endpoint = <&ov5648_out_mipi_csi2>; 124787d6946SPaul Kocialkowski }; 125787d6946SPaul Kocialkowski }; 126787d6946SPaul Kocialkowski 127787d6946SPaul Kocialkowski mipi_csi2_out: port@1 { 128787d6946SPaul Kocialkowski reg = <1>; 129787d6946SPaul Kocialkowski 130787d6946SPaul Kocialkowski mipi_csi2_out_csi0: endpoint { 131787d6946SPaul Kocialkowski remote-endpoint = <&csi0_in_mipi_csi2>; 132787d6946SPaul Kocialkowski }; 133787d6946SPaul Kocialkowski }; 134787d6946SPaul Kocialkowski }; 135787d6946SPaul Kocialkowski }; 136787d6946SPaul Kocialkowski 137787d6946SPaul Kocialkowski... 138