1*c4891010SFrank Li# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*c4891010SFrank Li%YAML 1.2 3*c4891010SFrank Li--- 4*c4891010SFrank Li$id: http://devicetree.org/schemas/media/fsl,imx8qm-isi.yaml# 5*c4891010SFrank Li$schema: http://devicetree.org/meta-schemas/core.yaml# 6*c4891010SFrank Li 7*c4891010SFrank Lititle: i.MX8QM Image Sensing Interface 8*c4891010SFrank Li 9*c4891010SFrank Limaintainers: 10*c4891010SFrank Li - Frank Li <Frank.Li@nxp.com> 11*c4891010SFrank Li 12*c4891010SFrank Lidescription: 13*c4891010SFrank Li The Image Sensing Interface (ISI) combines image processing pipelines with 14*c4891010SFrank Li DMA engines to process and capture frames originating from a variety of 15*c4891010SFrank Li sources. The inputs to the ISI go through Pixel Link interfaces, and their 16*c4891010SFrank Li number and nature is SoC-dependent. They cover both capture interfaces (MIPI 17*c4891010SFrank Li CSI-2 RX, HDMI RX, ...) and display engine outputs for writeback support. 18*c4891010SFrank Li 19*c4891010SFrank Liproperties: 20*c4891010SFrank Li compatible: 21*c4891010SFrank Li enum: 22*c4891010SFrank Li - fsl,imx8qm-isi 23*c4891010SFrank Li 24*c4891010SFrank Li reg: 25*c4891010SFrank Li maxItems: 1 26*c4891010SFrank Li 27*c4891010SFrank Li clocks: 28*c4891010SFrank Li maxItems: 8 29*c4891010SFrank Li 30*c4891010SFrank Li clock-names: 31*c4891010SFrank Li items: 32*c4891010SFrank Li - const: per0 33*c4891010SFrank Li - const: per1 34*c4891010SFrank Li - const: per2 35*c4891010SFrank Li - const: per3 36*c4891010SFrank Li - const: per4 37*c4891010SFrank Li - const: per5 38*c4891010SFrank Li - const: per6 39*c4891010SFrank Li - const: per7 40*c4891010SFrank Li 41*c4891010SFrank Li interrupts: 42*c4891010SFrank Li maxItems: 8 43*c4891010SFrank Li 44*c4891010SFrank Li power-domains: 45*c4891010SFrank Li maxItems: 8 46*c4891010SFrank Li 47*c4891010SFrank Li ports: 48*c4891010SFrank Li $ref: /schemas/graph.yaml#/properties/ports 49*c4891010SFrank Li properties: 50*c4891010SFrank Li port@2: 51*c4891010SFrank Li $ref: /schemas/graph.yaml#/properties/port 52*c4891010SFrank Li description: MIPI CSI-2 RX 0 53*c4891010SFrank Li port@3: 54*c4891010SFrank Li $ref: /schemas/graph.yaml#/properties/port 55*c4891010SFrank Li description: MIPI CSI-2 RX 1 56*c4891010SFrank Li port@4: 57*c4891010SFrank Li $ref: /schemas/graph.yaml#/properties/port 58*c4891010SFrank Li description: HDMI RX 59*c4891010SFrank Li 60*c4891010SFrank Lirequired: 61*c4891010SFrank Li - compatible 62*c4891010SFrank Li - reg 63*c4891010SFrank Li - clocks 64*c4891010SFrank Li - clock-names 65*c4891010SFrank Li - interrupts 66*c4891010SFrank Li - power-domains 67*c4891010SFrank Li - ports 68*c4891010SFrank Li 69*c4891010SFrank LiadditionalProperties: false 70*c4891010SFrank Li 71*c4891010SFrank Liexamples: 72*c4891010SFrank Li - | 73*c4891010SFrank Li #include <dt-bindings/interrupt-controller/arm-gic.h> 74*c4891010SFrank Li #include <dt-bindings/interrupt-controller/irq.h> 75*c4891010SFrank Li #include <dt-bindings/clock/imx8-clock.h> 76*c4891010SFrank Li #include <dt-bindings/clock/imx8-lpcg.h> 77*c4891010SFrank Li #include <dt-bindings/firmware/imx/rsrc.h> 78*c4891010SFrank Li 79*c4891010SFrank Li image-controller@58100000 { 80*c4891010SFrank Li compatible = "fsl,imx8qm-isi"; 81*c4891010SFrank Li reg = <0x58100000 0x80000>; 82*c4891010SFrank Li interrupts = <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>, 83*c4891010SFrank Li <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>, 84*c4891010SFrank Li <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>, 85*c4891010SFrank Li <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>, 86*c4891010SFrank Li <GIC_SPI 301 IRQ_TYPE_LEVEL_HIGH>, 87*c4891010SFrank Li <GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>, 88*c4891010SFrank Li <GIC_SPI 303 IRQ_TYPE_LEVEL_HIGH>, 89*c4891010SFrank Li <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>; 90*c4891010SFrank Li clocks = <&pdma0_lpcg IMX_LPCG_CLK_0>, 91*c4891010SFrank Li <&pdma1_lpcg IMX_LPCG_CLK_0>, 92*c4891010SFrank Li <&pdma2_lpcg IMX_LPCG_CLK_0>, 93*c4891010SFrank Li <&pdma3_lpcg IMX_LPCG_CLK_0>, 94*c4891010SFrank Li <&pdma4_lpcg IMX_LPCG_CLK_0>, 95*c4891010SFrank Li <&pdma5_lpcg IMX_LPCG_CLK_0>, 96*c4891010SFrank Li <&pdma6_lpcg IMX_LPCG_CLK_0>, 97*c4891010SFrank Li <&pdma7_lpcg IMX_LPCG_CLK_0>; 98*c4891010SFrank Li clock-names = "per0", "per1", "per2", "per3", 99*c4891010SFrank Li "per4", "per5", "per6", "per7"; 100*c4891010SFrank Li power-domains = <&pd IMX_SC_R_ISI_CH0>, <&pd IMX_SC_R_ISI_CH1>, 101*c4891010SFrank Li <&pd IMX_SC_R_ISI_CH2>, <&pd IMX_SC_R_ISI_CH3>, 102*c4891010SFrank Li <&pd IMX_SC_R_ISI_CH4>, <&pd IMX_SC_R_ISI_CH5>, 103*c4891010SFrank Li <&pd IMX_SC_R_ISI_CH6>, <&pd IMX_SC_R_ISI_CH7>; 104*c4891010SFrank Li 105*c4891010SFrank Li ports { 106*c4891010SFrank Li #address-cells = <1>; 107*c4891010SFrank Li #size-cells = <0>; 108*c4891010SFrank Li 109*c4891010SFrank Li port@2 { 110*c4891010SFrank Li reg = <2>; 111*c4891010SFrank Li endpoint { 112*c4891010SFrank Li remote-endpoint = <&mipi_csi0_out>; 113*c4891010SFrank Li }; 114*c4891010SFrank Li }; 115*c4891010SFrank Li }; 116*c4891010SFrank Li }; 117*c4891010SFrank Li... 118