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--- 5fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/display/ti/ti,am65x-dss.yaml# 6fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 7c66ec88fSEmmanuel Vadot 8c66ec88fSEmmanuel Vadottitle: Texas Instruments AM65x 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: | 15aa1a8ff2SEmmanuel Vadot The AM625 and AM65x TI Keystone Display SubSystem with two output 16aa1a8ff2SEmmanuel Vadot ports and two video planes. In AM65x DSS, the first video port 17aa1a8ff2SEmmanuel Vadot supports 1 OLDI TX and in AM625 DSS, the first video port output is 18aa1a8ff2SEmmanuel Vadot internally routed to 2 OLDI TXes. The second video port supports DPI 19aa1a8ff2SEmmanuel Vadot format. The first plane is full video plane with all features and the 20aa1a8ff2SEmmanuel Vadot second is a "lite plane" without scaling support. 21c66ec88fSEmmanuel Vadot 22c66ec88fSEmmanuel Vadotproperties: 23c66ec88fSEmmanuel Vadot compatible: 24aa1a8ff2SEmmanuel Vadot enum: 25aa1a8ff2SEmmanuel Vadot - ti,am625-dss 26*8d13bc63SEmmanuel Vadot - ti,am62a7,dss 27aa1a8ff2SEmmanuel Vadot - ti,am65x-dss 28c66ec88fSEmmanuel Vadot 29c66ec88fSEmmanuel Vadot reg: 30c66ec88fSEmmanuel Vadot description: 31c66ec88fSEmmanuel Vadot Addresses to each DSS memory region described in the SoC's TRM. 32c66ec88fSEmmanuel Vadot items: 33c66ec88fSEmmanuel Vadot - description: common DSS register area 34c66ec88fSEmmanuel Vadot - description: VIDL1 light video plane 35c66ec88fSEmmanuel Vadot - description: VID video plane 36c66ec88fSEmmanuel Vadot - description: OVR1 overlay manager for vp1 37c66ec88fSEmmanuel Vadot - description: OVR2 overlay manager for vp2 38c66ec88fSEmmanuel Vadot - description: VP1 video port 1 39c66ec88fSEmmanuel Vadot - description: VP2 video port 2 40c66ec88fSEmmanuel Vadot 41c66ec88fSEmmanuel Vadot reg-names: 42c66ec88fSEmmanuel Vadot items: 43c66ec88fSEmmanuel Vadot - const: common 44c66ec88fSEmmanuel Vadot - const: vidl1 45c66ec88fSEmmanuel Vadot - const: vid 46c66ec88fSEmmanuel Vadot - const: ovr1 47c66ec88fSEmmanuel Vadot - const: ovr2 48c66ec88fSEmmanuel Vadot - const: vp1 49c66ec88fSEmmanuel Vadot - const: vp2 50c66ec88fSEmmanuel Vadot 51c66ec88fSEmmanuel Vadot clocks: 52c66ec88fSEmmanuel Vadot items: 53c66ec88fSEmmanuel Vadot - description: fck DSS functional clock 54c66ec88fSEmmanuel Vadot - description: vp1 Video Port 1 pixel clock 55c66ec88fSEmmanuel Vadot - description: vp2 Video Port 2 pixel clock 56c66ec88fSEmmanuel Vadot 57c66ec88fSEmmanuel Vadot clock-names: 58c66ec88fSEmmanuel Vadot items: 59c66ec88fSEmmanuel Vadot - const: fck 60c66ec88fSEmmanuel Vadot - const: vp1 61c66ec88fSEmmanuel Vadot - const: vp2 62c66ec88fSEmmanuel Vadot 635def4c47SEmmanuel Vadot assigned-clocks: 645def4c47SEmmanuel Vadot minItems: 1 655def4c47SEmmanuel Vadot maxItems: 3 665def4c47SEmmanuel Vadot 675def4c47SEmmanuel Vadot assigned-clock-parents: 685def4c47SEmmanuel Vadot minItems: 1 695def4c47SEmmanuel Vadot maxItems: 3 705def4c47SEmmanuel Vadot 71c66ec88fSEmmanuel Vadot interrupts: 72c66ec88fSEmmanuel Vadot maxItems: 1 73c66ec88fSEmmanuel Vadot 74c66ec88fSEmmanuel Vadot power-domains: 75c66ec88fSEmmanuel Vadot maxItems: 1 76c66ec88fSEmmanuel Vadot description: phandle to the associated power domain 77c66ec88fSEmmanuel Vadot 785def4c47SEmmanuel Vadot dma-coherent: 795def4c47SEmmanuel Vadot type: boolean 805def4c47SEmmanuel Vadot 81c66ec88fSEmmanuel Vadot ports: 825def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 835def4c47SEmmanuel Vadot 84c66ec88fSEmmanuel Vadot properties: 85c66ec88fSEmmanuel Vadot port@0: 865def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 87c66ec88fSEmmanuel Vadot description: 88aa1a8ff2SEmmanuel Vadot For AM65x DSS, the OLDI output port node from video port 1. 89aa1a8ff2SEmmanuel Vadot For AM625 DSS, the internal DPI output port node from video 90aa1a8ff2SEmmanuel Vadot port 1. 91*8d13bc63SEmmanuel Vadot For AM62A7 DSS, the port is tied off inside the SoC. 92c66ec88fSEmmanuel Vadot 93c66ec88fSEmmanuel Vadot port@1: 945def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 95c66ec88fSEmmanuel Vadot description: 96c66ec88fSEmmanuel Vadot The DSS DPI output port node from video port 2 97c66ec88fSEmmanuel Vadot 98c66ec88fSEmmanuel Vadot ti,am65x-oldi-io-ctrl: 99fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 100c66ec88fSEmmanuel Vadot description: 101c66ec88fSEmmanuel Vadot phandle to syscon device node mapping OLDI IO_CTRL registers. 102c66ec88fSEmmanuel Vadot The mapped range should point to OLDI_DAT0_IO_CTRL, map it and 103c66ec88fSEmmanuel Vadot following OLDI_DAT1_IO_CTRL, OLDI_DAT2_IO_CTRL, OLDI_DAT3_IO_CTRL, 104c66ec88fSEmmanuel Vadot and OLDI_CLK_IO_CTRL registers. This property is needed for OLDI 105c66ec88fSEmmanuel Vadot interface to work. 106c66ec88fSEmmanuel Vadot 107c66ec88fSEmmanuel Vadot max-memory-bandwidth: 108c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 109c66ec88fSEmmanuel Vadot description: 110c66ec88fSEmmanuel Vadot Input memory (from main memory to dispc) bandwidth limit in 111c66ec88fSEmmanuel Vadot bytes per second 112c66ec88fSEmmanuel Vadot 113*8d13bc63SEmmanuel VadotallOf: 114*8d13bc63SEmmanuel Vadot - if: 115*8d13bc63SEmmanuel Vadot properties: 116*8d13bc63SEmmanuel Vadot compatible: 117*8d13bc63SEmmanuel Vadot contains: 118*8d13bc63SEmmanuel Vadot const: ti,am62a7-dss 119*8d13bc63SEmmanuel Vadot then: 120*8d13bc63SEmmanuel Vadot properties: 121*8d13bc63SEmmanuel Vadot ports: 122*8d13bc63SEmmanuel Vadot properties: 123*8d13bc63SEmmanuel Vadot port@0: false 124*8d13bc63SEmmanuel Vadot 125c66ec88fSEmmanuel Vadotrequired: 126c66ec88fSEmmanuel Vadot - compatible 127c66ec88fSEmmanuel Vadot - reg 128c66ec88fSEmmanuel Vadot - reg-names 129c66ec88fSEmmanuel Vadot - clocks 130c66ec88fSEmmanuel Vadot - clock-names 131c66ec88fSEmmanuel Vadot - interrupts 132c66ec88fSEmmanuel Vadot - ports 133c66ec88fSEmmanuel Vadot 134c66ec88fSEmmanuel VadotadditionalProperties: false 135c66ec88fSEmmanuel Vadot 136c66ec88fSEmmanuel Vadotexamples: 137c66ec88fSEmmanuel Vadot - | 138c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 139c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 140c66ec88fSEmmanuel Vadot #include <dt-bindings/soc/ti,sci_pm_domain.h> 141c66ec88fSEmmanuel Vadot 142c66ec88fSEmmanuel Vadot dss: dss@4a00000 { 143c66ec88fSEmmanuel Vadot compatible = "ti,am65x-dss"; 144c66ec88fSEmmanuel Vadot reg = <0x04a00000 0x1000>, /* common */ 145c66ec88fSEmmanuel Vadot <0x04a02000 0x1000>, /* vidl1 */ 146c66ec88fSEmmanuel Vadot <0x04a06000 0x1000>, /* vid */ 147c66ec88fSEmmanuel Vadot <0x04a07000 0x1000>, /* ovr1 */ 148c66ec88fSEmmanuel Vadot <0x04a08000 0x1000>, /* ovr2 */ 149c66ec88fSEmmanuel Vadot <0x04a0a000 0x1000>, /* vp1 */ 150c66ec88fSEmmanuel Vadot <0x04a0b000 0x1000>; /* vp2 */ 151c66ec88fSEmmanuel Vadot reg-names = "common", "vidl1", "vid", 152c66ec88fSEmmanuel Vadot "ovr1", "ovr2", "vp1", "vp2"; 153c66ec88fSEmmanuel Vadot ti,am65x-oldi-io-ctrl = <&dss_oldi_io_ctrl>; 154c66ec88fSEmmanuel Vadot power-domains = <&k3_pds 67 TI_SCI_PD_EXCLUSIVE>; 155c66ec88fSEmmanuel Vadot clocks = <&k3_clks 67 1>, 156c66ec88fSEmmanuel Vadot <&k3_clks 216 1>, 157c66ec88fSEmmanuel Vadot <&k3_clks 67 2>; 158c66ec88fSEmmanuel Vadot clock-names = "fck", "vp1", "vp2"; 159c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 166 IRQ_TYPE_EDGE_RISING>; 160c66ec88fSEmmanuel Vadot ports { 161c66ec88fSEmmanuel Vadot #address-cells = <1>; 162c66ec88fSEmmanuel Vadot #size-cells = <0>; 163c66ec88fSEmmanuel Vadot port@0 { 164c66ec88fSEmmanuel Vadot reg = <0>; 165c66ec88fSEmmanuel Vadot oldi_out0: endpoint { 166c66ec88fSEmmanuel Vadot remote-endpoint = <&lcd_in0>; 167c66ec88fSEmmanuel Vadot }; 168c66ec88fSEmmanuel Vadot }; 169c66ec88fSEmmanuel Vadot }; 170c66ec88fSEmmanuel Vadot }; 171