summaryrefslogtreecommitdiffstats
path: root/tmk_core/common.mk
diff options
context:
space:
mode:
Diffstat (limited to 'tmk_core/common.mk')
-rw-r--r--tmk_core/common.mk17
1 files changed, 16 insertions, 1 deletions
diff --git a/tmk_core/common.mk b/tmk_core/common.mk
index 063115acb..7a7b3928f 100644
--- a/tmk_core/common.mk
+++ b/tmk_core/common.mk
@@ -1,4 +1,5 @@
COMMON_DIR = common
+DEBOUNCE = $(COMMON_DIR)/debounce
ifeq ($(PLATFORM),AVR)
PLATFORM_COMMON_DIR = $(COMMON_DIR)/avr
else ifeq ($(PLATFORM),CHIBIOS)
@@ -11,6 +12,7 @@ endif
TMK_COMMON_SRC += $(COMMON_DIR)/host.c \
$(COMMON_DIR)/keyboard.c \
+ $(COMMON_DIR)/debounce.c \
$(COMMON_DIR)/action.c \
$(COMMON_DIR)/action_tapping.c \
$(COMMON_DIR)/action_macro.c \
@@ -60,7 +62,20 @@ ifeq ($(PLATFORM),TEST)
TMK_COMMON_SRC += $(PLATFORM_COMMON_DIR)/eeprom.c
endif
-
+# Debounce Modules. If implemented in matrix.c, don't use these.
+ifeq ($(strip $(SPLIT_KEYBOARD)), yes)
+ # Do nothing, debouncing is inside matrix.c inside split_common
+else ifeq ($(strip $(DEBOUNCE_ALGO)), manual)
+ # Do nothing. do your debouncing in matrix.c
+else ifeq ($(strip $(DEBOUNCE_ALGO)), sym_g)
+ TMK_COMMON_SRC += $(DEBOUNCE)/debounce_sym_g.c
+else ifeq ($(strip $(DEBOUNCE_ALGO)), eager_pk)
+ TMK_COMMON_SRC += $(DEBOUNCE)/debounce_eager_pk.c
+else ifeq ($(strip $(CUSTOM_MATRIX)), yes)
+ # Do nothing. Custom matrix code.
+else # default algorithm
+ TMK_COMMON_SRC += $(DEBOUNCE)/debounce_sym_g.c
+endif
# Option modules
BOOTMAGIC_ENABLE ?= no