1# SPDX-License-Identifier: GPL-2.0 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/display/panel/tpo,tpg110.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: TPO TPG110 Panel 8 9maintainers: 10 - Linus Walleij <linus.walleij@linaro.org> 11 - Thierry Reding <thierry.reding@gmail.com> 12 13description: |+ 14 This panel driver is a component that acts as an intermediary 15 between an RGB output and a variety of panels. The panel 16 driver is strapped up in electronics to the desired resolution 17 and other properties, and has a control interface over 3WIRE 18 SPI. By talking to the TPG110 over SPI, the strapped properties 19 can be discovered and the hardware is therefore mostly 20 self-describing. 21 22 +--------+ 23 SPI -> | TPO | -> physical display 24 RGB -> | TPG110 | 25 +--------+ 26 27 If some electrical strap or alternate resolution is desired, 28 this can be set up by taking software control of the display 29 over the SPI interface. The interface can also adjust 30 for properties of the display such as gamma correction and 31 certain electrical driving levels. 32 33 The TPG110 does not know the physical dimensions of the panel 34 connected, so this needs to be specified in the device tree. 35 36 It requires a GPIO line for control of its reset line. 37 38 The serial protocol has line names that resemble I2C but the 39 protocol is not I2C but 3WIRE SPI. 40 41 42allOf: 43 - $ref: panel-common.yaml# 44 - $ref: /schemas/spi/spi-peripheral-props.yaml# 45 46properties: 47 compatible: 48 oneOf: 49 - items: 50 - enum: 51 - ste,nomadik-nhk15-display 52 - const: tpo,tpg110 53 - const: tpo,tpg110 54 55 reg: true 56 57 grestb-gpios: 58 maxItems: 1 59 description: panel reset GPIO 60 61 spi-3wire: true 62 63 spi-max-frequency: 64 const: 3000000 65 66required: 67 - compatible 68 - reg 69 - grestb-gpios 70 - width-mm 71 - height-mm 72 - spi-3wire 73 - spi-max-frequency 74 - port 75 76unevaluatedProperties: false 77 78examples: 79 - |+ 80 spi { 81 #address-cells = <1>; 82 #size-cells = <0>; 83 84 panel: display@0 { 85 compatible = "tpo,tpg110"; 86 reg = <0>; 87 spi-3wire; 88 /* 320 ns min period ~= 3 MHz */ 89 spi-max-frequency = <3000000>; 90 /* Width and height from data sheet */ 91 width-mm = <116>; 92 height-mm = <87>; 93 grestb-gpios = <&foo_gpio 5 1>; 94 backlight = <&bl>; 95 96 port { 97 nomadik_clcd_panel: endpoint { 98 remote-endpoint = <&foo>; 99 }; 100 }; 101 }; 102 }; 103 104... 105