Skip to content

Commit f6fa2ef

Browse files
committed
drivers: ssd16xx: Update DT bindings for multiple profiles
Update the device tree bindings for the SSD16xx driver to make it possible to specify multiple refresh profiles. The only profile currently supported is the 'full' profile. Signed-off-by: Andreas Sandberg <[email protected]>
1 parent b313768 commit f6fa2ef

File tree

8 files changed

+277
-202
lines changed

8 files changed

+277
-202
lines changed

boards/arm/reel_board/reel_board.dts

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -65,18 +65,22 @@
6565
reset-gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
6666
dc-gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
6767
busy-gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
68-
gdv = [10 0a];
69-
sdv = [19];
70-
vcom = <0xa8>;
71-
border-waveform = <0x71>;
72-
dummy-line = <0x1a>;
73-
gate-line-width = <0x08>;
74-
lut-initial = [
75-
22 55 AA 55 AA 55 AA 11
76-
00 00 00 00 00 00 00 00
77-
1E 1E 1E 1E 1E 1E 1E 1E
78-
01 00 00 00 00
79-
];
68+
69+
full {
70+
gdv = [10 0a];
71+
sdv = [19];
72+
vcom = <0xa8>;
73+
border-waveform = <0x71>;
74+
dummy-line = <0x1a>;
75+
gate-line-width = <0x08>;
76+
lut = [
77+
22 55 AA 55 AA 55 AA 11
78+
00 00 00 00 00 00 00 00
79+
1E 1E 1E 1E 1E 1E 1E 1E
80+
01 00 00 00 00
81+
];
82+
};
83+
8084
lut-default = [
8185
18 00 00 00 00 00 00 00
8286
00 00 00 00 00 00 00 00

boards/arm/reel_board/reel_board_v2.dts

Lines changed: 44 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -48,47 +48,50 @@
4848
reset-gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
4949
dc-gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
5050
busy-gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
51-
gdv = [15];
52-
sdv = [41 a8 32];
53-
vcom = <0x26>;
54-
border-waveform = <0x03>;
55-
dummy-line = <0x30>;
56-
gate-line-width = <0x0a>;
57-
lut-initial = [
58-
/*
59-
* Waveform Composition
60-
*
61-
* There are 7 Voltage Source (VS) Level groups
62-
* n = {0,1,2...6}, each group contains
63-
* 4 phases x = {A,B,C,D}.
64-
* 2 bits represent the voltage in a phase:
65-
* 00 – VSS, 01 – VSH1, 10 – VSL, 11 - VSH2
66-
*
67-
* For example 0x80 represents sequence VSL-VSS-VSS-VSS,
68-
*/
69-
80 60 40 00 00 00 00 /* LUT0: BB: VS 0..6 */
70-
10 60 20 00 00 00 00 /* LUT1: BW: VS 0..6 */
71-
80 60 40 00 00 00 00 /* LUT2: WB: VS 0..6 */
72-
10 60 20 00 00 00 00 /* LUT3: WW: VS 0..6 */
73-
00 00 00 00 00 00 00 /* LUT4: VCOM: VS 0..6 */
74-
/*
75-
* TPnx determines the length of each phase,
76-
* and RPn repeat count of a sequence.
77-
* TPnA, TPnB, TPnC, TPnD, RPn
78-
*
79-
* For example TP0A=3, TP0B=3, and RP0=2:
80-
* VS sequence : VSL-VSS-VSS-VSS
81-
* number of Gate Pulses (length) : 3 3 0 0
82-
* repeat count : 2
83-
*/
84-
03 03 00 00 02 /* TP0A TP0B TP0C TP0D RP0 */
85-
09 09 00 00 02 /* TP1A TP1B TP1C TP1D RP1 */
86-
03 03 00 00 02 /* TP2A TP2B TP2C TP2D RP2 */
87-
00 00 00 00 00 /* TP3A TP3B TP3C TP3D RP3 */
88-
00 00 00 00 00 /* TP4A TP4B TP4C TP4D RP4 */
89-
00 00 00 00 00 /* TP5A TP5B TP5C TP5D RP5 */
90-
00 00 00 00 00 /* TP6A TP6B TP6C TP6D RP6 */
91-
];
51+
52+
full {
53+
gdv = [15];
54+
sdv = [41 a8 32];
55+
vcom = <0x26>;
56+
border-waveform = <0x03>;
57+
dummy-line = <0x30>;
58+
gate-line-width = <0x0a>;
59+
lut = [
60+
/*
61+
* Waveform Composition
62+
*
63+
* There are 7 Voltage Source (VS) Level groups
64+
* n = {0,1,2...6}, each group contains
65+
* 4 phases x = {A,B,C,D}.
66+
* 2 bits represent the voltage in a phase:
67+
* 00 – VSS, 01 – VSH1, 10 – VSL, 11 - VSH2
68+
*
69+
* For example 0x80 represents sequence VSL-VSS-VSS-VSS,
70+
*/
71+
80 60 40 00 00 00 00 /* LUT0: BB: VS 0..6 */
72+
10 60 20 00 00 00 00 /* LUT1: BW: VS 0..6 */
73+
80 60 40 00 00 00 00 /* LUT2: WB: VS 0..6 */
74+
10 60 20 00 00 00 00 /* LUT3: WW: VS 0..6 */
75+
00 00 00 00 00 00 00 /* LUT4: VCOM: VS 0..6 */
76+
/*
77+
* TPnx determines the length of each phase,
78+
* and RPn repeat count of a sequence.
79+
* TPnA, TPnB, TPnC, TPnD, RPn
80+
*
81+
* For example TP0A=3, TP0B=3, and RP0=2:
82+
* VS sequence : VSL-VSS-VSS-VSS
83+
* number of Gate Pulses (length) : 3 3 0 0
84+
* repeat count : 2
85+
*/
86+
03 03 00 00 02 /* TP0A TP0B TP0C TP0D RP0 */
87+
09 09 00 00 02 /* TP1A TP1B TP1C TP1D RP1 */
88+
03 03 00 00 02 /* TP2A TP2B TP2C TP2D RP2 */
89+
00 00 00 00 00 /* TP3A TP3B TP3C TP3D RP3 */
90+
00 00 00 00 00 /* TP4A TP4B TP4C TP4D RP4 */
91+
00 00 00 00 00 /* TP5A TP5B TP5C TP5D RP5 */
92+
00 00 00 00 00 /* TP6A TP6B TP6C TP6D RP6 */
93+
];
94+
};
9295

9396
lut-default = [
9497
00 00 00 00 00 00 00 /* LUT0: BB: VS0..6 */

boards/shields/waveshare_epaper/waveshare_epaper_gdeh0154a07.overlay

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,11 @@
2222
dc-gpios = <&arduino_header 15 GPIO_ACTIVE_LOW>; /* D9 */
2323
reset-gpios = <&arduino_header 14 GPIO_ACTIVE_LOW>; /* D8 */
2424
busy-gpios = <&arduino_header 13 GPIO_ACTIVE_HIGH>; /* D7 */
25-
border-waveform = <0x3c>;
25+
2626
tssv = <0x80>;
27+
28+
full {
29+
border-waveform = <0x3c>;
30+
};
2731
};
2832
};

