1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot# Copyright 2019 Texas Instruments Incorporated 3c66ec88fSEmmanuel Vadot%YAML 1.2 4c66ec88fSEmmanuel Vadot--- 5*fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/display/ti/ti,j721e-dss.yaml# 6*fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 7c66ec88fSEmmanuel Vadot 8c66ec88fSEmmanuel Vadottitle: Texas Instruments J721E Display Subsystem 9c66ec88fSEmmanuel Vadot 10c66ec88fSEmmanuel Vadotmaintainers: 11c66ec88fSEmmanuel Vadot - Jyri Sarha <jsarha@ti.com> 12c66ec88fSEmmanuel Vadot - Tomi Valkeinen <tomi.valkeinen@ti.com> 13c66ec88fSEmmanuel Vadot 14c66ec88fSEmmanuel Vadotdescription: | 15c66ec88fSEmmanuel Vadot The J721E TI Keystone Display SubSystem with four output ports and 16c66ec88fSEmmanuel Vadot four video planes. There is two full video planes and two "lite 17c66ec88fSEmmanuel Vadot planes" without scaling support. The video ports can be connected to 18c66ec88fSEmmanuel Vadot the SoC's DPI pins or to integrated display bridges on the SoC. 19c66ec88fSEmmanuel Vadot 20c66ec88fSEmmanuel Vadotproperties: 21c66ec88fSEmmanuel Vadot compatible: 22c66ec88fSEmmanuel Vadot const: ti,j721e-dss 23c66ec88fSEmmanuel Vadot 24c66ec88fSEmmanuel Vadot reg: 25c66ec88fSEmmanuel Vadot items: 26c66ec88fSEmmanuel Vadot - description: common_m DSS Master common 27c66ec88fSEmmanuel Vadot - description: common_s0 DSS Shared common 0 28c66ec88fSEmmanuel Vadot - description: common_s1 DSS Shared common 1 29c66ec88fSEmmanuel Vadot - description: common_s2 DSS Shared common 2 30c66ec88fSEmmanuel Vadot - description: VIDL1 light video plane 1 31c66ec88fSEmmanuel Vadot - description: VIDL2 light video plane 2 32c66ec88fSEmmanuel Vadot - description: VID1 video plane 1 33c66ec88fSEmmanuel Vadot - description: VID1 video plane 2 34c66ec88fSEmmanuel Vadot - description: OVR1 overlay manager for vp1 35c66ec88fSEmmanuel Vadot - description: OVR2 overlay manager for vp2 36c66ec88fSEmmanuel Vadot - description: OVR3 overlay manager for vp3 37c66ec88fSEmmanuel Vadot - description: OVR4 overlay manager for vp4 38c66ec88fSEmmanuel Vadot - description: VP1 video port 1 39c66ec88fSEmmanuel Vadot - description: VP2 video port 2 40c66ec88fSEmmanuel Vadot - description: VP3 video port 3 41c66ec88fSEmmanuel Vadot - description: VP4 video port 4 42c66ec88fSEmmanuel Vadot - description: WB Write Back 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel Vadot reg-names: 45c66ec88fSEmmanuel Vadot items: 46c66ec88fSEmmanuel Vadot - const: common_m 47c66ec88fSEmmanuel Vadot - const: common_s0 48c66ec88fSEmmanuel Vadot - const: common_s1 49c66ec88fSEmmanuel Vadot - const: common_s2 50c66ec88fSEmmanuel Vadot - const: vidl1 51c66ec88fSEmmanuel Vadot - const: vidl2 52c66ec88fSEmmanuel Vadot - const: vid1 53c66ec88fSEmmanuel Vadot - const: vid2 54c66ec88fSEmmanuel Vadot - const: ovr1 55c66ec88fSEmmanuel Vadot - const: ovr2 56c66ec88fSEmmanuel Vadot - const: ovr3 57c66ec88fSEmmanuel Vadot - const: ovr4 58c66ec88fSEmmanuel Vadot - const: vp1 59c66ec88fSEmmanuel Vadot - const: vp2 60c66ec88fSEmmanuel Vadot - const: vp3 61c66ec88fSEmmanuel Vadot - const: vp4 62c66ec88fSEmmanuel Vadot - const: wb 63c66ec88fSEmmanuel Vadot 64c66ec88fSEmmanuel Vadot clocks: 65c66ec88fSEmmanuel Vadot items: 66c66ec88fSEmmanuel Vadot - description: fck DSS functional clock 67c66ec88fSEmmanuel Vadot - description: vp1 Video Port 1 pixel clock 68c66ec88fSEmmanuel Vadot - description: vp2 Video Port 2 pixel clock 69c66ec88fSEmmanuel Vadot - description: vp3 Video Port 3 pixel clock 70c66ec88fSEmmanuel Vadot - description: vp4 Video Port 4 pixel clock 71c66ec88fSEmmanuel Vadot 72c66ec88fSEmmanuel Vadot clock-names: 73c66ec88fSEmmanuel Vadot items: 74c66ec88fSEmmanuel Vadot - const: fck 75c66ec88fSEmmanuel Vadot - const: vp1 76c66ec88fSEmmanuel Vadot - const: vp2 77c66ec88fSEmmanuel Vadot - const: vp3 78c66ec88fSEmmanuel Vadot - const: vp4 79c66ec88fSEmmanuel Vadot 805def4c47SEmmanuel Vadot assigned-clocks: 815def4c47SEmmanuel Vadot minItems: 1 825def4c47SEmmanuel Vadot maxItems: 5 835def4c47SEmmanuel Vadot 845def4c47SEmmanuel Vadot assigned-clock-parents: 855def4c47SEmmanuel Vadot minItems: 1 865def4c47SEmmanuel Vadot maxItems: 5 875def4c47SEmmanuel Vadot 88c66ec88fSEmmanuel Vadot interrupts: 89c66ec88fSEmmanuel Vadot items: 90c66ec88fSEmmanuel Vadot - description: common_m DSS Master common 91c66ec88fSEmmanuel Vadot - description: common_s0 DSS Shared common 0 92c66ec88fSEmmanuel Vadot - description: common_s1 DSS Shared common 1 93c66ec88fSEmmanuel Vadot - description: common_s2 DSS Shared common 2 94c66ec88fSEmmanuel Vadot 95c66ec88fSEmmanuel Vadot interrupt-names: 96c66ec88fSEmmanuel Vadot items: 97c66ec88fSEmmanuel Vadot - const: common_m 98c66ec88fSEmmanuel Vadot - const: common_s0 99c66ec88fSEmmanuel Vadot - const: common_s1 100c66ec88fSEmmanuel Vadot - const: common_s2 101c66ec88fSEmmanuel Vadot 102c66ec88fSEmmanuel Vadot power-domains: 103c66ec88fSEmmanuel Vadot maxItems: 1 104c66ec88fSEmmanuel Vadot description: phandle to the associated power domain 105c66ec88fSEmmanuel Vadot 1065def4c47SEmmanuel Vadot dma-coherent: 1075def4c47SEmmanuel Vadot type: boolean 1085def4c47SEmmanuel Vadot 109c66ec88fSEmmanuel Vadot ports: 1105def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 1115def4c47SEmmanuel Vadot 112c66ec88fSEmmanuel Vadot properties: 113c66ec88fSEmmanuel Vadot port@0: 1145def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 115c66ec88fSEmmanuel Vadot description: 116c66ec88fSEmmanuel Vadot The output port node form video port 1 117c66ec88fSEmmanuel Vadot 118c66ec88fSEmmanuel Vadot port@1: 1195def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 120c66ec88fSEmmanuel Vadot description: 121c66ec88fSEmmanuel Vadot The output port node from video port 2 122c66ec88fSEmmanuel Vadot 123c66ec88fSEmmanuel Vadot port@2: 1245def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 125c66ec88fSEmmanuel Vadot description: 126c66ec88fSEmmanuel Vadot The output port node from video port 3 127c66ec88fSEmmanuel Vadot 128c66ec88fSEmmanuel Vadot port@3: 1295def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 130c66ec88fSEmmanuel Vadot description: 131c66ec88fSEmmanuel Vadot The output port node from video port 4 132c66ec88fSEmmanuel Vadot 133c66ec88fSEmmanuel Vadot max-memory-bandwidth: 134c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 135c66ec88fSEmmanuel Vadot description: 136c66ec88fSEmmanuel Vadot Input memory (from main memory to dispc) bandwidth limit in 137c66ec88fSEmmanuel Vadot bytes per second 138c66ec88fSEmmanuel Vadot 139c66ec88fSEmmanuel Vadotrequired: 140c66ec88fSEmmanuel Vadot - compatible 141c66ec88fSEmmanuel Vadot - reg 142c66ec88fSEmmanuel Vadot - reg-names 143c66ec88fSEmmanuel Vadot - clocks 144c66ec88fSEmmanuel Vadot - clock-names 145c66ec88fSEmmanuel Vadot - interrupts 146c66ec88fSEmmanuel Vadot - interrupt-names 147c66ec88fSEmmanuel Vadot - ports 148c66ec88fSEmmanuel Vadot 149c66ec88fSEmmanuel VadotadditionalProperties: false 150c66ec88fSEmmanuel Vadot 151c66ec88fSEmmanuel Vadotexamples: 152c66ec88fSEmmanuel Vadot - | 153c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 154c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 155c66ec88fSEmmanuel Vadot #include <dt-bindings/soc/ti,sci_pm_domain.h> 156c66ec88fSEmmanuel Vadot 157c66ec88fSEmmanuel Vadot dss: dss@4a00000 { 158c66ec88fSEmmanuel Vadot compatible = "ti,j721e-dss"; 159c66ec88fSEmmanuel Vadot reg = <0x04a00000 0x10000>, /* common_m */ 160c66ec88fSEmmanuel Vadot <0x04a10000 0x10000>, /* common_s0*/ 161c66ec88fSEmmanuel Vadot <0x04b00000 0x10000>, /* common_s1*/ 162c66ec88fSEmmanuel Vadot <0x04b10000 0x10000>, /* common_s2*/ 163c66ec88fSEmmanuel Vadot <0x04a20000 0x10000>, /* vidl1 */ 164c66ec88fSEmmanuel Vadot <0x04a30000 0x10000>, /* vidl2 */ 165c66ec88fSEmmanuel Vadot <0x04a50000 0x10000>, /* vid1 */ 166c66ec88fSEmmanuel Vadot <0x04a60000 0x10000>, /* vid2 */ 167c66ec88fSEmmanuel Vadot <0x04a70000 0x10000>, /* ovr1 */ 168c66ec88fSEmmanuel Vadot <0x04a90000 0x10000>, /* ovr2 */ 169c66ec88fSEmmanuel Vadot <0x04ab0000 0x10000>, /* ovr3 */ 170c66ec88fSEmmanuel Vadot <0x04ad0000 0x10000>, /* ovr4 */ 171c66ec88fSEmmanuel Vadot <0x04a80000 0x10000>, /* vp1 */ 172c66ec88fSEmmanuel Vadot <0x04aa0000 0x10000>, /* vp2 */ 173c66ec88fSEmmanuel Vadot <0x04ac0000 0x10000>, /* vp3 */ 174c66ec88fSEmmanuel Vadot <0x04ae0000 0x10000>, /* vp4 */ 175c66ec88fSEmmanuel Vadot <0x04af0000 0x10000>; /* wb */ 176c66ec88fSEmmanuel Vadot reg-names = "common_m", "common_s0", 177c66ec88fSEmmanuel Vadot "common_s1", "common_s2", 178c66ec88fSEmmanuel Vadot "vidl1", "vidl2","vid1","vid2", 179c66ec88fSEmmanuel Vadot "ovr1", "ovr2", "ovr3", "ovr4", 180c66ec88fSEmmanuel Vadot "vp1", "vp2", "vp3", "vp4", 181c66ec88fSEmmanuel Vadot "wb"; 182c66ec88fSEmmanuel Vadot clocks = <&k3_clks 152 0>, 183c66ec88fSEmmanuel Vadot <&k3_clks 152 1>, 184c66ec88fSEmmanuel Vadot <&k3_clks 152 4>, 185c66ec88fSEmmanuel Vadot <&k3_clks 152 9>, 186c66ec88fSEmmanuel Vadot <&k3_clks 152 13>; 187c66ec88fSEmmanuel Vadot clock-names = "fck", "vp1", "vp2", "vp3", "vp4"; 188c66ec88fSEmmanuel Vadot power-domains = <&k3_pds 152 TI_SCI_PD_EXCLUSIVE>; 189c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>, 190c66ec88fSEmmanuel Vadot <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>, 191c66ec88fSEmmanuel Vadot <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>, 192c66ec88fSEmmanuel Vadot <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 193c66ec88fSEmmanuel Vadot interrupt-names = "common_m", 194c66ec88fSEmmanuel Vadot "common_s0", 195c66ec88fSEmmanuel Vadot "common_s1", 196c66ec88fSEmmanuel Vadot "common_s2"; 197c66ec88fSEmmanuel Vadot ports { 198c66ec88fSEmmanuel Vadot #address-cells = <1>; 199c66ec88fSEmmanuel Vadot #size-cells = <0>; 200c66ec88fSEmmanuel Vadot port@0 { 201c66ec88fSEmmanuel Vadot reg = <0>; 202c66ec88fSEmmanuel Vadot 203c66ec88fSEmmanuel Vadot dpi_out_0: endpoint { 204c66ec88fSEmmanuel Vadot remote-endpoint = <&dp_bridge_input>; 205c66ec88fSEmmanuel Vadot }; 206c66ec88fSEmmanuel Vadot }; 207c66ec88fSEmmanuel Vadot }; 208c66ec88fSEmmanuel Vadot }; 209