File Index
Files and directories
Sign in
FILE

panel-timing.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/display/panel/panel-timing.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/display/panel/panel-timing.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: panel timing
  8
  9maintainers:
 10  - Thierry Reding <thierry.reding@gmail.com>
 11  - Sam Ravnborg <sam@ravnborg.org>
 12
 13description: |
 14  There are different ways of describing the timing data of a panel. The
 15  devicetree representation corresponds to the one commonly found in datasheets
 16  for panels.
 17
 18  The parameters are defined as seen in the following illustration.
 19
 20  +-------+----------+-------------------------------------+----------+
 21  |       |          |        ^                            |          |
 22  |       |          |        |vsync_len                   |          |
 23  |       |          |        v                            |          |
 24  +-------+----------+-------------------------------------+----------+
 25  |       |          |        ^                            |          |
 26  |       |          |        |vback_porch                 |          |
 27  |       |          |        v                            |          |
 28  +-------+----------#######################################----------+
 29  |       |          #        ^                            #          |
 30  |       |          #        |                            #          |
 31  | hsync |  hback   #        |                            #  hfront  |
 32  |  len  |   porch  #        |       hactive              #  porch   |
 33  |<----->|<-------->#<-------+--------------------------->#<-------->|
 34  |       |          #        |                            #          |
 35  |       |          #        |vactive                     #          |
 36  |       |          #        |                            #          |
 37  |       |          #        v                            #          |
 38  +-------+----------#######################################----------+
 39  |       |          |        ^                            |          |
 40  |       |          |        |vfront_porch                |          |
 41  |       |          |        v                            |          |
 42  +-------+----------+-------------------------------------+----------+
 43
 44  The following is the panel timings shown with time on the x-axis.
 45  This matches the timing diagrams often found in data sheets.
 46
 47              Active                 Front           Sync           Back
 48              Region                 Porch                          Porch
 49  <-----------------------><----------------><-------------><-------------->
 50    //////////////////////|
 51   ////////////////////// |
 52  //////////////////////  |..................               ................
 53                                             _______________
 54
 55  Timing can be specified either as a typical value or as a tuple
 56  of min, typ, max values.
 57
 58properties:
 59
 60  clock-frequency:
 61    description: Panel clock in Hz
 62
 63  hactive:
 64    $ref: /schemas/types.yaml#/definitions/uint32
 65    description: Horizontal panel resolution in pixels
 66
 67  vactive:
 68    $ref: /schemas/types.yaml#/definitions/uint32
 69    description: Vertical panel resolution in pixels
 70
 71  hfront-porch:
 72    description: Horizontal front porch panel timing
 73    $ref: /schemas/types.yaml#/definitions/uint32-array
 74    oneOf:
 75      - maxItems: 1
 76        items:
 77          description: typical number of pixels
 78      - minItems: 3
 79        maxItems: 3
 80        items:
 81          description: min, typ, max number of pixels
 82
 83  hback-porch:
 84    description: Horizontal back porch timing
 85    $ref: /schemas/types.yaml#/definitions/uint32-array
 86    oneOf:
 87      - maxItems: 1
 88        items:
 89          description: typical number of pixels
 90      - minItems: 3
 91        maxItems: 3
 92        items:
 93          description: min, typ, max number of pixels
 94
 95  hsync-len:
 96    description: Horizontal sync length panel timing
 97    $ref: /schemas/types.yaml#/definitions/uint32-array
 98    oneOf:
 99      - maxItems: 1
100        items:
101          description: typical number of pixels
102      - minItems: 3
103        maxItems: 3
104        items:
105          description: min, typ, max number of pixels
106
107  vfront-porch:
108    description: Vertical front porch panel timing
109    $ref: /schemas/types.yaml#/definitions/uint32-array
110    oneOf:
111      - maxItems: 1
112        items:
113          description: typical number of lines
114      - minItems: 3
115        maxItems: 3
116        items:
117          description: min, typ, max number of lines
118
119  vback-porch:
120    description: Vertical back porch panel timing
121    $ref: /schemas/types.yaml#/definitions/uint32-array
122    oneOf:
123      - maxItems: 1
124        items:
125          description: typical number of lines
126      - minItems: 3
127        maxItems: 3
128        items:
129          description: min, typ, max number of lines
130
131  vsync-len:
132    description: Vertical sync length panel timing
133    $ref: /schemas/types.yaml#/definitions/uint32-array
134    oneOf:
135      - maxItems: 1
136        items:
137          description: typical number of lines
138      - minItems: 3
139        maxItems: 3
140        items:
141          description: min, typ, max number of lines
142
143  hsync-active:
144    description: |
145      Horizontal sync pulse.
146      0 selects active low, 1 selects active high.
147      If omitted then it is not used by the hardware
148    $ref: /schemas/types.yaml#/definitions/uint32
149    enum: [0, 1]
150
151  vsync-active:
152    description: |
153      Vertical sync pulse.
154      0 selects active low, 1 selects active high.
155      If omitted then it is not used by the hardware
156    $ref: /schemas/types.yaml#/definitions/uint32
157    enum: [0, 1]
158
159  de-active:
160    description: |
161      Data enable.
162      0 selects active low, 1 selects active high.
163      If omitted then it is not used by the hardware
164    $ref: /schemas/types.yaml#/definitions/uint32
165    enum: [0, 1]
166
167  pixelclk-active:
168    description: |
169      Data driving on rising or falling edge.
170      Use 0 to drive pixel data on falling edge and
171      sample data on rising edge.
172      Use 1 to drive pixel data on rising edge and
173      sample data on falling edge
174    $ref: /schemas/types.yaml#/definitions/uint32
175    enum: [0, 1]
176
177  syncclk-active:
178    description: |
179      Drive sync on rising or sample sync on falling edge.
180      If not specified then the setup is as specified by pixelclk-active.
181      Use 0 to drive sync on falling edge and
182      sample sync on rising edge of pixel clock.
183      Use 1 to drive sync on rising edge and
184      sample sync on falling edge of pixel clock
185    $ref: /schemas/types.yaml#/definitions/uint32
186    enum: [0, 1]
187
188  interlaced:
189    type: boolean
190    description: Enable interlaced mode
191
192  doublescan:
193    type: boolean
194    description: Enable double scan mode
195
196  doubleclk:
197    type: boolean
198    description: Enable double clock mode
199
200required:
201  - clock-frequency
202  - hactive
203  - vactive
204  - hfront-porch
205  - hback-porch
206  - hsync-len
207  - vfront-porch
208  - vback-porch
209  - vsync-len
210
211additionalProperties: false
212
213...
~/ Read-only file preview.