diff options
-rw-r--r-- | drivers/ugfx/gdisp/is31fl3731c/driver.mk | 1 | ||||
-rw-r--r-- | drivers/ugfx/gdisp/is31fl3731c/gdisp_is31fl3731c.c | 12 | ||||
-rw-r--r-- | drivers/ugfx/gdisp/st7565/driver.mk | 1 | ||||
-rw-r--r-- | drivers/ugfx/gdisp/st7565/gdisp_lld_ST7565.c | 4 | ||||
-rw-r--r-- | keyboards/ergodox/infinity/board_IS31FL3731C.h | 3 | ||||
-rw-r--r-- | keyboards/ergodox/infinity/config.h | 5 | ||||
-rw-r--r-- | keyboards/ergodox/infinity/gfxconf.h | 6 | ||||
-rw-r--r-- | keyboards/ergodox/infinity/rules.mk | 9 | ||||
-rw-r--r-- | keyboards/whitefox/board_IS31FL3731C.h | 3 | ||||
-rw-r--r-- | keyboards/whitefox/config.h | 8 | ||||
-rw-r--r-- | keyboards/whitefox/gfxconf.h | 4 | ||||
-rw-r--r-- | keyboards/whitefox/rules.mk | 4 | ||||
-rw-r--r-- | quantum/visualizer/lcd_keyframes.c | 4 | ||||
-rw-r--r-- | quantum/visualizer/led_backlight_keyframes.c | 4 | ||||
-rw-r--r-- | quantum/visualizer/visualizer.mk | 35 |
15 files changed, 58 insertions, 45 deletions
diff --git a/drivers/ugfx/gdisp/is31fl3731c/driver.mk b/drivers/ugfx/gdisp/is31fl3731c/driver.mk index c9de62d1e..4364787c9 100644 --- a/drivers/ugfx/gdisp/is31fl3731c/driver.mk +++ b/drivers/ugfx/gdisp/is31fl3731c/driver.mk | |||
@@ -1,2 +1,3 @@ | |||
1 | GFXINC += drivers/ugfx/gdisp/is31fl3731c | 1 | GFXINC += drivers/ugfx/gdisp/is31fl3731c |
2 | GFXSRC += drivers/ugfx/gdisp/is31fl3731c/gdisp_is31fl3731c.c | 2 | GFXSRC += drivers/ugfx/gdisp/is31fl3731c/gdisp_is31fl3731c.c |
3 | GDISP_DRIVER_LIST += GDISPVMT_IS31FL3731C_QMK \ No newline at end of file | ||
diff --git a/drivers/ugfx/gdisp/is31fl3731c/gdisp_is31fl3731c.c b/drivers/ugfx/gdisp/is31fl3731c/gdisp_is31fl3731c.c index 0691dbfbf..3faddcda8 100644 --- a/drivers/ugfx/gdisp/is31fl3731c/gdisp_is31fl3731c.c +++ b/drivers/ugfx/gdisp/is31fl3731c/gdisp_is31fl3731c.c | |||
@@ -19,7 +19,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
19 | 19 | ||
20 | #if GFX_USE_GDISP | 20 | #if GFX_USE_GDISP |
21 | 21 | ||
22 | #define GDISP_DRIVER_VMT GDISPVMT_IS31FL3731C_QMK | 22 | #define GDISP_DRIVER_VMT GDISPVMT_IS31FL3731C_QMK |
23 | #define GDISP_SCREEN_HEIGHT LED_HEIGHT | ||
24 | #define GDISP_SCREEN_WIDTH LED_WIDTH | ||
25 | |||
23 | #include "gdisp_lld_config.h" | 26 | #include "gdisp_lld_config.h" |
24 | #include "src/gdisp/gdisp_driver.h" | 27 | #include "src/gdisp/gdisp_driver.h" |
25 | 28 | ||
@@ -33,12 +36,6 @@ extern const uint8_t CIE1931_CURVE[]; | |||
33 | /* Driver local definitions. */ | 36 | /* Driver local definitions. */ |
34 | /*===========================================================================*/ | 37 | /*===========================================================================*/ |
35 | 38 | ||
36 | #ifndef GDISP_SCREEN_HEIGHT | ||
37 | #define GDISP_SCREEN_HEIGHT 9 | ||
38 | #endif | ||
39 | #ifndef GDISP_SCREEN_WIDTH | ||
40 | #define GDISP_SCREEN_WIDTH 16 | ||
41 | #endif | ||
42 | #ifndef GDISP_INITIAL_CONTRAST | 39 | #ifndef GDISP_INITIAL_CONTRAST |
43 | #define GDISP_INITIAL_CONTRAST 0 | 40 | #define GDISP_INITIAL_CONTRAST 0 |
44 | #endif | 41 | #endif |
@@ -100,7 +97,6 @@ extern const uint8_t CIE1931_CURVE[]; | |||
100 | #define IS31_PWM_SIZE 0x90 | 97 | #define IS31_PWM_SIZE 0x90 |
101 | 98 | ||
102 | #define IS31_LED_MASK_SIZE 0x12 | 99 | #define IS31_LED_MASK_SIZE 0x12 |
103 | #define IS31_SCREEN_WIDTH 16 | ||
104 | 100 | ||
105 | #define IS31 | 101 | #define IS31 |
106 | 102 | ||
diff --git a/drivers/ugfx/gdisp/st7565/driver.mk b/drivers/ugfx/gdisp/st7565/driver.mk index 0190b6019..31fc8f1c7 100644 --- a/drivers/ugfx/gdisp/st7565/driver.mk +++ b/drivers/ugfx/gdisp/st7565/driver.mk | |||
@@ -1,2 +1,3 @@ | |||
1 | GFXINC += drivers/ugfx/gdisp/st7565 | 1 | GFXINC += drivers/ugfx/gdisp/st7565 |
2 | GFXSRC += drivers/ugfx/gdisp/st7565/gdisp_lld_ST7565.c | 2 | GFXSRC += drivers/ugfx/gdisp/st7565/gdisp_lld_ST7565.c |
3 | GDISP_DRIVER_LIST += GDISPVMT_ST7565_QMK \ No newline at end of file | ||
diff --git a/drivers/ugfx/gdisp/st7565/gdisp_lld_ST7565.c b/drivers/ugfx/gdisp/st7565/gdisp_lld_ST7565.c index 55552cb79..4a4c83e89 100644 --- a/drivers/ugfx/gdisp/st7565/gdisp_lld_ST7565.c +++ b/drivers/ugfx/gdisp/st7565/gdisp_lld_ST7565.c | |||
@@ -20,10 +20,10 @@ | |||
20 | /*===========================================================================*/ | 20 | /*===========================================================================*/ |
21 | 21 | ||
22 | #ifndef GDISP_SCREEN_HEIGHT | 22 | #ifndef GDISP_SCREEN_HEIGHT |
23 | #define GDISP_SCREEN_HEIGHT 32 | 23 | #define GDISP_SCREEN_HEIGHT LCD_HEIGHT |
24 | #endif | 24 | #endif |
25 | #ifndef GDISP_SCREEN_WIDTH | 25 | #ifndef GDISP_SCREEN_WIDTH |
26 | #define GDISP_SCREEN_WIDTH 128 | 26 | #define GDISP_SCREEN_WIDTH LCD_WIDTH |
27 | #endif | 27 | #endif |
28 | #ifndef GDISP_INITIAL_CONTRAST | 28 | #ifndef GDISP_INITIAL_CONTRAST |
29 | #define GDISP_INITIAL_CONTRAST 35 | 29 | #define GDISP_INITIAL_CONTRAST 35 |
diff --git a/keyboards/ergodox/infinity/board_IS31FL3731C.h b/keyboards/ergodox/infinity/board_IS31FL3731C.h index 2ea73f1fb..f248cc25b 100644 --- a/keyboards/ergodox/infinity/board_IS31FL3731C.h +++ b/keyboards/ergodox/infinity/board_IS31FL3731C.h | |||
@@ -22,9 +22,6 @@ static const I2CConfig i2ccfg = { | |||
22 | 400000 // clock speed (Hz); 400kHz max for IS31 | 22 | 400000 // clock speed (Hz); 400kHz max for IS31 |
23 | }; | 23 | }; |
24 | 24 | ||
25 | #define GDISP_SCREEN_WIDTH 7 | ||
26 | #define GDISP_SCREEN_HEIGHT 7 | ||
27 | |||
28 | static const uint8_t led_mask[] = { | 25 | static const uint8_t led_mask[] = { |
29 | 0xFF, 0x00, /* C1-1 -> C1-16 */ | 26 | 0xFF, 0x00, /* C1-1 -> C1-16 */ |
30 | 0xFF, 0x00, /* C2-1 -> C2-16 */ | 27 | 0xFF, 0x00, /* C2-1 -> C2-16 */ |
diff --git a/keyboards/ergodox/infinity/config.h b/keyboards/ergodox/infinity/config.h index fa157a893..c46edeb7b 100644 --- a/keyboards/ergodox/infinity/config.h +++ b/keyboards/ergodox/infinity/config.h | |||
@@ -54,11 +54,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
54 | 54 | ||
55 | #define VISUALIZER_USER_DATA_SIZE 16 | 55 | #define VISUALIZER_USER_DATA_SIZE 16 |
56 | 56 | ||
57 | #define LCD_DISPLAY_NUMBER 0 | ||
58 | #define LED_DISPLAY_NUMBER 1 | ||
59 | |||
60 | #define LED_NUM_ROWS 7 | ||
61 | #define LED_NUM_COLS 7 | ||
62 | /* | 57 | /* |
63 | * Feature disable options | 58 | * Feature disable options |
64 | * These options are also useful to firmware size reduction. | 59 | * These options are also useful to firmware size reduction. |
diff --git a/keyboards/ergodox/infinity/gfxconf.h b/keyboards/ergodox/infinity/gfxconf.h index 0d017aea9..ca338399d 100644 --- a/keyboards/ergodox/infinity/gfxconf.h +++ b/keyboards/ergodox/infinity/gfxconf.h | |||
@@ -22,12 +22,6 @@ | |||
22 | #ifndef _GFXCONF_H | 22 | #ifndef _GFXCONF_H |
23 | #define _GFXCONF_H | 23 | #define _GFXCONF_H |
24 | 24 | ||
25 | #ifndef EMULATOR | ||
26 | #define GDISP_DRIVER_LIST GDISPVMT_ST7565_QMK, GDISPVMT_IS31FL3731C_QMK | ||
27 | #else | ||
28 | #define GDISP_DRIVER_LIST GDISPVMT_EMULATOR_LCD_ERGODOX, GDISPVMT_EMULATOR_LED_ERGODOX | ||
29 | #endif | ||
30 | |||
31 | #include "common_gfxconf.h" | 25 | #include "common_gfxconf.h" |
32 | 26 | ||
33 | #endif /* _GFXCONF_H */ | 27 | #endif /* _GFXCONF_H */ |
diff --git a/keyboards/ergodox/infinity/rules.mk b/keyboards/ergodox/infinity/rules.mk index 2ccf98b8c..a341bbfce 100644 --- a/keyboards/ergodox/infinity/rules.mk +++ b/keyboards/ergodox/infinity/rules.mk | |||
@@ -66,5 +66,10 @@ LCD_BACKLIGHT_ENABLE = yes | |||
66 | MIDI_ENABLE = no | 66 | MIDI_ENABLE = no |
67 | RGBLIGHT_ENABLE = no | 67 | RGBLIGHT_ENABLE = no |
68 | 68 | ||
69 | include $(TOP_DIR)/drivers/ugfx/gdisp/st7565/driver.mk | 69 | LCD_DRIVER = st7565 |
70 | include $(TOP_DIR)/drivers/ugfx/gdisp/is31fl3731c/driver.mk \ No newline at end of file | 70 | LCD_WIDTH = 128 |
71 | LCD_HEIGHT = 32 | ||
72 | |||
73 | LED_DRIVER = is31fl3731c | ||
74 | LED_WIDTH = 7 | ||
75 | LED_HEIGHT = 7 \ No newline at end of file | ||
diff --git a/keyboards/whitefox/board_IS31FL3731C.h b/keyboards/whitefox/board_IS31FL3731C.h index 3dc5327a5..dea643f10 100644 --- a/keyboards/whitefox/board_IS31FL3731C.h +++ b/keyboards/whitefox/board_IS31FL3731C.h | |||
@@ -22,9 +22,6 @@ static const I2CConfig i2ccfg = { | |||
22 | 400000 // clock speed (Hz); 400kHz max for IS31 | 22 | 400000 // clock speed (Hz); 400kHz max for IS31 |
23 | }; | 23 | }; |
24 | 24 | ||
25 | #define GDISP_SCREEN_WIDTH 16 | ||
26 | #define GDISP_SCREEN_HEIGHT 5 | ||
27 | |||
28 | static const uint8_t led_mask[] = { | 25 | static const uint8_t led_mask[] = { |
29 | 0xFF, 0x00, /* C1-1 -> C1-16 */ | 26 | 0xFF, 0x00, /* C1-1 -> C1-16 */ |
30 | 0xFF, 0x00, /* C2-1 -> C2-16 */ | 27 | 0xFF, 0x00, /* C2-1 -> C2-16 */ |
diff --git a/keyboards/whitefox/config.h b/keyboards/whitefox/config.h index 76040bd74..dc33a7ce5 100644 --- a/keyboards/whitefox/config.h +++ b/keyboards/whitefox/config.h | |||
@@ -81,10 +81,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
81 | //#define NO_ACTION_MACRO | 81 | //#define NO_ACTION_MACRO |
82 | //#define NO_ACTION_FUNCTION | 82 | //#define NO_ACTION_FUNCTION |
83 | 83 | ||
84 | #endif | 84 | #endif \ No newline at end of file |
85 | |||
86 | // The visualizer needs gfx thread priorities | ||
87 | #define LED_DISPLAY_NUMBER 0 | ||
88 | |||
89 | #define LED_NUM_ROWS 5 | ||
90 | #define LED_NUM_COLS 16 \ No newline at end of file | ||
diff --git a/keyboards/whitefox/gfxconf.h b/keyboards/whitefox/gfxconf.h index eb93f92eb..ca338399d 100644 --- a/keyboards/whitefox/gfxconf.h +++ b/keyboards/whitefox/gfxconf.h | |||
@@ -22,10 +22,6 @@ | |||
22 | #ifndef _GFXCONF_H | 22 | #ifndef _GFXCONF_H |
23 | #define _GFXCONF_H | 23 | #define _GFXCONF_H |
24 | 24 | ||
25 | #ifndef EMULATOR | ||
26 | #define GDISP_DRIVER_LIST GDISPVMT_IS31FL3731C_QMK | ||
27 | #endif | ||
28 | |||
29 | #include "common_gfxconf.h" | 25 | #include "common_gfxconf.h" |
30 | 26 | ||
31 | #endif /* _GFXCONF_H */ | 27 | #endif /* _GFXCONF_H */ |
diff --git a/keyboards/whitefox/rules.mk b/keyboards/whitefox/rules.mk index 391148071..32273e08a 100644 --- a/keyboards/whitefox/rules.mk +++ b/keyboards/whitefox/rules.mk | |||
@@ -69,4 +69,6 @@ CUSTOM_MATRIX = yes # Custom matrix file | |||
69 | BACKLIGHT_ENABLE = yes | 69 | BACKLIGHT_ENABLE = yes |
70 | VISUALIZER_ENABLE = yes | 70 | VISUALIZER_ENABLE = yes |
71 | 71 | ||
72 | include $(TOP_DIR)/drivers/ugfx/gdisp/is31fl3731c/driver.mk | 72 | LED_DRIVER = is31fl3731c |
73 | LED_WIDTH = 16 | ||
74 | LED_HEIGHT = 5 \ No newline at end of file | ||
diff --git a/quantum/visualizer/lcd_keyframes.c b/quantum/visualizer/lcd_keyframes.c index 82e4184d2..75eb45700 100644 --- a/quantum/visualizer/lcd_keyframes.c +++ b/quantum/visualizer/lcd_keyframes.c | |||
@@ -166,8 +166,8 @@ bool lcd_keyframe_draw_logo(keyframe_animation_t* animation, visualizer_state_t* | |||
166 | // or state structs, here we use the image | 166 | // or state structs, here we use the image |
167 | 167 | ||
168 | //gdispGBlitArea is a tricky function to use since it supports blitting part of the image | 168 | //gdispGBlitArea is a tricky function to use since it supports blitting part of the image |
169 | // if you have full screen image, then just use 128 and 32 for both source and target dimensions | 169 | // if you have full screen image, then just use LCD_WIDTH and LCD_HEIGHT for both source and target dimensions |
170 | gdispGBlitArea(GDISP, 0, 0, 128, 32, 0, 0, 128, (pixel_t*)resource_lcd_logo); | 170 | gdispGBlitArea(GDISP, 0, 0, LCD_WIDTH, LCD_HEIGHT, 0, 0, LCD_WIDTH, (pixel_t*)resource_lcd_logo); |
171 | 171 | ||
172 | return false; | 172 | return false; |
173 | } | 173 | } |
diff --git a/quantum/visualizer/led_backlight_keyframes.c b/quantum/visualizer/led_backlight_keyframes.c index d2921a391..eb3f5561d 100644 --- a/quantum/visualizer/led_backlight_keyframes.c +++ b/quantum/visualizer/led_backlight_keyframes.c | |||
@@ -41,8 +41,8 @@ static void keyframe_fade_all_leds_from_to(keyframe_animation_t* animation, uint | |||
41 | } | 41 | } |
42 | 42 | ||
43 | // TODO: Should be customizable per keyboard | 43 | // TODO: Should be customizable per keyboard |
44 | #define NUM_ROWS LED_NUM_ROWS | 44 | #define NUM_ROWS LED_HEIGHT |
45 | #define NUM_COLS LED_NUM_COLS | 45 | #define NUM_COLS LED_WIDTH |
46 | 46 | ||
47 | static uint8_t crossfade_start_frame[NUM_ROWS][NUM_COLS]; | 47 | static uint8_t crossfade_start_frame[NUM_ROWS][NUM_COLS]; |
48 | static uint8_t crossfade_end_frame[NUM_ROWS][NUM_COLS]; | 48 | static uint8_t crossfade_end_frame[NUM_ROWS][NUM_COLS]; |
diff --git a/quantum/visualizer/visualizer.mk b/quantum/visualizer/visualizer.mk index 3a0f771bc..102d23b7e 100644 --- a/quantum/visualizer/visualizer.mk +++ b/quantum/visualizer/visualizer.mk | |||
@@ -20,6 +20,30 @@ | |||
20 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | 20 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
21 | # SOFTWARE. | 21 | # SOFTWARE. |
22 | 22 | ||
23 | define ADD_DRIVER | ||
24 | $(1)_DRIVER:=$(strip $($(1)_DRIVER)) | ||
25 | $(1)_WIDTH:=$(strip $($(1)_WIDTH)) | ||
26 | $(1)_HEIGHT:=$(strip $($(1)_HEIGHT)) | ||
27 | ifeq ($($(1)_DRIVER),) | ||
28 | $$(error $(1)_DRIVER is not defined) | ||
29 | endif | ||
30 | ifeq ($($(1)_WIDTH),) | ||
31 | $$(error $(1)_WIDTH is not defined) | ||
32 | endif | ||
33 | ifeq ($($(1)_HEIGHT),) | ||
34 | $$(error $(1)_HEIGHT is not defined) | ||
35 | endif | ||
36 | OPT_DEFS+=-D$(1)_WIDTH=$($(1)_WIDTH) | ||
37 | OPT_DEFS+=-D$(1)_HEIGHT=$($(1)_HEIGHT) | ||
38 | GFXDEFS+=-D$(1)_WIDTH=$($(1)_WIDTH) | ||
39 | GFXDEFS+=-D$(1)_HEIGHT=$($(1)_HEIGHT) | ||
40 | $(1)_DISPLAY_NUMBER:=$$(words $$(GDISP_DRIVER_LIST)) | ||
41 | OPT_DEFS+=-D$(1)_DISPLAY_NUMBER=$$($(1)_DISPLAY_NUMBER) | ||
42 | include $(TOP_DIR)/drivers/ugfx/gdisp/$($(1)_DRIVER)/driver.mk | ||
43 | endef | ||
44 | |||
45 | GDISP_DRIVER_LIST:= | ||
46 | |||
23 | SRC += $(VISUALIZER_DIR)/visualizer.c \ | 47 | SRC += $(VISUALIZER_DIR)/visualizer.c \ |
24 | $(VISUALIZER_DIR)/visualizer_keyframes.c | 48 | $(VISUALIZER_DIR)/visualizer_keyframes.c |
25 | EXTRAINCDIRS += $(GFXINC) $(VISUALIZER_DIR) | 49 | EXTRAINCDIRS += $(GFXINC) $(VISUALIZER_DIR) |
@@ -40,10 +64,12 @@ SRC += $(VISUALIZER_DIR)/lcd_backlight_keyframes.c | |||
40 | # Note, that the linker will strip out any resources that are not actually in use | 64 | # Note, that the linker will strip out any resources that are not actually in use |
41 | SRC += $(VISUALIZER_DIR)/resources/lcd_logo.c | 65 | SRC += $(VISUALIZER_DIR)/resources/lcd_logo.c |
42 | OPT_DEFS += -DLCD_BACKLIGHT_ENABLE | 66 | OPT_DEFS += -DLCD_BACKLIGHT_ENABLE |
67 | $(eval $(call ADD_DRIVER,LCD)) | ||
43 | endif | 68 | endif |
44 | 69 | ||
45 | ifeq ($(strip $(BACKLIGHT_ENABLE)), yes) | 70 | ifeq ($(strip $(BACKLIGHT_ENABLE)), yes) |
46 | SRC += $(VISUALIZER_DIR)/led_backlight_keyframes.c | 71 | SRC += $(VISUALIZER_DIR)/led_backlight_keyframes.c |
72 | $(eval $(call ADD_DRIVER,LED)) | ||
47 | endif | 73 | endif |
48 | 74 | ||
49 | SRC += $(VISUALIZER_DIR)/default_animations.c | 75 | SRC += $(VISUALIZER_DIR)/default_animations.c |
@@ -55,6 +81,15 @@ GFXINC += quantum/visualizer | |||
55 | GFXSRC := $(patsubst $(TOP_DIR)/%,%,$(GFXSRC)) | 81 | GFXSRC := $(patsubst $(TOP_DIR)/%,%,$(GFXSRC)) |
56 | GFXDEFS := $(patsubst %,-D%,$(patsubst -D%,%,$(GFXDEFS))) | 82 | GFXDEFS := $(patsubst %,-D%,$(patsubst -D%,%,$(GFXDEFS))) |
57 | 83 | ||
84 | GDISP_LIST_COMMA=, | ||
85 | GDISP_LIST_EMPTY= | ||
86 | GDISP_LIST_SPACE=$(GDISP_LIST_EMPTY) $(GDISP_LIST_EMPTY) | ||
87 | |||
88 | GDISP_DRIVER_LIST := $(strip $(GDISP_DRIVER_LIST)) | ||
89 | GDISP_DRIVER_LIST := $(subst $(GDISP_LIST_SPACE),$(GDISP_LIST_COMMA),$(GDISP_DRIVER_LIST)) | ||
90 | |||
91 | GFXDEFS +=-DGDISP_DRIVER_LIST="$(GDISP_DRIVER_LIST)" | ||
92 | |||
58 | ifneq ("$(wildcard $(KEYMAP_PATH)/visualizer.c)","") | 93 | ifneq ("$(wildcard $(KEYMAP_PATH)/visualizer.c)","") |
59 | SRC += keyboards/$(KEYBOARD)/keymaps/$(KEYMAP)/visualizer.c | 94 | SRC += keyboards/$(KEYBOARD)/keymaps/$(KEYMAP)/visualizer.c |
60 | else | 95 | else |