summaryrefslogtreecommitdiff
path: root/quantum/painter
diff options
context:
space:
mode:
authorDasky <32983009+daskygit@users.noreply.github.com>2024-09-18 12:44:33 +0100
committerGitHub <noreply@github.com>2024-09-18 21:44:33 +1000
commit49e339ba8d03e80f13190260ec92ba64bbb34998 (patch)
treec21ada655602b03f0a4075ce365bca62e84391ab /quantum/painter
parent7983f7409b3f002849a321757d9bf18533e931a5 (diff)
Add LD7032 support to QP. (#20828)
Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Diffstat (limited to 'quantum/painter')
-rw-r--r--quantum/painter/qp.h6
-rw-r--r--quantum/painter/qp_internal.c1
-rw-r--r--quantum/painter/rules.mk27
3 files changed, 33 insertions, 1 deletions
diff --git a/quantum/painter/qp.h b/quantum/painter/qp.h
index 820c418f43..3dc77b42cf 100644
--- a/quantum/painter/qp.h
+++ b/quantum/painter/qp.h
@@ -557,6 +557,12 @@ int16_t qp_drawtext_recolor(painter_device_t device, uint16_t x, uint16_t y, pai
557# define SH1106_NUM_DEVICES 0 557# define SH1106_NUM_DEVICES 0
558#endif // QUANTUM_PAINTER_SH1106_ENABLE 558#endif // QUANTUM_PAINTER_SH1106_ENABLE
559 559
560#ifdef QUANTUM_PAINTER_LD7032_ENABLE
561# include "qp_ld7032.h"
562#else // QUANTUM_PAINTER_LD7032_ENABLE
563# define LD7032_NUM_DEVICES 0
564#endif // QUANTUM_PAINTER_LD7032_ENABLE
565
560//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 566////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
561// Quantum Painter Extras 567// Quantum Painter Extras
562 568
diff --git a/quantum/painter/qp_internal.c b/quantum/painter/qp_internal.c
index 7d4a6430af..5097edfa07 100644
--- a/quantum/painter/qp_internal.c
+++ b/quantum/painter/qp_internal.c
@@ -19,6 +19,7 @@ enum {
19 + (GC9107_NUM_DEVICES) // GC9107 19 + (GC9107_NUM_DEVICES) // GC9107
20 + (SSD1351_NUM_DEVICES) // SSD1351 20 + (SSD1351_NUM_DEVICES) // SSD1351
21 + (SH1106_NUM_DEVICES) // SH1106 21 + (SH1106_NUM_DEVICES) // SH1106
22 + (LD7032_NUM_DEVICES) // LD7032
22}; 23};
23 24
24static painter_device_t qp_devices[QP_NUM_DEVICES] = {NULL}; 25static painter_device_t qp_devices[QP_NUM_DEVICES] = {NULL};
diff --git a/quantum/painter/rules.mk b/quantum/painter/rules.mk
index 7b2ab702ee..b773dd091c 100644
--- a/quantum/painter/rules.mk
+++ b/quantum/painter/rules.mk
@@ -17,7 +17,9 @@ VALID_QUANTUM_PAINTER_DRIVERS := \
17 gc9107_spi \ 17 gc9107_spi \
18 ssd1351_spi \ 18 ssd1351_spi \
19 sh1106_i2c \ 19 sh1106_i2c \
20 sh1106_spi 20 sh1106_spi \
21 ld7032_i2c \
22 ld7032_spi
21 23
22#------------------------------------------------------------------------------- 24#-------------------------------------------------------------------------------
23 25
@@ -182,6 +184,29 @@ define handle_quantum_painter_driver
182 $(DRIVER_PATH)/painter/oled_panel/qp_oled_panel.c \ 184 $(DRIVER_PATH)/painter/oled_panel/qp_oled_panel.c \
183 $(DRIVER_PATH)/painter/sh1106/qp_sh1106.c 185 $(DRIVER_PATH)/painter/sh1106/qp_sh1106.c
184 186
187 else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),ld7032_spi)
188 QUANTUM_PAINTER_NEEDS_SURFACE := yes
189 QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes
190 QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET := yes
191 OPT_DEFS += -DQUANTUM_PAINTER_LD7032_ENABLE -DQUANTUM_PAINTER_LD7032_SPI_ENABLE
192 COMMON_VPATH += \
193 $(DRIVER_PATH)/painter/oled_panel \
194 $(DRIVER_PATH)/painter/ld7032
195 SRC += \
196 $(DRIVER_PATH)/painter/oled_panel/qp_oled_panel.c \
197 $(DRIVER_PATH)/painter/ld7032/qp_ld7032.c
198
199 else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),ld7032_i2c)
200 QUANTUM_PAINTER_NEEDS_SURFACE := yes
201 QUANTUM_PAINTER_NEEDS_COMMS_I2C := yes
202 OPT_DEFS += -DQUANTUM_PAINTER_LD7032_ENABLE -DQUANTUM_PAINTER_LD7032_I2C_ENABLE
203 COMMON_VPATH += \
204 $(DRIVER_PATH)/painter/oled_panel \
205 $(DRIVER_PATH)/painter/ld7032
206 SRC += \
207 $(DRIVER_PATH)/painter/oled_panel/qp_oled_panel.c \
208 $(DRIVER_PATH)/painter/ld7032/qp_ld7032.c
209
185 endif 210 endif
186endef 211endef
187 212