160 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/display/panel/panel-common.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Common Properties for Display Panels8 9maintainers:10 - Thierry Reding <thierry.reding@gmail.com>11 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>12 13description: |14 This document defines device tree properties common to several classes of15 display panels. It doesn't constitute a device tree binding specification by16 itself but is meant to be referenced by device tree bindings.17 18 When referenced from panel device tree bindings the properties defined in this19 document are defined as follows. The panel device tree bindings are20 responsible for defining whether each property is required or optional.21 22properties:23 # Descriptive Properties24 width-mm:25 description:26 Specifies the width of the physical area where images are displayed. This27 property is expressed in millimeters and rounded to the closest unit.28 29 height-mm:30 description:31 Specifies the height of the physical area where images are displayed. This32 property is expressed in millimeters and rounded to the closest unit.33 34 label:35 description: |36 The label property specifies a symbolic name for the panel as a37 string suitable for use by humans. It typically contains a name inscribed38 on the system (e.g. as an affixed label) or specified in the system's39 documentation (e.g. in the user's manual).40 41 If no such name exists, and unless the property is mandatory according to42 device tree bindings, it shall rather be omitted than constructed of43 non-descriptive information. For instance an LCD panel in a system that44 contains a single panel shall not be labelled "LCD" if that name is not45 inscribed on the system or used in a descriptive fashion in system46 documentation.47 48 rotation:49 description:50 Display rotation in degrees counter clockwise (0,90,180,270)51 $ref: /schemas/types.yaml#/definitions/uint3252 enum: [0, 90, 180, 270]53 54 # Display Timings55 panel-timing:56 description:57 Most display panels are restricted to a single resolution and58 require specific display timings. The panel-timing subnode expresses those59 timings.60 $ref: panel-timing.yaml#61 62 display-timings:63 description:64 Some display panels support several resolutions with different timings.65 The display-timings bindings supports specifying several timings and66 optionally specifying which is the native mode.67 $ref: display-timings.yaml#68 69 # Connectivity70 port:71 $ref: /schemas/graph.yaml#/properties/port72 73 ddc-i2c-bus:74 $ref: /schemas/types.yaml#/definitions/phandle75 description:76 Some panels expose EDID information through an I2C-compatible77 bus such as DDC2 or E-DDC. For such panels the ddc-i2c-bus contains a78 phandle to the system I2C controller connected to that bus.79 80 no-hpd:81 type: boolean82 description:83 This panel is supposed to communicate that it's ready via HPD84 (hot plug detect) signal, but the signal isn't hooked up so we should85 hardcode the max delay from the panel spec when powering up the panel.86 87 hpd-gpios:88 maxItems: 189 description:90 If Hot Plug Detect (HPD) is connected to a GPIO in the system rather91 than a dedicated HPD pin the pin can be specified here.92 93 # Control I/Os94 95 # Many display panels can be controlled through pins driven by GPIOs. The nature96 # and timing of those control signals are device-specific and left for panel97 # device tree bindings to specify. The following GPIO specifiers can however be98 # used for panels that implement compatible control signals.99 100 enable-gpios:101 maxItems: 1102 description: |103 Specifier for a GPIO connected to the panel enable control signal. The104 enable signal is active high and enables operation of the panel. This105 property can also be used for panels implementing an active low power down106 signal, which is a negated version of the enable signal. Active low enable107 signals (or active high power down signals) can be supported by inverting108 the GPIO specifier polarity flag.109 110 Note that the enable signal control panel operation only and must not be111 confused with a backlight enable signal.112 113 reset-gpios:114 maxItems: 1115 description:116 Specifier for a GPIO connected to the panel reset control signal.117 The reset signal is active low and resets the panel internal logic118 while active. Active high reset signals can be supported by inverting the119 GPIO specifier polarity flag.120 121 te-gpios:122 maxItems: 1123 description:124 GPIO spec for the tearing effect synchronization signal.125 The tearing effect signal is active high. Active low signals can be126 supported by inverting the GPIO specifier polarity flag.127 128 # Power129 power-supply:130 description:131 Display panels require power to be supplied. While several panels need132 more than one power supply with panel-specific constraints governing the133 order and timings of the power supplies, in many cases a single power134 supply is sufficient, either because the panel has a single power rail, or135 because all its power rails can be driven by the same supply. In that case136 the power-supply property specifies the supply powering the panel as a137 phandle to a regulator.138 139 # Backlight140 141 # Most display panels include a backlight. Some of them also include a backlight142 # controller exposed through a control bus such as I2C or DSI. Others expose143 # backlight control through GPIO, PWM or other signals connected to an external144 # backlight controller.145 146 backlight:147 $ref: /schemas/types.yaml#/definitions/phandle148 description:149 For panels whose backlight is controlled by an external backlight150 controller, this property contains a phandle that references the151 controller.152 153dependencies:154 width-mm: [ height-mm ]155 height-mm: [ width-mm ]156 157additionalProperties: true158 159...160