Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/display/panel/panel-common.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Common Properties for Display Panels
0008 
0009 maintainers:
0010   - Thierry Reding <thierry.reding@gmail.com>
0011   - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
0012 
0013 description: |
0014   This document defines device tree properties common to several classes of
0015   display panels. It doesn't constitue a device tree binding specification by
0016   itself but is meant to be referenced by device tree bindings.
0017 
0018   When referenced from panel device tree bindings the properties defined in this
0019   document are defined as follows. The panel device tree bindings are
0020   responsible for defining whether each property is required or optional.
0021 
0022 properties:
0023   # Descriptive Properties
0024   width-mm:
0025     description:
0026       Specifies the width of the physical area where images are displayed. This
0027       property is expressed in millimeters and rounded to the closest unit.
0028 
0029   height-mm:
0030     description:
0031       Specifies the height of the physical area where images are displayed. This
0032       property is expressed in millimeters and rounded to the closest unit.
0033 
0034   label:
0035     description: |
0036       The label property specifies a symbolic name for the panel as a
0037       string suitable for use by humans. It typically contains a name inscribed
0038       on the system (e.g. as an affixed label) or specified in the system's
0039       documentation (e.g. in the user's manual).
0040 
0041       If no such name exists, and unless the property is mandatory according to
0042       device tree bindings, it shall rather be omitted than constructed of
0043       non-descriptive information. For instance an LCD panel in a system that
0044       contains a single panel shall not be labelled "LCD" if that name is not
0045       inscribed on the system or used in a descriptive fashion in system
0046       documentation.
0047 
0048   rotation:
0049     description:
0050       Display rotation in degrees counter clockwise (0,90,180,270)
0051     $ref: /schemas/types.yaml#/definitions/uint32
0052     enum: [0, 90, 180, 270]
0053 
0054   # Display Timings
0055   panel-timing:
0056     description:
0057       Most display panels are restricted to a single resolution and
0058       require specific display timings. The panel-timing subnode expresses those
0059       timings.
0060     $ref: panel-timing.yaml#
0061 
0062   display-timings:
0063     description:
0064       Some display panels support several resolutions with different timings.
0065       The display-timings bindings supports specifying several timings and
0066       optionally specifying which is the native mode.
0067     $ref: display-timings.yaml#
0068 
0069   # Connectivity
0070   port:
0071     $ref: /schemas/graph.yaml#/properties/port
0072 
0073   ddc-i2c-bus:
0074     $ref: /schemas/types.yaml#/definitions/phandle
0075     description:
0076       Some panels expose EDID information through an I2C-compatible
0077       bus such as DDC2 or E-DDC. For such panels the ddc-i2c-bus contains a
0078       phandle to the system I2C controller connected to that bus.
0079 
0080   no-hpd:
0081     type: boolean
0082     description:
0083       This panel is supposed to communicate that it's ready via HPD
0084       (hot plug detect) signal, but the signal isn't hooked up so we should
0085       hardcode the max delay from the panel spec when powering up the panel.
0086 
0087   hpd-gpios:
0088     maxItems: 1
0089     description:
0090       If Hot Plug Detect (HPD) is connected to a GPIO in the system rather
0091       than a dedicated HPD pin the pin can be specified here.
0092 
0093   # Control I/Os
0094 
0095   # Many display panels can be controlled through pins driven by GPIOs. The nature
0096   # and timing of those control signals are device-specific and left for panel
0097   # device tree bindings to specify. The following GPIO specifiers can however be
0098   # used for panels that implement compatible control signals.
0099 
0100   enable-gpios:
0101     maxItems: 1
0102     description: |
0103       Specifier for a GPIO connected to the panel enable control signal. The
0104       enable signal is active high and enables operation of the panel. This
0105       property can also be used for panels implementing an active low power down
0106       signal, which is a negated version of the enable signal. Active low enable
0107       signals (or active high power down signals) can be supported by inverting
0108       the GPIO specifier polarity flag.
0109 
0110       Note that the enable signal control panel operation only and must not be
0111       confused with a backlight enable signal.
0112 
0113   reset-gpios:
0114     maxItems: 1
0115     description:
0116       Specifier for a GPIO connected to the panel reset control signal.
0117       The reset signal is active low and resets the panel internal logic
0118       while active. Active high reset signals can be supported by inverting the
0119       GPIO specifier polarity flag.
0120 
0121   te-gpios:
0122     maxItems: 1
0123     description:
0124       GPIO spec for the tearing effect synchronization signal.
0125       The tearing effect signal is active high. Active low signals can be
0126       supported by inverting the GPIO specifier polarity flag.
0127 
0128   # Power
0129   power-supply:
0130     description:
0131       Display panels require power to be supplied. While several panels need
0132       more than one power supply with panel-specific constraints governing the
0133       order and timings of the power supplies, in many cases a single power
0134       supply is sufficient, either because the panel has a single power rail, or
0135       because all its power rails can be driven by the same supply. In that case
0136       the power-supply property specifies the supply powering the panel as a
0137       phandle to a regulator.
0138 
0139   # Backlight
0140 
0141   # Most display panels include a backlight. Some of them also include a backlight
0142   # controller exposed through a control bus such as I2C or DSI. Others expose
0143   # backlight control through GPIO, PWM or other signals connected to an external
0144   # backlight controller.
0145 
0146   backlight:
0147     $ref: /schemas/types.yaml#/definitions/phandle
0148     description:
0149       For panels whose backlight is controlled by an external backlight
0150       controller, this property contains a phandle that references the
0151       controller.
0152 
0153 dependencies:
0154   width-mm: [ height-mm ]
0155   height-mm: [ width-mm ]
0156 
0157 additionalProperties: true
0158 
0159 ...