[Keymap] update rules.mk and config.h of helix/rev2:five_rows (#11302)

* update keyboards/helix/rev2/keymaps/five_rows/rules.mk: oled selection, led animation selection

* add OLED_UPDATE_INTERVAL support into keyboards/helix/rev2/keymaps/five_rows/oled_display.c

Support for OLED_UPDATE_INTERVAL, even for older types of OLED tasks.

* Add 'HELIX=debug/no-debug' option into 'helix/rev2/keymaps/five_rows/rules.mk'
This commit is contained in:
Takeshi ISHII
2020-12-26 02:38:07 +09:00
committed by GitHub
parent 7ca4b61922
commit 5544bf8524
3 changed files with 75 additions and 23 deletions

View File

@@ -12,6 +12,7 @@
# yes, yes +3200
# no, yes +400
LTO_ENABLE = no # if firmware size over limit, try this option
LED_ANIMATIONS = yes
# Helix Spacific Build Options
# you can uncomment and edit follows 7 Variables
@@ -26,8 +27,8 @@ HELIX_ROWS = 5 # Helix Rows is 4 or 5
ifneq ($(strip $(HELIX)),)
define KEYMAP_OPTION_PARSE
# $xinfo .$1.x #debug
# parse 'dispoff', 'consle', 'stdole', 'oled', 'sc'
# parse 'dispoff', 'consloe', 'na', 'ani', 'mini-ani'
$(if $(SHOW_PARCE),$(info parse -$1-)) #debug
ifeq ($(strip $1),dispoff)
OLED_ENABLE = no
OLED_DRIVER_ENABLE = no
@@ -37,19 +38,26 @@ ifneq ($(strip $(HELIX)),)
ifeq ($(strip $1),console)
CONSOLE_ENABLE = yes
endif
ifeq ($(strip $1),stdole)
## make HELIX=stdole helix:five_rows -- use TOP/drivers/oled/oled_driver.c
OLED_ENABLE = new
ifeq ($(strip $1),debug)
DEBUG_CONFIG = yes
endif
ifeq ($(strip $1),oled)
## make HELIX=oled helix:five_rows -- use helix/local_drivers/ssd1306.c
OLED_ENABLE = yes
ifneq ($(filter nodebug no-debug no_debug,$(strip $1)),)
DEBUG_CONFIG = no
endif
ifeq ($(strip $1),back)
LED_BACK_ENABLE = yes
ifneq ($(filter na no_ani no-ani,$(strip $1)),)
LED_ANIMATIONS = no
endif
ifeq ($(strip $1),sc)
SPLIT_KEYBOARD = yes
ifneq ($(filter mini-ani mini_ani,$(strip $1)),)
LED_ANIMATIONS = mini
endif
ifneq ($(filter ani animation,$(strip $1)),)
LED_ANIMATIONS = yes
endif
ifeq ($(strip $1),lto)
LTO_ENABLE = yes
endif
ifneq ($(filter nolto no-lto no_lto,$(strip $1)),)
LTO_ENABLE = no
endif
endef # end of KEYMAP_OPTION_PARSE
@@ -58,20 +66,23 @@ ifneq ($(strip $(HELIX)),)
$(call KEYMAP_OPTION_PARSE,$(A_OPTION_NAME))))
endif
ifeq ($(strip $(OLED_ENABLE)), new)
OLED_DRIVER_ENABLE = yes
OLED_ENABLE = no
SRC += oled_display.c
ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
OPT_DEFS += -DOLED_FONT_H=\<helixfont.h\>
else
OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"
endif
ifeq ($(strip $(LED_ANIMATIONS)), yes)
OPT_DEFS += -DLED_ANIMATIONS_LEVEL=2
endif
ifeq ($(strip $(OLED_ENABLE)), yes)
SRC += oled_display.c
ifeq ($(strip $(LED_ANIMATIONS)), mini)
OPT_DEFS += -DLED_ANIMATIONS_LEVEL=1
LED_ANIMATIONS = yes
endif
ifeq ($(strip $(DEBUG_CONFIG)), yes)
OPT_DEFS += -DDEBUG_CONFIG
endif
# convert Helix-specific options (that represent combinations of standard options)
# into QMK standard options.
include $(strip $(KEYBOARD_LOCAL_FEATURES_MK))
ifeq ($(strip $(OLED_ENABLE)), yes)
SRC += oled_display.c
endif