1*b1a90f51SBiju Das# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*b1a90f51SBiju Das%YAML 1.2 3*b1a90f51SBiju Das--- 4*b1a90f51SBiju Das$id: http://devicetree.org/schemas/display/bridge/renesas,dsi.yaml# 5*b1a90f51SBiju Das$schema: http://devicetree.org/meta-schemas/core.yaml# 6*b1a90f51SBiju Das 7*b1a90f51SBiju Dastitle: Renesas RZ/G2L MIPI DSI Encoder 8*b1a90f51SBiju Das 9*b1a90f51SBiju Dasmaintainers: 10*b1a90f51SBiju Das - Biju Das <biju.das.jz@bp.renesas.com> 11*b1a90f51SBiju Das 12*b1a90f51SBiju Dasdescription: | 13*b1a90f51SBiju Das This binding describes the MIPI DSI encoder embedded in the Renesas 14*b1a90f51SBiju Das RZ/G2L alike family of SoC's. The encoder can operate in DSI mode, with 15*b1a90f51SBiju Das up to four data lanes. 16*b1a90f51SBiju Das 17*b1a90f51SBiju DasallOf: 18*b1a90f51SBiju Das - $ref: /schemas/display/dsi-controller.yaml# 19*b1a90f51SBiju Das 20*b1a90f51SBiju Dasproperties: 21*b1a90f51SBiju Das compatible: 22*b1a90f51SBiju Das items: 23*b1a90f51SBiju Das - enum: 24*b1a90f51SBiju Das - renesas,r9a07g044-mipi-dsi # RZ/G2{L,LC} 25*b1a90f51SBiju Das - const: renesas,rzg2l-mipi-dsi 26*b1a90f51SBiju Das 27*b1a90f51SBiju Das reg: 28*b1a90f51SBiju Das maxItems: 1 29*b1a90f51SBiju Das 30*b1a90f51SBiju Das interrupts: 31*b1a90f51SBiju Das items: 32*b1a90f51SBiju Das - description: Sequence operation channel 0 interrupt 33*b1a90f51SBiju Das - description: Sequence operation channel 1 interrupt 34*b1a90f51SBiju Das - description: Video-Input operation channel 1 interrupt 35*b1a90f51SBiju Das - description: DSI Packet Receive interrupt 36*b1a90f51SBiju Das - description: DSI Fatal Error interrupt 37*b1a90f51SBiju Das - description: DSI D-PHY PPI interrupt 38*b1a90f51SBiju Das - description: Debug interrupt 39*b1a90f51SBiju Das 40*b1a90f51SBiju Das interrupt-names: 41*b1a90f51SBiju Das items: 42*b1a90f51SBiju Das - const: seq0 43*b1a90f51SBiju Das - const: seq1 44*b1a90f51SBiju Das - const: vin1 45*b1a90f51SBiju Das - const: rcv 46*b1a90f51SBiju Das - const: ferr 47*b1a90f51SBiju Das - const: ppi 48*b1a90f51SBiju Das - const: debug 49*b1a90f51SBiju Das 50*b1a90f51SBiju Das clocks: 51*b1a90f51SBiju Das items: 52*b1a90f51SBiju Das - description: DSI D-PHY PLL multiplied clock 53*b1a90f51SBiju Das - description: DSI D-PHY system clock 54*b1a90f51SBiju Das - description: DSI AXI bus clock 55*b1a90f51SBiju Das - description: DSI Register access clock 56*b1a90f51SBiju Das - description: DSI Video clock 57*b1a90f51SBiju Das - description: DSI D-PHY Escape mode transmit clock 58*b1a90f51SBiju Das 59*b1a90f51SBiju Das clock-names: 60*b1a90f51SBiju Das items: 61*b1a90f51SBiju Das - const: pllclk 62*b1a90f51SBiju Das - const: sysclk 63*b1a90f51SBiju Das - const: aclk 64*b1a90f51SBiju Das - const: pclk 65*b1a90f51SBiju Das - const: vclk 66*b1a90f51SBiju Das - const: lpclk 67*b1a90f51SBiju Das 68*b1a90f51SBiju Das resets: 69*b1a90f51SBiju Das items: 70*b1a90f51SBiju Das - description: MIPI_DSI_CMN_RSTB 71*b1a90f51SBiju Das - description: MIPI_DSI_ARESET_N 72*b1a90f51SBiju Das - description: MIPI_DSI_PRESET_N 73*b1a90f51SBiju Das 74*b1a90f51SBiju Das reset-names: 75*b1a90f51SBiju Das items: 76*b1a90f51SBiju Das - const: rst 77*b1a90f51SBiju Das - const: arst 78*b1a90f51SBiju Das - const: prst 79*b1a90f51SBiju Das 80*b1a90f51SBiju Das power-domains: 81*b1a90f51SBiju Das maxItems: 1 82*b1a90f51SBiju Das 83*b1a90f51SBiju Das ports: 84*b1a90f51SBiju Das $ref: /schemas/graph.yaml#/properties/ports 85*b1a90f51SBiju Das 86*b1a90f51SBiju Das properties: 87*b1a90f51SBiju Das port@0: 88*b1a90f51SBiju Das $ref: /schemas/graph.yaml#/properties/port 89*b1a90f51SBiju Das description: Parallel input port 90*b1a90f51SBiju Das 91*b1a90f51SBiju Das port@1: 92*b1a90f51SBiju Das $ref: /schemas/graph.yaml#/$defs/port-base 93*b1a90f51SBiju Das unevaluatedProperties: false 94*b1a90f51SBiju Das description: DSI output port 95*b1a90f51SBiju Das 96*b1a90f51SBiju Das properties: 97*b1a90f51SBiju Das endpoint: 98*b1a90f51SBiju Das $ref: /schemas/media/video-interfaces.yaml# 99*b1a90f51SBiju Das unevaluatedProperties: false 100*b1a90f51SBiju Das 101*b1a90f51SBiju Das properties: 102*b1a90f51SBiju Das data-lanes: 103*b1a90f51SBiju Das description: array of physical DSI data lane indexes. 104*b1a90f51SBiju Das minItems: 1 105*b1a90f51SBiju Das items: 106*b1a90f51SBiju Das - const: 1 107*b1a90f51SBiju Das - const: 2 108*b1a90f51SBiju Das - const: 3 109*b1a90f51SBiju Das - const: 4 110*b1a90f51SBiju Das 111*b1a90f51SBiju Das required: 112*b1a90f51SBiju Das - data-lanes 113*b1a90f51SBiju Das 114*b1a90f51SBiju Das required: 115*b1a90f51SBiju Das - port@0 116*b1a90f51SBiju Das - port@1 117*b1a90f51SBiju Das 118*b1a90f51SBiju Dasrequired: 119*b1a90f51SBiju Das - compatible 120*b1a90f51SBiju Das - reg 121*b1a90f51SBiju Das - interrupts 122*b1a90f51SBiju Das - interrupt-names 123*b1a90f51SBiju Das - clocks 124*b1a90f51SBiju Das - clock-names 125*b1a90f51SBiju Das - resets 126*b1a90f51SBiju Das - reset-names 127*b1a90f51SBiju Das - power-domains 128*b1a90f51SBiju Das - ports 129*b1a90f51SBiju Das 130*b1a90f51SBiju DasadditionalProperties: false 131*b1a90f51SBiju Das 132*b1a90f51SBiju Dasexamples: 133*b1a90f51SBiju Das - | 134*b1a90f51SBiju Das #include <dt-bindings/clock/r9a07g044-cpg.h> 135*b1a90f51SBiju Das #include <dt-bindings/interrupt-controller/arm-gic.h> 136*b1a90f51SBiju Das 137*b1a90f51SBiju Das dsi0: dsi@10850000 { 138*b1a90f51SBiju Das compatible = "renesas,r9a07g044-mipi-dsi", "renesas,rzg2l-mipi-dsi"; 139*b1a90f51SBiju Das reg = <0x10850000 0x20000>; 140*b1a90f51SBiju Das interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 141*b1a90f51SBiju Das <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 142*b1a90f51SBiju Das <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 143*b1a90f51SBiju Das <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 144*b1a90f51SBiju Das <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 145*b1a90f51SBiju Das <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 146*b1a90f51SBiju Das <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 147*b1a90f51SBiju Das interrupt-names = "seq0", "seq1", "vin1", "rcv", 148*b1a90f51SBiju Das "ferr", "ppi", "debug"; 149*b1a90f51SBiju Das clocks = <&cpg CPG_MOD R9A07G044_MIPI_DSI_PLLCLK>, 150*b1a90f51SBiju Das <&cpg CPG_MOD R9A07G044_MIPI_DSI_SYSCLK>, 151*b1a90f51SBiju Das <&cpg CPG_MOD R9A07G044_MIPI_DSI_ACLK>, 152*b1a90f51SBiju Das <&cpg CPG_MOD R9A07G044_MIPI_DSI_PCLK>, 153*b1a90f51SBiju Das <&cpg CPG_MOD R9A07G044_MIPI_DSI_VCLK>, 154*b1a90f51SBiju Das <&cpg CPG_MOD R9A07G044_MIPI_DSI_LPCLK>; 155*b1a90f51SBiju Das clock-names = "pllclk", "sysclk", "aclk", "pclk", "vclk", "lpclk"; 156*b1a90f51SBiju Das resets = <&cpg R9A07G044_MIPI_DSI_CMN_RSTB>, 157*b1a90f51SBiju Das <&cpg R9A07G044_MIPI_DSI_ARESET_N>, 158*b1a90f51SBiju Das <&cpg R9A07G044_MIPI_DSI_PRESET_N>; 159*b1a90f51SBiju Das reset-names = "rst", "arst", "prst"; 160*b1a90f51SBiju Das power-domains = <&cpg>; 161*b1a90f51SBiju Das 162*b1a90f51SBiju Das ports { 163*b1a90f51SBiju Das #address-cells = <1>; 164*b1a90f51SBiju Das #size-cells = <0>; 165*b1a90f51SBiju Das 166*b1a90f51SBiju Das port@0 { 167*b1a90f51SBiju Das reg = <0>; 168*b1a90f51SBiju Das dsi0_in: endpoint { 169*b1a90f51SBiju Das remote-endpoint = <&du_out_dsi0>; 170*b1a90f51SBiju Das }; 171*b1a90f51SBiju Das }; 172*b1a90f51SBiju Das 173*b1a90f51SBiju Das port@1 { 174*b1a90f51SBiju Das reg = <1>; 175*b1a90f51SBiju Das dsi0_out: endpoint { 176*b1a90f51SBiju Das data-lanes = <1 2 3 4>; 177*b1a90f51SBiju Das remote-endpoint = <&adv7535_in>; 178*b1a90f51SBiju Das }; 179*b1a90f51SBiju Das }; 180*b1a90f51SBiju Das }; 181*b1a90f51SBiju Das }; 182*b1a90f51SBiju Das... 183