1d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2d5b0e70fSEmmanuel Vadot%YAML 1.2 3d5b0e70fSEmmanuel Vadot--- 4d5b0e70fSEmmanuel Vadot$id: http://devicetree.org/schemas/display/arm,malidp.yaml# 5d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6d5b0e70fSEmmanuel Vadot 7*8bab661aSEmmanuel Vadottitle: Arm Mali Display Processor (Mali-DP) 8d5b0e70fSEmmanuel Vadot 9d5b0e70fSEmmanuel Vadotmaintainers: 10d5b0e70fSEmmanuel Vadot - Liviu Dudau <Liviu.Dudau@arm.com> 11d5b0e70fSEmmanuel Vadot - Andre Przywara <andre.przywara@arm.com> 12d5b0e70fSEmmanuel Vadot 13d5b0e70fSEmmanuel Vadotdescription: 14d5b0e70fSEmmanuel Vadot The following bindings apply to a family of Display Processors sold as 15d5b0e70fSEmmanuel Vadot licensable IP by ARM Ltd. The bindings describe the Mali DP500, DP550 and 16d5b0e70fSEmmanuel Vadot DP650 processors that offer multiple composition layers, support for 17d5b0e70fSEmmanuel Vadot rotation and scaling output. 18d5b0e70fSEmmanuel Vadot 19d5b0e70fSEmmanuel Vadotproperties: 20d5b0e70fSEmmanuel Vadot compatible: 21d5b0e70fSEmmanuel Vadot enum: 22d5b0e70fSEmmanuel Vadot - arm,mali-dp500 23d5b0e70fSEmmanuel Vadot - arm,mali-dp550 24d5b0e70fSEmmanuel Vadot - arm,mali-dp650 25d5b0e70fSEmmanuel Vadot 26d5b0e70fSEmmanuel Vadot reg: 27d5b0e70fSEmmanuel Vadot maxItems: 1 28d5b0e70fSEmmanuel Vadot 29d5b0e70fSEmmanuel Vadot interrupts: 30d5b0e70fSEmmanuel Vadot items: 31d5b0e70fSEmmanuel Vadot - description: 32d5b0e70fSEmmanuel Vadot The interrupt used by the Display Engine (DE). Can be shared with 33d5b0e70fSEmmanuel Vadot the interrupt for the Scaling Engine (SE), but it will have to be 34d5b0e70fSEmmanuel Vadot listed individually. 35d5b0e70fSEmmanuel Vadot - description: 36d5b0e70fSEmmanuel Vadot The interrupt used by the Scaling Engine (SE). Can be shared with 37d5b0e70fSEmmanuel Vadot the interrupt for the Display Engine (DE), but it will have to be 38d5b0e70fSEmmanuel Vadot listed individually. 39d5b0e70fSEmmanuel Vadot 40d5b0e70fSEmmanuel Vadot interrupt-names: 41d5b0e70fSEmmanuel Vadot items: 42d5b0e70fSEmmanuel Vadot - const: DE 43d5b0e70fSEmmanuel Vadot - const: SE 44d5b0e70fSEmmanuel Vadot 45d5b0e70fSEmmanuel Vadot clock-names: 46d5b0e70fSEmmanuel Vadot items: 47d5b0e70fSEmmanuel Vadot - const: pxlclk 48d5b0e70fSEmmanuel Vadot - const: mclk 49d5b0e70fSEmmanuel Vadot - const: aclk 50d5b0e70fSEmmanuel Vadot - const: pclk 51d5b0e70fSEmmanuel Vadot 52d5b0e70fSEmmanuel Vadot clocks: 53d5b0e70fSEmmanuel Vadot items: 54d5b0e70fSEmmanuel Vadot - description: the pixel clock feeding the output PLL of the processor 55d5b0e70fSEmmanuel Vadot - description: the main processor clock 56d5b0e70fSEmmanuel Vadot - description: the AXI interface clock 57d5b0e70fSEmmanuel Vadot - description: the APB interface clock 58d5b0e70fSEmmanuel Vadot 59d5b0e70fSEmmanuel Vadot memory-region: 60d5b0e70fSEmmanuel Vadot maxItems: 1 61d5b0e70fSEmmanuel Vadot description: 62d5b0e70fSEmmanuel Vadot Phandle to a node describing memory to be used for the framebuffer. 63d5b0e70fSEmmanuel Vadot If not present, the framebuffer may be located anywhere in memory. 64d5b0e70fSEmmanuel Vadot 65d5b0e70fSEmmanuel Vadot arm,malidp-output-port-lines: 66d5b0e70fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint8-array 67d5b0e70fSEmmanuel Vadot description: 68d5b0e70fSEmmanuel Vadot Number of output lines/bits for each colour channel. 69d5b0e70fSEmmanuel Vadot items: 70d5b0e70fSEmmanuel Vadot - description: number of output lines for the red channel (R) 71d5b0e70fSEmmanuel Vadot - description: number of output lines for the green channel (G) 72d5b0e70fSEmmanuel Vadot - description: number of output lines for the blue channel (B) 73d5b0e70fSEmmanuel Vadot 74d5b0e70fSEmmanuel Vadot arm,malidp-arqos-value: 75d5b0e70fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 76d5b0e70fSEmmanuel Vadot description: 77d5b0e70fSEmmanuel Vadot Quality-of-Service value for the display engine FIFOs, to write 78d5b0e70fSEmmanuel Vadot into the RQOS register of the DP500. 79d5b0e70fSEmmanuel Vadot See the ARM Mali-DP500 TRM for details on the encoding. 80d5b0e70fSEmmanuel Vadot If omitted, the RQOS register will not be changed. 81d5b0e70fSEmmanuel Vadot 82d5b0e70fSEmmanuel Vadot port: 83d5b0e70fSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 84d5b0e70fSEmmanuel Vadot unevaluatedProperties: false 85d5b0e70fSEmmanuel Vadot description: 86d5b0e70fSEmmanuel Vadot Output endpoint of the controller, connecting the LCD panel signals. 87d5b0e70fSEmmanuel Vadot 88d5b0e70fSEmmanuel VadotadditionalProperties: false 89d5b0e70fSEmmanuel Vadot 90d5b0e70fSEmmanuel Vadotrequired: 91d5b0e70fSEmmanuel Vadot - compatible 92d5b0e70fSEmmanuel Vadot - reg 93d5b0e70fSEmmanuel Vadot - interrupts 94d5b0e70fSEmmanuel Vadot - interrupt-names 95d5b0e70fSEmmanuel Vadot - clocks 96d5b0e70fSEmmanuel Vadot - clock-names 97d5b0e70fSEmmanuel Vadot - port 98d5b0e70fSEmmanuel Vadot - arm,malidp-output-port-lines 99d5b0e70fSEmmanuel Vadot 100d5b0e70fSEmmanuel Vadotexamples: 101d5b0e70fSEmmanuel Vadot - | 102d5b0e70fSEmmanuel Vadot dp0: malidp@6f200000 { 103d5b0e70fSEmmanuel Vadot compatible = "arm,mali-dp650"; 104d5b0e70fSEmmanuel Vadot reg = <0x6f200000 0x20000>; 105d5b0e70fSEmmanuel Vadot memory-region = <&display_reserved>; 106d5b0e70fSEmmanuel Vadot interrupts = <168>, <168>; 107d5b0e70fSEmmanuel Vadot interrupt-names = "DE", "SE"; 108d5b0e70fSEmmanuel Vadot clocks = <&oscclk2>, <&fpgaosc0>, <&fpgaosc1>, <&fpgaosc1>; 109d5b0e70fSEmmanuel Vadot clock-names = "pxlclk", "mclk", "aclk", "pclk"; 110d5b0e70fSEmmanuel Vadot arm,malidp-output-port-lines = /bits/ 8 <8 8 8>; 111d5b0e70fSEmmanuel Vadot arm,malidp-arqos-value = <0xd000d000>; 112d5b0e70fSEmmanuel Vadot 113d5b0e70fSEmmanuel Vadot port { 114d5b0e70fSEmmanuel Vadot dp0_output: endpoint { 115d5b0e70fSEmmanuel Vadot remote-endpoint = <&tda998x_2_input>; 116d5b0e70fSEmmanuel Vadot }; 117d5b0e70fSEmmanuel Vadot }; 118d5b0e70fSEmmanuel Vadot }; 119d5b0e70fSEmmanuel Vadot... 120