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
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
|
From dde4afa87452e8499c611c9a889f4c5f35d9e2bb Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.com>
Date: Thu, 3 Sep 2020 17:36:00 +0100
Subject: [PATCH] overlays: Add adafruit18 and sainsmart18 overlays
Add support for three ST7735R-based displays - adafruit18,
adafruit18_green and sainsmart18.
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
---
arch/arm/boot/dts/overlays/Makefile | 2 +
arch/arm/boot/dts/overlays/README | 15 ++++++
.../boot/dts/overlays/adafruit18-overlay.dts | 49 +++++++++++++++++++
.../boot/dts/overlays/sainsmart18-overlay.dts | 47 ++++++++++++++++++
4 files changed, 113 insertions(+)
create mode 100644 arch/arm/boot/dts/overlays/adafruit18-overlay.dts
create mode 100644 arch/arm/boot/dts/overlays/sainsmart18-overlay.dts
--- a/arch/arm/boot/dts/overlays/Makefile
+++ b/arch/arm/boot/dts/overlays/Makefile
@@ -4,6 +4,7 @@ dtb-$(CONFIG_ARCH_BCM2835) += overlay_ma
dtbo-$(CONFIG_ARCH_BCM2835) += \
act-led.dtbo \
+ adafruit18.dtbo \
adau1977-adc.dtbo \
adau7002-simple.dtbo \
ads1015.dtbo \
@@ -147,6 +148,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
rpi-tv.dtbo \
rpivid-v4l2.dtbo \
rra-digidac1-wm8741-audio.dtbo \
+ sainsmart18.dtbo \
sc16is750-i2c.dtbo \
sc16is752-i2c.dtbo \
sc16is752-spi0.dtbo \
--- a/arch/arm/boot/dts/overlays/README
+++ b/arch/arm/boot/dts/overlays/README
@@ -261,6 +261,14 @@ Params: activelow Set to "
REQUIRED
+Name: adafruit18
+Info: Overlay for the SPI-connected Adafruit 1.8" display (based on the
+ ST7735R chip). It includes support for the "green tab" version.
+Load: dtoverlay=adafruit18,<param>=<val>
+Params: green Use the adafruit18_green variant.
+ rotate Display rotation {0,90,180,270}
+
+
Name: adau1977-adc
Info: Overlay for activation of ADAU1977 ADC codec over I2C for control
and I2S for data.
@@ -2251,6 +2259,13 @@ Load: dtoverlay=rra-digidac1-wm8741-au
Params: <None>
+Name: sainsmart18
+Info: Overlay for the SPI-connected Sainsmart 1.8" display (based on the
+ ST7735R chip).
+Load: dtoverlay=sainsmart18,<param>=<val>
+Params: rotate Display rotation {0,90,180,270}
+
+
Name: sc16is750-i2c
Info: Overlay for the NXP SC16IS750 UART with I2C Interface
Enables the chip on I2C1 at 0x48 (or the "addr" parameter value). To
--- /dev/null
+++ b/arch/arm/boot/dts/overlays/adafruit18-overlay.dts
@@ -0,0 +1,49 @@
+/*
+ * Device Tree overlay for Adafruit 1.8" TFT LCD with ST7735R chip 160x128
+ */
+
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "brcm,bcm2835";
+
+ fragment@0 {
+ target = <&spidev0>;
+ __overlay__ {
+ status = "disabled";
+ };
+ };
+
+ fragment@1 {
+ target = <&spi0>;
+ __overlay__ {
+ /* needed to avoid dtc warning */
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ af18: adafruit18@0 {
+ compatible = "fbtft,adafruit18";
+ reg = <0>;
+ pinctrl-names = "default";
+ spi-max-frequency = <40000000>;
+ rotate = <90>;
+ buswidth = <8>;
+ fps = <50>;
+ height = <160>;
+ width = <128>;
+ reset-gpios = <&gpio 25 0>;
+ dc-gpios = <&gpio 24 0>;
+ led-gpios = <&gpio 18 0>;
+ bgr;
+ debug = <0>;
+ };
+ };
+ };
+
+ __overrides__ {
+ green = <&af18>, "compatible=fbtft,adafruit18_green";
+ rotate = <&af18>, "rotate:0";
+ };
+};
--- /dev/null
+++ b/arch/arm/boot/dts/overlays/sainsmart18-overlay.dts
@@ -0,0 +1,47 @@
+/*
+ * Device Tree overlay for the Sainsmart 1.8" TFT LCD with ST7735R chip 160x128
+ */
+
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "brcm,bcm2835";
+
+ fragment@0 {
+ target = <&spidev0>;
+ __overlay__ {
+ status = "disabled";
+ };
+ };
+
+ fragment@1 {
+ target = <&spi0>;
+ __overlay__ {
+ /* needed to avoid dtc warning */
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ ss18: sainsmart18@0 {
+ compatible = "fbtft,sainsmart18";
+ reg = <0>;
+ pinctrl-names = "default";
+ spi-max-frequency = <40000000>;
+ rotate = <90>;
+ buswidth = <8>;
+ fps = <50>;
+ height = <160>;
+ width = <128>;
+ reset-gpios = <&gpio 25 0>;
+ dc-gpios = <&gpio 24 0>;
+ bgr;
+ debug = <0>;
+ };
+ };
+ };
+
+ __overrides__ {
+ rotate = <&ss18>, "rotate:0";
+ };
+};
|