-
Notifications
You must be signed in to change notification settings - Fork 6.6k
/
panel-timing.yaml
134 lines (118 loc) · 3.19 KB
/
panel-timing.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# Copyright 2023 NXP
# SPDX-License-Identifier: Apache-2.0
# Common fields for panel timings
# inherited from Linux panel bindings.
description: |
Common timing settings for display panels. These timings can be added to
a panel under display-timings node. For example:
&lcdif {
display-timings {
compatible = "zephyr,panel-timing";
hsync-len = <8>;
hfront-porch = <32>;
hback-porch = <32>;
vsync-len = <2>;
vfront-porch = <16>;
vback-porch = <14>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <0>;
clock-frequency = <62346240>;
};
};
compatible: "zephyr,panel-timing"
properties:
clock-frequency:
type: int
description: |
Pixel clock for display controller in Hz. Must be at least as large as:
(height + vsync-len + vfront-porch + vback-porch) *
(width + hsync-len + hfront-porch + hback-porch) *
desired frame rate
hsync-len:
type: int
required: true
description: |
Horizontal synchronization pulse duration of panel driven by this
controller, in pixels
vsync-len:
type: int
required: true
description: |
Vertical synchronization pulse duration of panel driven by this
controller, in lines
hback-porch:
type: int
required: true
description: |
Horizontal back porch duration of panel driven by this controller,
in pixels
vback-porch:
type: int
required: true
description: |
Vertical back porch duration of panel driven by this controller, in lines
hfront-porch:
type: int
required: true
description: |
Horizontal front porch duration of panel driven by this controller,
in pixels
vfront-porch:
type: int
required: true
description: |
Vertical front porch duration of panel driven by this controller, in lines
hsync-active:
type: int
required: true
enum:
- 0
- 1
description: |
Polarity of horizontal sync pulse
0 selects active low
1 selects active high
vsync-active:
type: int
required: true
enum:
- 0
- 1
description: |
Polarity of vertical sync pulse
0 selects active low
1 selects active high
de-active:
type: int
required: true
enum:
- 0
- 1
description: |
Polarity of data enable, sent with each horizontal interval.
0 selects active low
1 selects active high.
pixelclk-active:
type: int
required: true
enum:
- 0
- 1
description: |
Polarity of pixel clock. Selects which edge to drive data to display on.
0 drives pixel data on falling edge, and samples on rising edge.
1 drives pixel data on rising edge, and samples data on falling edge
syncclk-active:
type: int
enum:
- 0
- 1
description: |
Drive sync on rising or sample sync on falling edge. If not specified
then the controller uses the setup specified by pixelclk-active.
Use 0 to drive sync on falling edge
and sample sync on rising edge of pixel clock.
Use 1 to drive sync on rising edge
and sample sync on falling edge of pixel clock.