boards/shields/waveshare_epaper/waveshare_epaper_gdeh0213b1.overlay

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,22 @@
2222
dc-gpios = <&arduino_header 15 GPIO_ACTIVE_LOW>; /* D9 */
2323
reset-gpios = <&arduino_header 14 GPIO_ACTIVE_LOW>; /* D8 */
2424
busy-gpios = <&arduino_header 13 GPIO_ACTIVE_HIGH>; /* D7 */
25-
gdv = [10 0a];
26-
sdv = [19];
27-
vcom = <0xa8>;
28-
border-waveform = <0x71>;
29-
dummy-line = <0x1a>;
30-
gate-line-width = <0x08>;
31-
lut-initial = [
32-
22 55 AA 55 AA 55 AA 11
33-
00 00 00 00 00 00 00 00
34-
1E 1E 1E 1E 1E 1E 1E 1E
35-
01 00 00 00 00
36-
];
25+
26+
full {
27+
gdv = [10 0a];
28+
sdv = [19];
29+
vcom = <0xa8>;
30+
border-waveform = <0x71>;
31+
dummy-line = <0x1a>;
32+
gate-line-width = <0x08>;
33+
lut = [
34+
22 55 AA 55 AA 55 AA 11
35+
00 00 00 00 00 00 00 00
36+
1E 1E 1E 1E 1E 1E 1E 1E
37+
01 00 00 00 00
38+
];
39+
};
40+
3741
lut-default = [
3842
18 00 00 00 00 00 00 00
3943
00 00 00 00 00 00 00 00

boards/shields/waveshare_epaper/waveshare_epaper_gdeh0213b72.overlay

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -22,26 +22,29 @@
2222
dc-gpios = <&arduino_header 15 GPIO_ACTIVE_LOW>; /* D9 */
2323
reset-gpios = <&arduino_header 14 GPIO_ACTIVE_LOW>; /* D8 */
2424
busy-gpios = <&arduino_header 13 GPIO_ACTIVE_HIGH>; /* D7 */
25-
gdv = [15];
26-
sdv = [41 a8 32];
27-
vcom = <0x26>;
28-
border-waveform = <0x03>;
29-
dummy-line = <0x30>;
30-
gate-line-width = <0x0a>;
31-
lut-initial = [
32-
80 60 40 00 00 00 00
33-
10 60 20 00 00 00 00
34-
80 60 40 00 00 00 00
35-
10 60 20 00 00 00 00
36-
00 00 00 00 00 00 00
37-
03 03 00 00 02
38-
09 09 00 00 02
39-
03 03 00 00 02
40-
00 00 00 00 00
41-
00 00 00 00 00
42-
00 00 00 00 00
43-
00 00 00 00 00
44-
];
25+
26+
full {
27+
gdv = [15];
28+
sdv = [41 a8 32];
29+
vcom = <0x26>;
30+
border-waveform = <0x03>;
31+
dummy-line = <0x30>;
32+
gate-line-width = <0x0a>;
33+
lut = [
34+
80 60 40 00 00 00 00
35+
10 60 20 00 00 00 00
36+
80 60 40 00 00 00 00
37+
10 60 20 00 00 00 00
38+
00 00 00 00 00 00 00
39+
03 03 00 00 02
40+
09 09 00 00 02
41+
03 03 00 00 02
42+
00 00 00 00 00
43+
00 00 00 00 00
44+
00 00 00 00 00
45+
00 00 00 00 00
46+
];
47+
};
4548

4649
lut-default = [
4750
00 00 00 00 00 00 00

boards/shields/waveshare_epaper/waveshare_epaper_gdeh029a1.overlay

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,24 @@
2222
dc-gpios = <&arduino_header 15 GPIO_ACTIVE_LOW>; /* D9 */
2323
reset-gpios = <&arduino_header 14 GPIO_ACTIVE_LOW>; /* D8 */
2424
busy-gpios = <&arduino_header 13 GPIO_ACTIVE_HIGH>; /* D7 */
25-
gdv = [16];
26-
sdv = [0a];
27-
vcom = <0xa8>;
28-
border-waveform = <0x33>;
25+
2926
softstart = [d7 d6 9d];
30-
dummy-line = <0x1a>;
31-
gate-line-width = <0x08>;
32-
lut-initial = [
33-
50 AA 55 AA 11 00 00 00
34-
00 00 00 00 00 00 00 00
35-
00 00 00 00 FF FF 1F 00
36-
00 00 00 00 00 00
37-
];
27+
28+
full {
29+
gdv = [16];
30+
sdv = [0a];
31+
vcom = <0xa8>;
32+
border-waveform = <0x33>;
33+
dummy-line = <0x1a>;
34+
gate-line-width = <0x08>;
35+
lut = [
36+
50 AA 55 AA 11 00 00 00
37+
00 00 00 00 00 00 00 00
38+
00 00 00 00 FF FF 1F 00
39+
00 00 00 00 00 00
40+
];
41+
};
42+
3843
lut-default = [
3944
10 18 18 08 18 18 08 00
4045
00 00 00 00 00 00 00 00

0 commit comments

Comments
 (0)