1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/display/pan 4 $id: http://devicetree.org/schemas/display/panel/panel-common.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Common Properties for Display Panels 7 title: Common Properties for Display Panels 8 8 9 maintainers: 9 maintainers: 10 - Thierry Reding <thierry.reding@gmail.com> 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Laurent Pinchart <laurent.pinchart+renesas@ 11 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 12 12 13 description: | 13 description: | 14 This document defines device tree properties 14 This document defines device tree properties common to several classes of 15 display panels. It doesn't constitute a devi !! 15 display panels. It doesn't constitue a device tree binding specification by 16 itself but is meant to be referenced by devi 16 itself but is meant to be referenced by device tree bindings. 17 17 18 When referenced from panel device tree bindi 18 When referenced from panel device tree bindings the properties defined in this 19 document are defined as follows. The panel d 19 document are defined as follows. The panel device tree bindings are 20 responsible for defining whether each proper 20 responsible for defining whether each property is required or optional. 21 21 22 properties: 22 properties: 23 # Descriptive Properties 23 # Descriptive Properties 24 width-mm: 24 width-mm: 25 description: 25 description: 26 Specifies the width of the physical area 26 Specifies the width of the physical area where images are displayed. This 27 property is expressed in millimeters and 27 property is expressed in millimeters and rounded to the closest unit. 28 28 29 height-mm: 29 height-mm: 30 description: 30 description: 31 Specifies the height of the physical are 31 Specifies the height of the physical area where images are displayed. This 32 property is expressed in millimeters and 32 property is expressed in millimeters and rounded to the closest unit. 33 33 34 label: 34 label: 35 description: | 35 description: | 36 The label property specifies a symbolic 36 The label property specifies a symbolic name for the panel as a 37 string suitable for use by humans. It ty 37 string suitable for use by humans. It typically contains a name inscribed 38 on the system (e.g. as an affixed label) 38 on the system (e.g. as an affixed label) or specified in the system's 39 documentation (e.g. in the user's manual 39 documentation (e.g. in the user's manual). 40 40 41 If no such name exists, and unless the p 41 If no such name exists, and unless the property is mandatory according to 42 device tree bindings, it shall rather be 42 device tree bindings, it shall rather be omitted than constructed of 43 non-descriptive information. For instanc 43 non-descriptive information. For instance an LCD panel in a system that 44 contains a single panel shall not be lab 44 contains a single panel shall not be labelled "LCD" if that name is not 45 inscribed on the system or used in a des 45 inscribed on the system or used in a descriptive fashion in system 46 documentation. 46 documentation. 47 47 48 rotation: 48 rotation: 49 description: 49 description: 50 Display rotation in degrees counter cloc 50 Display rotation in degrees counter clockwise (0,90,180,270) 51 $ref: /schemas/types.yaml#/definitions/uin !! 51 allOf: 52 enum: [0, 90, 180, 270] !! 52 - $ref: /schemas/types.yaml#/definitions/uint32 >> 53 - enum: [ 0, 90, 180, 270 ] 53 54 54 # Display Timings 55 # Display Timings 55 panel-timing: 56 panel-timing: >> 57 type: object 56 description: 58 description: 57 Most display panels are restricted to a 59 Most display panels are restricted to a single resolution and 58 require specific display timings. The pa 60 require specific display timings. The panel-timing subnode expresses those 59 timings. !! 61 timings as specified in the timing subnode section of the display timing 60 $ref: panel-timing.yaml# !! 62 bindings defined in 61 !! 63 Documentation/devicetree/bindings/display/panel/display-timing.txt. 62 display-timings: << 63 description: << 64 Some display panels support several reso << 65 The display-timings bindings supports sp << 66 optionally specifying which is the nativ << 67 $ref: display-timings.yaml# << 68 64 69 # Connectivity 65 # Connectivity 70 port: 66 port: 71 $ref: /schemas/graph.yaml#/properties/port !! 67 type: object >> 68 >> 69 ports: >> 70 type: object >> 71 description: >> 72 Panels receive video data through one or multiple connections. While >> 73 the nature of those connections is specific to the panel type, the >> 74 connectivity is expressed in a standard fashion using ports as specified >> 75 in the device graph bindings defined in >> 76 Documentation/devicetree/bindings/graph.txt. 72 77 73 ddc-i2c-bus: 78 ddc-i2c-bus: 74 $ref: /schemas/types.yaml#/definitions/pha 79 $ref: /schemas/types.yaml#/definitions/phandle 75 description: 80 description: 76 Some panels expose EDID information thro 81 Some panels expose EDID information through an I2C-compatible 77 bus such as DDC2 or E-DDC. For such pane 82 bus such as DDC2 or E-DDC. For such panels the ddc-i2c-bus contains a 78 phandle to the system I2C controller con 83 phandle to the system I2C controller connected to that bus. 79 84 80 no-hpd: 85 no-hpd: 81 type: boolean 86 type: boolean 82 description: 87 description: 83 This panel is supposed to communicate th 88 This panel is supposed to communicate that it's ready via HPD 84 (hot plug detect) signal, but the signal 89 (hot plug detect) signal, but the signal isn't hooked up so we should 85 hardcode the max delay from the panel sp 90 hardcode the max delay from the panel spec when powering up the panel. 86 91 87 hpd-gpios: << 88 maxItems: 1 << 89 description: << 90 If Hot Plug Detect (HPD) is connected to << 91 than a dedicated HPD pin the pin can be << 92 << 93 # Control I/Os 92 # Control I/Os 94 93 95 # Many display panels can be controlled thro 94 # Many display panels can be controlled through pins driven by GPIOs. The nature 96 # and timing of those control signals are de 95 # and timing of those control signals are device-specific and left for panel 97 # device tree bindings to specify. The follo 96 # device tree bindings to specify. The following GPIO specifiers can however be 98 # used for panels that implement compatible 97 # used for panels that implement compatible control signals. 99 98 100 enable-gpios: 99 enable-gpios: 101 maxItems: 1 100 maxItems: 1 102 description: | 101 description: | 103 Specifier for a GPIO connected to the pa 102 Specifier for a GPIO connected to the panel enable control signal. The 104 enable signal is active high and enables 103 enable signal is active high and enables operation of the panel. This 105 property can also be used for panels imp 104 property can also be used for panels implementing an active low power down 106 signal, which is a negated version of th 105 signal, which is a negated version of the enable signal. Active low enable 107 signals (or active high power down signa 106 signals (or active high power down signals) can be supported by inverting 108 the GPIO specifier polarity flag. 107 the GPIO specifier polarity flag. 109 108 110 Note that the enable signal control pane 109 Note that the enable signal control panel operation only and must not be 111 confused with a backlight enable signal. 110 confused with a backlight enable signal. 112 111 113 reset-gpios: 112 reset-gpios: 114 maxItems: 1 113 maxItems: 1 115 description: 114 description: 116 Specifier for a GPIO connected to the pa 115 Specifier for a GPIO connected to the panel reset control signal. 117 The reset signal is active low and reset 116 The reset signal is active low and resets the panel internal logic 118 while active. Active high reset signals 117 while active. Active high reset signals can be supported by inverting the 119 GPIO specifier polarity flag. 118 GPIO specifier polarity flag. 120 119 121 te-gpios: << 122 maxItems: 1 << 123 description: << 124 GPIO spec for the tearing effect synchro << 125 The tearing effect signal is active high << 126 supported by inverting the GPIO specifie << 127 << 128 # Power 120 # Power 129 power-supply: 121 power-supply: 130 description: 122 description: 131 Display panels require power to be suppl 123 Display panels require power to be supplied. While several panels need 132 more than one power supply with panel-sp 124 more than one power supply with panel-specific constraints governing the 133 order and timings of the power supplies, 125 order and timings of the power supplies, in many cases a single power 134 supply is sufficient, either because the 126 supply is sufficient, either because the panel has a single power rail, or 135 because all its power rails can be drive 127 because all its power rails can be driven by the same supply. In that case 136 the power-supply property specifies the 128 the power-supply property specifies the supply powering the panel as a 137 phandle to a regulator. 129 phandle to a regulator. 138 130 139 # Backlight 131 # Backlight 140 132 141 # Most display panels include a backlight. S 133 # Most display panels include a backlight. Some of them also include a backlight 142 # controller exposed through a control bus s 134 # controller exposed through a control bus such as I2C or DSI. Others expose 143 # backlight control through GPIO, PWM or oth 135 # backlight control through GPIO, PWM or other signals connected to an external 144 # backlight controller. 136 # backlight controller. 145 137 146 backlight: 138 backlight: 147 $ref: /schemas/types.yaml#/definitions/pha 139 $ref: /schemas/types.yaml#/definitions/phandle 148 description: 140 description: 149 For panels whose backlight is controlled 141 For panels whose backlight is controlled by an external backlight 150 controller, this property contains a pha 142 controller, this property contains a phandle that references the 151 controller. 143 controller. 152 144 153 dependencies: 145 dependencies: 154 width-mm: [ height-mm ] 146 width-mm: [ height-mm ] 155 height-mm: [ width-mm ] 147 height-mm: [ width-mm ] 156 << 157 additionalProperties: true << 158 148 159 ... 149 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.