From c157c19b81fbd8b516de0eb5e854d278669cff1a Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 13 Oct 2023 17:25:32 +1100 Subject: [PATCH] Dedupe I2C, SPI, UART driver inclusions (#22253) --- builddefs/common_features.mk | 185 +++++++++--------- docs/i2c_driver.md | 12 ++ docs/spi_driver.md | 12 ++ docs/uart_driver.md | 12 ++ keyboards/3w6/rev1/rules.mk | 2 +- keyboards/3w6/rev2/rules.mk | 2 +- keyboards/40percentclub/ut47/rules.mk | 2 +- keyboards/aeboards/satellite/rev1/rules.mk | 2 +- keyboards/anavi/knob1/rules.mk | 2 - keyboards/anavi/knobs3/rules.mk | 2 - keyboards/bajjak/rules.mk | 2 +- keyboards/barleycorn_smd/rules.mk | 2 +- keyboards/bioi/g60/rules.mk | 2 +- keyboards/bioi/g60ble/rules.mk | 2 +- keyboards/bioi/morgan65/rules.mk | 2 +- keyboards/centromere/rules.mk | 2 +- keyboards/clueboard/2x1800/2021/rules.mk | 3 +- keyboards/converter/palm_usb/rules.mk | 2 +- keyboards/converter/sun_usb/rules.mk | 2 +- keyboards/dc01/left/rules.mk | 4 +- keyboards/dichotomy/rules.mk | 2 +- keyboards/ergodox_ez/rules.mk | 2 +- keyboards/ergodox_stm32/rules.mk | 2 +- keyboards/fallacy/rules.mk | 2 +- keyboards/fc660c/rules.mk | 2 +- keyboards/fc980c/rules.mk | 2 +- keyboards/ferris/0_1/rules.mk | 2 +- keyboards/ferris/0_2/rules.mk | 2 +- keyboards/frobiac/blackbowl/rules.mk | 2 +- keyboards/gboards/ergotaco/rules.mk | 3 +- keyboards/gboards/georgi/rules.mk | 3 +- .../gboards/gergo/keymaps/colemak/rules.mk | 3 +- .../gboards/gergo/keymaps/default/rules.mk | 3 +- keyboards/gboards/gergo/keymaps/germ/rules.mk | 3 +- .../gboards/gergo/keymaps/gotham/rules.mk | 3 +- keyboards/gboards/gergo/rules.mk | 2 +- keyboards/gboards/gergoplex/rules.mk | 2 +- keyboards/geistmaschine/macropod/rules.mk | 2 +- keyboards/glenpickle/chimera_ergo/rules.mk | 2 +- keyboards/glenpickle/chimera_ls/rules.mk | 2 +- keyboards/glenpickle/chimera_ortho/rules.mk | 2 +- .../glenpickle/chimera_ortho_plus/rules.mk | 2 +- keyboards/handwired/dactyl/rules.mk | 2 +- keyboards/handwired/dqz11n1g/rules.mk | 2 +- keyboards/handwired/dygma/raise/rules.mk | 2 +- keyboards/handwired/frenchdev/rules.mk | 4 +- keyboards/handwired/lagrange/rules.mk | 3 +- keyboards/handwired/onekey/kb2040/rules.mk | 2 - .../onekey/keymaps/i2c_scanner/rules.mk | 2 +- keyboards/handwired/pterodactyl/rules.mk | 2 +- keyboards/hazel/bad_wings/rules.mk | 2 +- keyboards/hotdox/rules.mk | 2 +- keyboards/hs60/v2/ansi/rules.mk | 4 +- keyboards/hs60/v2/hhkb/rules.mk | 4 +- keyboards/hs60/v2/iso/rules.mk | 4 +- keyboards/ibm/model_m/mschwingen/rules.mk | 4 +- keyboards/ingrained/rules.mk | 2 +- keyboards/kagizaraya/chidori/rules.mk | 2 +- keyboards/keebwerk/mega/ansi/rules.mk | 2 +- keyboards/keyboardio/model01/rules.mk | 2 +- keyboards/keyhive/honeycomb/rules.mk | 2 +- keyboards/kprepublic/bm60hsrgb/rev2/rules.mk | 2 +- .../kprepublic/bm60hsrgb_iso/rev2/rules.mk | 2 +- .../kprepublic/bm60hsrgb_poker/rev2/rules.mk | 2 +- keyboards/ktec/ergodone/rules.mk | 2 +- keyboards/matrix/abelx/rules.mk | 2 +- keyboards/matrix/m20add/rules.mk | 2 +- keyboards/mechwild/sugarglider/rules.mk | 2 +- keyboards/mitosis/rules.mk | 2 +- keyboards/molecule/rules.mk | 2 +- keyboards/moon/rules.mk | 2 +- keyboards/moonlander/rules.mk | 2 +- keyboards/mt/split75/rules.mk | 2 +- keyboards/neson_design/700e/rules.mk | 3 +- keyboards/neson_design/n6/rules.mk | 3 +- keyboards/novelkeys/nk65/rules.mk | 4 +- keyboards/novelkeys/nk87/rules.mk | 4 +- keyboards/nullbitsco/nibble/rules.mk | 2 +- keyboards/nullbitsco/snap/rules.mk | 4 +- keyboards/nullbitsco/tidbit/rules.mk | 4 +- keyboards/oddforge/vea/rules.mk | 2 +- keyboards/phoenix/config.h | 1 - keyboards/phoenix/halconf.h | 2 + keyboards/redox_w/rules.mk | 2 +- keyboards/rgbkb/mun/rules.mk | 2 +- keyboards/rgbkb/sol3/rules.mk | 2 +- keyboards/satt/comet46/rules.mk | 2 +- keyboards/sirius/uni660/rev1/rules.mk | 2 +- keyboards/sirius/uni660/rev2/rules.mk | 2 +- keyboards/spaceholdings/nebula12/rules.mk | 2 +- keyboards/spaceholdings/nebula68/rules.mk | 2 +- keyboards/spiderisland/split78/rules.mk | 2 +- keyboards/switchplate/southpaw_65/rules.mk | 2 +- keyboards/sx60/rules.mk | 2 +- keyboards/system76/launch_1/rules.mk | 2 +- keyboards/telophase/rules.mk | 2 +- keyboards/tkc/portico/rules.mk | 2 +- keyboards/tkc/portico75/keymaps/via/rules.mk | 2 +- keyboards/torn/rules.mk | 2 +- keyboards/touchpad/rules.mk | 3 +- keyboards/viktus/sp111/rules.mk | 2 +- keyboards/wilba_tech/rama_works_kara/rules.mk | 4 +- keyboards/wilba_tech/rama_works_koyu/rules.mk | 4 +- .../wilba_tech/rama_works_m10_c/rules.mk | 4 +- .../wilba_tech/rama_works_m50_a/rules.mk | 4 +- .../wilba_tech/rama_works_m60_a/rules.mk | 4 +- .../wilba_tech/rama_works_m65_b/rules.mk | 4 +- .../wilba_tech/rama_works_m65_bx/rules.mk | 4 +- keyboards/wilba_tech/rama_works_m6_b/rules.mk | 4 +- .../wilba_tech/rama_works_u80_a/rules.mk | 4 +- keyboards/wilba_tech/wt60_a/rules.mk | 2 +- keyboards/wilba_tech/wt60_b/rules.mk | 4 +- keyboards/wilba_tech/wt60_bx/rules.mk | 4 +- keyboards/wilba_tech/wt60_c/rules.mk | 4 +- keyboards/wilba_tech/wt65_a/rules.mk | 2 +- keyboards/wilba_tech/wt65_b/rules.mk | 2 +- keyboards/wilba_tech/wt75_a/rules.mk | 2 +- keyboards/wilba_tech/wt75_b/rules.mk | 2 +- keyboards/wilba_tech/wt75_c/rules.mk | 2 +- keyboards/wilba_tech/wt80_a/rules.mk | 2 +- keyboards/wilba_tech/zeal60/rules.mk | 4 +- keyboards/wilba_tech/zeal65/rules.mk | 4 +- keyboards/xelus/dawn60/rev1/rules.mk | 2 +- keyboards/xelus/dawn60/rev1_qmk/rules.mk | 2 +- keyboards/xiudi/xd84/rules.mk | 2 +- keyboards/xiudi/xd96/rules.mk | 2 +- keyboards/yiancardesigns/barleycorn/rules.mk | 2 +- keyboards/yiancardesigns/gingham/rules.mk | 4 +- keyboards/yiancardesigns/seigaiha/rules.mk | 2 +- keyboards/ymdk/sp64/rules.mk | 2 +- 130 files changed, 284 insertions(+), 249 deletions(-) diff --git a/builddefs/common_features.mk b/builddefs/common_features.mk index d08b3751fc..84a0300579 100644 --- a/builddefs/common_features.mk +++ b/builddefs/common_features.mk @@ -151,30 +151,25 @@ ifeq ($(strip $(POINTING_DEVICE_ENABLE)), yes) endif OPT_DEFS += -DPOINTING_DEVICE_DRIVER_$(strip $(POINTING_DEVICE_DRIVER)) ifeq ($(strip $(POINTING_DEVICE_DRIVER)), adns9800) - OPT_DEFS += -DSTM32_SPI -DHAL_USE_SPI=TRUE - QUANTUM_LIB_SRC += spi_master.c + SPI_DRIVER_REQUIRED = yes else ifeq ($(strip $(POINTING_DEVICE_DRIVER)), analog_joystick) OPT_DEFS += -DSTM32_ADC -DHAL_USE_ADC=TRUE LIB_SRC += analog.c else ifeq ($(strip $(POINTING_DEVICE_DRIVER)), cirque_pinnacle_i2c) - OPT_DEFS += -DSTM32_I2C -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes SRC += drivers/sensors/cirque_pinnacle.c SRC += drivers/sensors/cirque_pinnacle_gestures.c SRC += $(QUANTUM_DIR)/pointing_device/pointing_device_gestures.c - QUANTUM_LIB_SRC += i2c_master.c else ifeq ($(strip $(POINTING_DEVICE_DRIVER)), cirque_pinnacle_spi) - OPT_DEFS += -DSTM32_SPI -DHAL_USE_SPI=TRUE + SPI_DRIVER_REQUIRED = yes SRC += drivers/sensors/cirque_pinnacle.c SRC += drivers/sensors/cirque_pinnacle_gestures.c SRC += $(QUANTUM_DIR)/pointing_device/pointing_device_gestures.c - QUANTUM_LIB_SRC += spi_master.c else ifeq ($(strip $(POINTING_DEVICE_DRIVER)), pimoroni_trackball) - OPT_DEFS += -DSTM32_SPI -DHAL_USE_I2C=TRUE - QUANTUM_LIB_SRC += i2c_master.c + I2C_DRIVER_REQUIRED = yes else ifneq ($(filter $(strip $(POINTING_DEVICE_DRIVER)),pmw3360 pmw3389),) - OPT_DEFS += -DSTM32_SPI -DHAL_USE_SPI=TRUE + SPI_DRIVER_REQUIRED = yes SRC += drivers/sensors/pmw33xx_common.c - QUANTUM_LIB_SRC += spi_master.c endif endif endif @@ -204,12 +199,12 @@ else else ifeq ($(strip $(EEPROM_DRIVER)), i2c) # External I2C EEPROM implementation OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_I2C - QUANTUM_LIB_SRC += i2c_master.c + I2C_DRIVER_REQUIRED = yes SRC += eeprom_driver.c eeprom_i2c.c else ifeq ($(strip $(EEPROM_DRIVER)), spi) # External SPI EEPROM implementation OPT_DEFS += -DEEPROM_DRIVER -DEEPROM_SPI - QUANTUM_LIB_SRC += spi_master.c + SPI_DRIVER_REQUIRED = yes SRC += eeprom_driver.c eeprom_spi.c else ifeq ($(strip $(EEPROM_DRIVER)), legacy_stm32_flash) # STM32 Emulated EEPROM, backed by MCU flash (soon to be deprecated) @@ -308,10 +303,10 @@ ifneq ($(strip $(FLASH_DRIVER)), none) else OPT_DEFS += -DFLASH_ENABLE ifeq ($(strip $(FLASH_DRIVER)),spi) + SPI_DRIVER_REQUIRED = yes OPT_DEFS += -DFLASH_DRIVER -DFLASH_SPI COMMON_VPATH += $(DRIVER_PATH)/flash SRC += flash_spi.c - QUANTUM_LIB_SRC += spi_master.c endif endif endif @@ -380,80 +375,73 @@ endif CIE1931_CURVE := yes ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3218) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3218-simple.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3731) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3731-simple.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3733) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3733-simple.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3736) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3736-simple.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3737) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3737-simple.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3741) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3741-simple.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3742a) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3743a) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3745) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), is31fl3746a) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(LED_MATRIX_DRIVER)), snled27351) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led SRC += snled27351-simple.c - QUANTUM_LIB_SRC += i2c_master.c endif endif @@ -491,87 +479,79 @@ endif RGB_KEYCODES_ENABLE := yes ifeq ($(strip $(RGB_MATRIX_DRIVER)), aw20216s) - OPT_DEFS += -DHAL_USE_SPI=TRUE + SPI_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led SRC += aw20216s.c - QUANTUM_LIB_SRC += spi_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3218) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3218.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3731) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3731.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3733) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3733.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3736) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3736.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3737) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3737.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3741) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3741.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3742a) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3743a) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3745) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), is31fl3746a) - OPT_DEFS += -DIS31FLCOMMON -DHAL_USE_I2C=TRUE + OPT_DEFS += -DIS31FLCOMMON + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31flcommon.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), snled27351) - OPT_DEFS += -DHAL_USE_I2C=TRUE + I2C_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led SRC += snled27351.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(RGB_MATRIX_DRIVER)), ws2812) @@ -638,35 +618,6 @@ ifeq ($(strip $(BACKLIGHT_ENABLE)), yes) endif endif -VALID_WS2812_DRIVER_TYPES := bitbang custom i2c pwm spi vendor - -WS2812_DRIVER ?= bitbang -ifeq ($(strip $(WS2812_DRIVER_REQUIRED)), yes) - ifeq ($(filter $(WS2812_DRIVER),$(VALID_WS2812_DRIVER_TYPES)),) - $(call CATASTROPHIC_ERROR,Invalid WS2812_DRIVER,WS2812_DRIVER="$(WS2812_DRIVER)" is not a valid WS2812 driver) - endif - - OPT_DEFS += -DWS2812_$(strip $(shell echo $(WS2812_DRIVER) | tr '[:lower:]' '[:upper:]')) - - SRC += ws2812_$(strip $(WS2812_DRIVER)).c - - ifeq ($(strip $(PLATFORM)), CHIBIOS) - ifeq ($(strip $(WS2812_DRIVER)), pwm) - OPT_DEFS += -DSTM32_DMA_REQUIRED=TRUE - endif - endif - - # add extra deps - ifeq ($(strip $(WS2812_DRIVER)), i2c) - QUANTUM_LIB_SRC += i2c_master.c - endif -endif - -ifeq ($(strip $(APA102_DRIVER_REQUIRED)), yes) - COMMON_VPATH += $(DRIVER_PATH)/led - SRC += apa102.c -endif - ifeq ($(strip $(CIE1931_CURVE)), yes) OPT_DEFS += -DUSE_CIE1931_CURVE LED_TABLES := yes @@ -787,8 +738,8 @@ ifeq ($(strip $(HAPTIC_ENABLE)),yes) COMMON_VPATH += $(DRIVER_PATH)/haptic ifeq ($(strip $(HAPTIC_DRIVER)), drv2605l) + I2C_DRIVER_REQUIRED = yes SRC += drv2605l.c - QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(HAPTIC_DRIVER)), solenoid) @@ -823,10 +774,10 @@ ifeq ($(strip $(OLED_ENABLE)), yes) OPT_DEFS += -DOLED_TRANSPORT_$(strip $(shell echo $(OLED_TRANSPORT) | tr '[:lower:]' '[:upper:]')) ifeq ($(strip $(OLED_TRANSPORT)), i2c) - QUANTUM_LIB_SRC += i2c_master.c + I2C_DRIVER_REQUIRED = yes endif ifeq ($(strip $(OLED_TRANSPORT)), spi) - QUANTUM_LIB_SRC += spi_master.c + SPI_DRIVER_REQUIRED = yes endif endif endif @@ -834,9 +785,9 @@ endif ifeq ($(strip $(ST7565_ENABLE)), yes) OPT_DEFS += -DST7565_ENABLE + SPI_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/oled # For glcdfont.h COMMON_VPATH += $(DRIVER_PATH)/lcd - QUANTUM_LIB_SRC += spi_master.c SRC += st7565.c endif @@ -974,18 +925,16 @@ ifeq ($(strip $(BLUETOOTH_ENABLE)), yes) SRC += outputselect.c ifeq ($(strip $(BLUETOOTH_DRIVER)), bluefruit_le) - OPT_DEFS += -DHAL_USE_SPI=TRUE + SPI_DRIVER_REQUIRED = yes SRC += $(DRIVER_PATH)/bluetooth/bluetooth.c SRC += $(DRIVER_PATH)/bluetooth/bluefruit_le.cpp QUANTUM_LIB_SRC += analog.c - QUANTUM_LIB_SRC += spi_master.c endif ifeq ($(strip $(BLUETOOTH_DRIVER)), rn42) - OPT_DEFS += -DHAL_USE_SERIAL=TRUE + UART_DRIVER_REQUIRED = yes SRC += $(DRIVER_PATH)/bluetooth/bluetooth.c SRC += $(DRIVER_PATH)/bluetooth/rn42.c - QUANTUM_LIB_SRC += uart.c endif endif @@ -1004,3 +953,47 @@ ifeq ($(strip $(OS_DETECTION_ENABLE)), yes) OPT_DEFS += -DOS_DETECTION_DEBUG_ENABLE endif endif + +VALID_WS2812_DRIVER_TYPES := bitbang custom i2c pwm spi vendor + +WS2812_DRIVER ?= bitbang +ifeq ($(strip $(WS2812_DRIVER_REQUIRED)), yes) + ifeq ($(filter $(WS2812_DRIVER),$(VALID_WS2812_DRIVER_TYPES)),) + $(call CATASTROPHIC_ERROR,Invalid WS2812_DRIVER,WS2812_DRIVER="$(WS2812_DRIVER)" is not a valid WS2812 driver) + endif + + OPT_DEFS += -DWS2812_$(strip $(shell echo $(WS2812_DRIVER) | tr '[:lower:]' '[:upper:]')) + + SRC += ws2812_$(strip $(WS2812_DRIVER)).c + + ifeq ($(strip $(PLATFORM)), CHIBIOS) + ifeq ($(strip $(WS2812_DRIVER)), pwm) + OPT_DEFS += -DSTM32_DMA_REQUIRED=TRUE + endif + endif + + # add extra deps + ifeq ($(strip $(WS2812_DRIVER)), i2c) + I2C_DRIVER_REQUIRED = yes + endif +endif + +ifeq ($(strip $(APA102_DRIVER_REQUIRED)), yes) + COMMON_VPATH += $(DRIVER_PATH)/led + SRC += apa102.c +endif + +ifeq ($(strip $(I2C_DRIVER_REQUIRED)), yes) + OPT_DEFS += -DHAL_USE_I2C=TRUE + QUANTUM_LIB_SRC += i2c_master.c +endif + +ifeq ($(strip $(SPI_DRIVER_REQUIRED)), yes) + OPT_DEFS += -DHAL_USE_SPI=TRUE + QUANTUM_LIB_SRC += spi_master.c +endif + +ifeq ($(strip $(UART_DRIVER_REQUIRED)), yes) + OPT_DEFS += -DHAL_USE_SERIAL=TRUE + QUANTUM_LIB_SRC += uart.c +endif diff --git a/docs/i2c_driver.md b/docs/i2c_driver.md index 92b666b5e3..faff0a1d7b 100644 --- a/docs/i2c_driver.md +++ b/docs/i2c_driver.md @@ -2,6 +2,18 @@ The I2C Master drivers used in QMK have a set of common functions to allow portability between MCUs. +## Usage :id=usage + +In most cases, the I2C Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver.md). + +However, if you need to use the driver standalone, add the following to your `rules.mk`: + +```make +I2C_DRIVER_REQUIRED = yes +``` + +You can then call the I2C API by including `i2c_master.h` in your code. + ## I2C Addressing :id=note-on-i2c-addresses All of the addresses expected by this driver should be pushed to the upper 7 bits of the address byte. Setting diff --git a/docs/spi_driver.md b/docs/spi_driver.md index 1faa9f0773..569a19f1db 100644 --- a/docs/spi_driver.md +++ b/docs/spi_driver.md @@ -2,6 +2,18 @@ The SPI Master drivers used in QMK have a set of common functions to allow portability between MCUs. +## Usage :id=usage + +In most cases, the SPI Master driver code is automatically included if you are using a feature or driver which requires it, such as [OLED](feature_oled_driver.md). + +However, if you need to use the driver standalone, add the following to your `rules.mk`: + +```make +SPI_DRIVER_REQUIRED = yes +``` + +You can then call the SPI API by including `spi_master.h` in your code. + ## AVR Configuration :id=avr-configuration No special setup is required - just connect the `SS`, `SCK`, `MOSI` and `MISO` pins of your SPI devices to the matching pins on the MCU: diff --git a/docs/uart_driver.md b/docs/uart_driver.md index a44f2c28d9..a88278d543 100644 --- a/docs/uart_driver.md +++ b/docs/uart_driver.md @@ -4,6 +4,18 @@ The UART drivers used in QMK have a set of common functions to allow portability Currently, this driver does not support enabling hardware flow control (the `RTS` and `CTS` pins) if available, but may do so in future. +## Usage :id=usage + +In most cases, the UART driver code is automatically included if you are using a feature or driver which requires it. + +However, if you need to use the driver standalone, add the following to your `rules.mk`: + +```make +UART_DRIVER_REQUIRED = yes +``` + +You can then call the UART API by including `uart.h` in your code. + ## AVR Configuration :id=avr-configuration No special setup is required - just connect the `RX` and `TX` pins of your UART device to the opposite pins on the MCU: diff --git a/keyboards/3w6/rev1/rules.mk b/keyboards/3w6/rev1/rules.mk index 2194870d6b..b7988ce4f5 100644 --- a/keyboards/3w6/rev1/rules.mk +++ b/keyboards/3w6/rev1/rules.mk @@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes LTO_ENABLE = no SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/3w6/rev2/rules.mk b/keyboards/3w6/rev2/rules.mk index 2194870d6b..b7988ce4f5 100644 --- a/keyboards/3w6/rev2/rules.mk +++ b/keyboards/3w6/rev2/rules.mk @@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes LTO_ENABLE = no SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/40percentclub/ut47/rules.mk b/keyboards/40percentclub/ut47/rules.mk index 3b1b719e14..6ba6aa5f6f 100644 --- a/keyboards/40percentclub/ut47/rules.mk +++ b/keyboards/40percentclub/ut47/rules.mk @@ -13,4 +13,4 @@ AUDIO_ENABLE = no # Audio output # custom matrix setup CUSTOM_MATRIX = yes SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/aeboards/satellite/rev1/rules.mk b/keyboards/aeboards/satellite/rev1/rules.mk index 1a4657b08c..f95b0f015d 100644 --- a/keyboards/aeboards/satellite/rev1/rules.mk +++ b/keyboards/aeboards/satellite/rev1/rules.mk @@ -18,4 +18,4 @@ COMMON_VPATH += $(DRIVER_PATH)/issi # project specific files SRC += drivers/led/issi/is31fl3731.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/anavi/knob1/rules.mk b/keyboards/anavi/knob1/rules.mk index 0e5631b02b..dd68e9d3b0 100644 --- a/keyboards/anavi/knob1/rules.mk +++ b/keyboards/anavi/knob1/rules.mk @@ -1,3 +1 @@ OLED_ENABLE = yes - -OPT_DEFS += -DHAL_USE_I2C=TRUE diff --git a/keyboards/anavi/knobs3/rules.mk b/keyboards/anavi/knobs3/rules.mk index 0e5631b02b..dd68e9d3b0 100644 --- a/keyboards/anavi/knobs3/rules.mk +++ b/keyboards/anavi/knobs3/rules.mk @@ -1,3 +1 @@ OLED_ENABLE = yes - -OPT_DEFS += -DHAL_USE_I2C=TRUE diff --git a/keyboards/bajjak/rules.mk b/keyboards/bajjak/rules.mk index 13148ecb04..21db4112e0 100644 --- a/keyboards/bajjak/rules.mk +++ b/keyboards/bajjak/rules.mk @@ -26,4 +26,4 @@ AUDIO_SUPPORTED = no # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/barleycorn_smd/rules.mk b/keyboards/barleycorn_smd/rules.mk index 173368a047..69ecebae2a 100644 --- a/keyboards/barleycorn_smd/rules.mk +++ b/keyboards/barleycorn_smd/rules.mk @@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output CUSTOM_MATRIX = lite SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/bioi/g60/rules.mk b/keyboards/bioi/g60/rules.mk index f4532628ae..375cb52732 100644 --- a/keyboards/bioi/g60/rules.mk +++ b/keyboards/bioi/g60/rules.mk @@ -18,5 +18,5 @@ BLUETOOTH_ENABLE = yes VIA_ENABLE = yes # VIA support should be enabled here due to the main() loop will be compiled first. -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes SRC += bluetooth_custom.c diff --git a/keyboards/bioi/g60ble/rules.mk b/keyboards/bioi/g60ble/rules.mk index 2e79ce77a5..6bfcc62d7e 100644 --- a/keyboards/bioi/g60ble/rules.mk +++ b/keyboards/bioi/g60ble/rules.mk @@ -15,5 +15,5 @@ LTO_ENABLE = yes BLUETOOTH_ENABLE = yes -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes SRC += bluetooth_custom.c diff --git a/keyboards/bioi/morgan65/rules.mk b/keyboards/bioi/morgan65/rules.mk index f4532628ae..375cb52732 100644 --- a/keyboards/bioi/morgan65/rules.mk +++ b/keyboards/bioi/morgan65/rules.mk @@ -18,5 +18,5 @@ BLUETOOTH_ENABLE = yes VIA_ENABLE = yes # VIA support should be enabled here due to the main() loop will be compiled first. -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes SRC += bluetooth_custom.c diff --git a/keyboards/centromere/rules.mk b/keyboards/centromere/rules.mk index 2171d801e5..26081e4132 100644 --- a/keyboards/centromere/rules.mk +++ b/keyboards/centromere/rules.mk @@ -18,4 +18,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/clueboard/2x1800/2021/rules.mk b/keyboards/clueboard/2x1800/2021/rules.mk index e9f44d7bd2..19c7eb2946 100644 --- a/keyboards/clueboard/2x1800/2021/rules.mk +++ b/keyboards/clueboard/2x1800/2021/rules.mk @@ -1 +1,2 @@ -QUANTUM_LIB_SRC += max7219.c spi_master.c +SPI_DRIVER_REQUIRED = yes +QUANTUM_LIB_SRC += max7219.c diff --git a/keyboards/converter/palm_usb/rules.mk b/keyboards/converter/palm_usb/rules.mk index e02b683d3b..72d9daf6d9 100644 --- a/keyboards/converter/palm_usb/rules.mk +++ b/keyboards/converter/palm_usb/rules.mk @@ -14,6 +14,6 @@ RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. CUSTOM_MATRIX = yes SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes DEFAULT_FOLDER = converter/palm_usb/stowaway diff --git a/keyboards/converter/sun_usb/rules.mk b/keyboards/converter/sun_usb/rules.mk index ee54c6cf11..ae20f51b37 100644 --- a/keyboards/converter/sun_usb/rules.mk +++ b/keyboards/converter/sun_usb/rules.mk @@ -14,6 +14,6 @@ RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. CUSTOM_MATRIX = yes SRC += matrix.c led.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes DEFAULT_FOLDER = converter/sun_usb/type5 diff --git a/keyboards/dc01/left/rules.mk b/keyboards/dc01/left/rules.mk index 72485a3dd6..3a9422733c 100644 --- a/keyboards/dc01/left/rules.mk +++ b/keyboards/dc01/left/rules.mk @@ -11,5 +11,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality AUDIO_ENABLE = no # Audio output CUSTOM_MATRIX = yes # Use custom matrix -SRC += matrix.c \ - i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/dichotomy/rules.mk b/keyboards/dichotomy/rules.mk index 040710a460..bfa5252a03 100755 --- a/keyboards/dichotomy/rules.mk +++ b/keyboards/dichotomy/rules.mk @@ -14,4 +14,4 @@ NKRO_ENABLE = yes # Enable N-Key Rollover # # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/ergodox_ez/rules.mk b/keyboards/ergodox_ez/rules.mk index dc72f6385c..bba3bd86ae 100644 --- a/keyboards/ergodox_ez/rules.mk +++ b/keyboards/ergodox_ez/rules.mk @@ -21,7 +21,7 @@ RGB_MATRIX_ENABLE = no # enable later # project specific files SRC += matrix.c \ led_i2c.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes # Disable unsupported hardware AUDIO_SUPPORTED = no diff --git a/keyboards/ergodox_stm32/rules.mk b/keyboards/ergodox_stm32/rules.mk index 5b86324f9a..5481eef1a2 100644 --- a/keyboards/ergodox_stm32/rules.mk +++ b/keyboards/ergodox_stm32/rules.mk @@ -16,4 +16,4 @@ CUSTOM_MATRIX = yes # Custom matrix file UNICODE_ENABLE = yes # Unicode SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/fallacy/rules.mk b/keyboards/fallacy/rules.mk index 704204983c..7fa230bae2 100755 --- a/keyboards/fallacy/rules.mk +++ b/keyboards/fallacy/rules.mk @@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC += indicators.c \ drivers/led/issi/is31fl3731-simple.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/fc660c/rules.mk b/keyboards/fc660c/rules.mk index 52f4ce803d..03a674d668 100644 --- a/keyboards/fc660c/rules.mk +++ b/keyboards/fc660c/rules.mk @@ -11,7 +11,7 @@ NKRO_ENABLE = yes # Enable N-Key Rollover # Optimize size but this may cause error "relocation truncated to fit" #EXTRALDFLAGS = -Wl,--relax -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes CUSTOM_MATRIX = yes SRC += matrix.c ad5258.c diff --git a/keyboards/fc980c/rules.mk b/keyboards/fc980c/rules.mk index 52f4ce803d..03a674d668 100644 --- a/keyboards/fc980c/rules.mk +++ b/keyboards/fc980c/rules.mk @@ -11,7 +11,7 @@ NKRO_ENABLE = yes # Enable N-Key Rollover # Optimize size but this may cause error "relocation truncated to fit" #EXTRALDFLAGS = -Wl,--relax -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes CUSTOM_MATRIX = yes SRC += matrix.c ad5258.c diff --git a/keyboards/ferris/0_1/rules.mk b/keyboards/ferris/0_1/rules.mk index 487375928e..f971aa9a48 100644 --- a/keyboards/ferris/0_1/rules.mk +++ b/keyboards/ferris/0_1/rules.mk @@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes LTO_ENABLE = yes SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/ferris/0_2/rules.mk b/keyboards/ferris/0_2/rules.mk index f3760b7b62..6f67e3dece 100644 --- a/keyboards/ferris/0_2/rules.mk +++ b/keyboards/ferris/0_2/rules.mk @@ -16,6 +16,6 @@ NO_USB_STARTUP_CHECK = yes LTO_ENABLE = no SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes DEFAULT_FOLDER = ferris/0_2/base diff --git a/keyboards/frobiac/blackbowl/rules.mk b/keyboards/frobiac/blackbowl/rules.mk index 6004c37f9e..4e81c7280c 100644 --- a/keyboards/frobiac/blackbowl/rules.mk +++ b/keyboards/frobiac/blackbowl/rules.mk @@ -1,7 +1,7 @@ CUSTOM_MATRIX = lite # project specific files -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes SRC += matrix.c PS2_MOUSE_ENABLE = yes diff --git a/keyboards/gboards/ergotaco/rules.mk b/keyboards/gboards/ergotaco/rules.mk index 2df8900c2d..6fbefbd22d 100644 --- a/keyboards/gboards/ergotaco/rules.mk +++ b/keyboards/gboards/ergotaco/rules.mk @@ -7,4 +7,5 @@ COMMAND_ENABLE = yes # know what you're doing. # # No touchy, capiche? -SRC += matrix.c i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/gboards/georgi/rules.mk b/keyboards/gboards/georgi/rules.mk index 5980342669..5b63e269fa 100644 --- a/keyboards/gboards/georgi/rules.mk +++ b/keyboards/gboards/georgi/rules.mk @@ -14,4 +14,5 @@ CUSTOM_MATRIX = yes STENO_ENABLE = yes LTO_ENABLE = yes -SRC += matrix.c i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/gboards/gergo/keymaps/colemak/rules.mk b/keyboards/gboards/gergo/keymaps/colemak/rules.mk index 3b81fdfa1b..db8d965292 100644 --- a/keyboards/gboards/gergo/keymaps/colemak/rules.mk +++ b/keyboards/gboards/gergo/keymaps/colemak/rules.mk @@ -18,7 +18,8 @@ DEBUG_MATRIX = no # know what you're doing. # # No touchy, capiche? -SRC += matrix.c i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes ifneq ($(strip $(BALLSTEP)),) OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP)) endif diff --git a/keyboards/gboards/gergo/keymaps/default/rules.mk b/keyboards/gboards/gergo/keymaps/default/rules.mk index bc2b3cf43b..6f203da1bd 100644 --- a/keyboards/gboards/gergo/keymaps/default/rules.mk +++ b/keyboards/gboards/gergo/keymaps/default/rules.mk @@ -18,7 +18,8 @@ DEBUG_MATRIX = yes # know what you're doing. # # No touchy, capiche? -SRC += matrix.c i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes ifneq ($(strip $(BALLSTEP)),) OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP)) endif diff --git a/keyboards/gboards/gergo/keymaps/germ/rules.mk b/keyboards/gboards/gergo/keymaps/germ/rules.mk index 0fd941bb53..c100f8ab64 100644 --- a/keyboards/gboards/gergo/keymaps/germ/rules.mk +++ b/keyboards/gboards/gergo/keymaps/germ/rules.mk @@ -18,7 +18,8 @@ DEBUG_MATRIX = no # know what you're doing. # # No touchy, capiche? -SRC += matrix.c i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes ifneq ($(strip $(BALLSTEP)),) OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP)) endif diff --git a/keyboards/gboards/gergo/keymaps/gotham/rules.mk b/keyboards/gboards/gergo/keymaps/gotham/rules.mk index bc2b3cf43b..6f203da1bd 100644 --- a/keyboards/gboards/gergo/keymaps/gotham/rules.mk +++ b/keyboards/gboards/gergo/keymaps/gotham/rules.mk @@ -18,7 +18,8 @@ DEBUG_MATRIX = yes # know what you're doing. # # No touchy, capiche? -SRC += matrix.c i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes ifneq ($(strip $(BALLSTEP)),) OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP)) endif diff --git a/keyboards/gboards/gergo/rules.mk b/keyboards/gboards/gergo/rules.mk index 195915e431..d789b349da 100644 --- a/keyboards/gboards/gergo/rules.mk +++ b/keyboards/gboards/gergo/rules.mk @@ -8,4 +8,4 @@ COMMAND_ENABLE = yes BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/gboards/gergoplex/rules.mk b/keyboards/gboards/gergoplex/rules.mk index adf5cfd2e7..9846c64771 100644 --- a/keyboards/gboards/gergoplex/rules.mk +++ b/keyboards/gboards/gergoplex/rules.mk @@ -13,4 +13,4 @@ AUDIO_ENABLE = no # Audio output CUSTOM_MATRIX = yes SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/geistmaschine/macropod/rules.mk b/keyboards/geistmaschine/macropod/rules.mk index cf2b38601e..53d35b5bc6 100644 --- a/keyboards/geistmaschine/macropod/rules.mk +++ b/keyboards/geistmaschine/macropod/rules.mk @@ -2,4 +2,4 @@ CUSTOM_MATRIX = lite VPATH += drivers/gpio SRC += pca9555.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c \ No newline at end of file +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/glenpickle/chimera_ergo/rules.mk b/keyboards/glenpickle/chimera_ergo/rules.mk index 32eca4db31..f543b5fd9a 100644 --- a/keyboards/glenpickle/chimera_ergo/rules.mk +++ b/keyboards/glenpickle/chimera_ergo/rules.mk @@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/glenpickle/chimera_ls/rules.mk b/keyboards/glenpickle/chimera_ls/rules.mk index 1ee3fc58f9..706d610653 100644 --- a/keyboards/glenpickle/chimera_ls/rules.mk +++ b/keyboards/glenpickle/chimera_ls/rules.mk @@ -14,7 +14,7 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes # Disable unsupported hardware RGBLIGHT_SUPPORTED = no diff --git a/keyboards/glenpickle/chimera_ortho/rules.mk b/keyboards/glenpickle/chimera_ortho/rules.mk index 32eca4db31..f543b5fd9a 100644 --- a/keyboards/glenpickle/chimera_ortho/rules.mk +++ b/keyboards/glenpickle/chimera_ortho/rules.mk @@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/glenpickle/chimera_ortho_plus/rules.mk b/keyboards/glenpickle/chimera_ortho_plus/rules.mk index 6b1876f87c..539a2d1004 100644 --- a/keyboards/glenpickle/chimera_ortho_plus/rules.mk +++ b/keyboards/glenpickle/chimera_ortho_plus/rules.mk @@ -15,4 +15,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/handwired/dactyl/rules.mk b/keyboards/handwired/dactyl/rules.mk index 830812f79a..bffd901b04 100644 --- a/keyboards/handwired/dactyl/rules.mk +++ b/keyboards/handwired/dactyl/rules.mk @@ -14,5 +14,5 @@ SWAP_HANDS_ENABLE = yes # Allow swapping hands of keyboard RGBLIGHT_ENABLE = no # project specific files -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes SRC += matrix.c diff --git a/keyboards/handwired/dqz11n1g/rules.mk b/keyboards/handwired/dqz11n1g/rules.mk index 23f6b89cc2..220e353ab7 100644 --- a/keyboards/handwired/dqz11n1g/rules.mk +++ b/keyboards/handwired/dqz11n1g/rules.mk @@ -1,7 +1,7 @@ # Keyboard matrix uses shift-registers read via SPI CUSTOM_MATRIX = lite SRC += matrix.c -QUANTUM_LIB_SRC += spi_master.c +SPI_DRIVER_REQUIRED = yes # Build Options # change yes to no to disable diff --git a/keyboards/handwired/dygma/raise/rules.mk b/keyboards/handwired/dygma/raise/rules.mk index 761e075500..ecf156629a 100644 --- a/keyboards/handwired/dygma/raise/rules.mk +++ b/keyboards/handwired/dygma/raise/rules.mk @@ -19,7 +19,7 @@ CUSTOM_MATRIX = lite # alternate usb endpoints. RAW_ENABLE = yes -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes SRC += matrix.c DEFAULT_FOLDER = handwired/dygma/raise/ansi diff --git a/keyboards/handwired/frenchdev/rules.mk b/keyboards/handwired/frenchdev/rules.mk index c310966f1d..e226d0b517 100644 --- a/keyboards/handwired/frenchdev/rules.mk +++ b/keyboards/handwired/frenchdev/rules.mk @@ -13,5 +13,5 @@ AUDIO_ENABLE = no # Audio output RGBLIGHT_ENABLE = no # project specific files -SRC = i2c_master.c \ - matrix.c +SRC = matrix.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/handwired/lagrange/rules.mk b/keyboards/handwired/lagrange/rules.mk index 61bfdfa4d3..f4af87851c 100644 --- a/keyboards/handwired/lagrange/rules.mk +++ b/keyboards/handwired/lagrange/rules.mk @@ -14,4 +14,5 @@ UNICODE_ENABLE = yes SPLIT_KEYBOARD = yes SPLIT_TRANSPORT = custom -SRC += transport.c spi_master.c +SRC += transport.c +SPI_DRIVER_REQUIRED = yes diff --git a/keyboards/handwired/onekey/kb2040/rules.mk b/keyboards/handwired/onekey/kb2040/rules.mk index 0e5631b02b..dd68e9d3b0 100644 --- a/keyboards/handwired/onekey/kb2040/rules.mk +++ b/keyboards/handwired/onekey/kb2040/rules.mk @@ -1,3 +1 @@ OLED_ENABLE = yes - -OPT_DEFS += -DHAL_USE_I2C=TRUE diff --git a/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk b/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk index 04498a8831..3dec5cef29 100644 --- a/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk +++ b/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk @@ -1,3 +1,3 @@ CONSOLE_ENABLE = yes -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/handwired/pterodactyl/rules.mk b/keyboards/handwired/pterodactyl/rules.mk index 9f0cabc750..108e1498a8 100644 --- a/keyboards/handwired/pterodactyl/rules.mk +++ b/keyboards/handwired/pterodactyl/rules.mk @@ -18,4 +18,4 @@ CUSTOM_MATRIX = yes BLUETOOTH_ENABLE = yes SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/hazel/bad_wings/rules.mk b/keyboards/hazel/bad_wings/rules.mk index 1001af0186..47a188155f 100644 --- a/keyboards/hazel/bad_wings/rules.mk +++ b/keyboards/hazel/bad_wings/rules.mk @@ -3,7 +3,7 @@ CAPS_WORD_ENABLE = yes SRC += matrix.c -QUANTUM_LIB_SRC += spi_master.c +SPI_DRIVER_REQUIRED = yes CUSTOM_MATRIX = lite POINTING_DEVICE_DRIVER = cirque_pinnacle_spi diff --git a/keyboards/hotdox/rules.mk b/keyboards/hotdox/rules.mk index 1088cbc14b..8e11eeabe0 100644 --- a/keyboards/hotdox/rules.mk +++ b/keyboards/hotdox/rules.mk @@ -15,5 +15,5 @@ RGBLIGHT_ENABLE = no # project specific files SRC = matrix.c \ - i2c_master.c \ left.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/hs60/v2/ansi/rules.mk b/keyboards/hs60/v2/ansi/rules.mk index a231765dff..bc8cb00131 100644 --- a/keyboards/hs60/v2/ansi/rules.mk +++ b/keyboards/hs60/v2/ansi/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3733.c \ - quantum/color.c \ - i2c_master.c + quantum/color.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/hs60/v2/hhkb/rules.mk b/keyboards/hs60/v2/hhkb/rules.mk index a231765dff..bc8cb00131 100644 --- a/keyboards/hs60/v2/hhkb/rules.mk +++ b/keyboards/hs60/v2/hhkb/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3733.c \ - quantum/color.c \ - i2c_master.c + quantum/color.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/hs60/v2/iso/rules.mk b/keyboards/hs60/v2/iso/rules.mk index a231765dff..bc8cb00131 100644 --- a/keyboards/hs60/v2/iso/rules.mk +++ b/keyboards/hs60/v2/iso/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3733.c \ - quantum/color.c \ - i2c_master.c + quantum/color.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/ibm/model_m/mschwingen/rules.mk b/keyboards/ibm/model_m/mschwingen/rules.mk index 5ccab87d9b..7d81ffe326 100644 --- a/keyboards/ibm/model_m/mschwingen/rules.mk +++ b/keyboards/ibm/model_m/mschwingen/rules.mk @@ -19,8 +19,8 @@ DYNAMIC_MACRO_ENABLE = yes UART_DEBUG = no SRC += matrix.c -QUANTUM_LIB_SRC += uart.c \ - spi_master.c +UART_DRIVER_REQUIRED = yes +SPI_DRIVER_REQUIRED = yes OPT_DEFS += -DSLEEP_LED_ENABLE # we need our own sleep callbacks to turn of WS2812 LEDs diff --git a/keyboards/ingrained/rules.mk b/keyboards/ingrained/rules.mk index 8dd9805257..e9a8002f90 100644 --- a/keyboards/ingrained/rules.mk +++ b/keyboards/ingrained/rules.mk @@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes LTO_ENABLE = yes SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/kagizaraya/chidori/rules.mk b/keyboards/kagizaraya/chidori/rules.mk index cbec27a8cb..f94317cf22 100644 --- a/keyboards/kagizaraya/chidori/rules.mk +++ b/keyboards/kagizaraya/chidori/rules.mk @@ -16,4 +16,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c SRC += board.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/keebwerk/mega/ansi/rules.mk b/keyboards/keebwerk/mega/ansi/rules.mk index 5546dc18d4..e257f3063f 100755 --- a/keyboards/keebwerk/mega/ansi/rules.mk +++ b/keyboards/keebwerk/mega/ansi/rules.mk @@ -24,4 +24,4 @@ SRC += keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3733.c \ quantum/color.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/keyboardio/model01/rules.mk b/keyboards/keyboardio/model01/rules.mk index e653ec5f73..29e1f4fea8 100644 --- a/keyboards/keyboardio/model01/rules.mk +++ b/keyboards/keyboardio/model01/rules.mk @@ -9,7 +9,7 @@ COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover CUSTOM_MATRIX = yes -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes SRC += leds.c \ matrix.c diff --git a/keyboards/keyhive/honeycomb/rules.mk b/keyboards/keyhive/honeycomb/rules.mk index 040710a460..bfa5252a03 100755 --- a/keyboards/keyhive/honeycomb/rules.mk +++ b/keyboards/keyhive/honeycomb/rules.mk @@ -14,4 +14,4 @@ NKRO_ENABLE = yes # Enable N-Key Rollover # # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk b/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk index 534a21dbf3..805593ed5b 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk +++ b/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk @@ -17,4 +17,4 @@ WS2812_DRIVER_REQUIRED = yes COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3733.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk b/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk index b6b9ff1110..d84cbc0bf1 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk @@ -20,5 +20,5 @@ RGB_MATRIX_ENABLE = yes # here manually. COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3733.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes WS2812_DRIVER_REQUIRED = yes diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk b/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk index 5db18e7cfa..92b33edc1f 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk @@ -19,5 +19,5 @@ RGB_MATRIX_ENABLE = yes # here manually. COMMON_VPATH += $(DRIVER_PATH)/led/issi SRC += is31fl3733.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes WS2812_DRIVER_REQUIRED = yes diff --git a/keyboards/ktec/ergodone/rules.mk b/keyboards/ktec/ergodone/rules.mk index 3ec1a7cf43..d9b0148499 100644 --- a/keyboards/ktec/ergodone/rules.mk +++ b/keyboards/ktec/ergodone/rules.mk @@ -3,4 +3,4 @@ CUSTOM_MATRIX = lite VPATH += drivers/gpio SRC += mcp23018.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/matrix/abelx/rules.mk b/keyboards/matrix/abelx/rules.mk index 7a5d01e5cb..1c2fc05ffe 100644 --- a/keyboards/matrix/abelx/rules.mk +++ b/keyboards/matrix/abelx/rules.mk @@ -45,4 +45,4 @@ NO_USB_STARTUP_CHECK = yes # Disable initialization only when usb is plugged in CUSTOM_MATRIX = lite # project specific files SRC += matrix.c tca6424.c aw9523b.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/matrix/m20add/rules.mk b/keyboards/matrix/m20add/rules.mk index 86bd6b9371..1b005b8c17 100644 --- a/keyboards/matrix/m20add/rules.mk +++ b/keyboards/matrix/m20add/rules.mk @@ -29,4 +29,4 @@ RGBLIGHT_ENABLE = yes CUSTOM_MATRIX = lite # project specific files SRC += matrix.c tca6424.c rgb_ring.c drivers/led/issi/is31fl3731.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/mechwild/sugarglider/rules.mk b/keyboards/mechwild/sugarglider/rules.mk index 9cfa6b7797..6fd0836a73 100644 --- a/keyboards/mechwild/sugarglider/rules.mk +++ b/keyboards/mechwild/sugarglider/rules.mk @@ -13,7 +13,7 @@ CUSTOM_MATRIX = lite VPATH += drivers/gpio SRC += mcp23018.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes DEFAULT_FOLDER = mechwild/sugarglider/wide_oled diff --git a/keyboards/mitosis/rules.mk b/keyboards/mitosis/rules.mk index 6b1876f87c..539a2d1004 100644 --- a/keyboards/mitosis/rules.mk +++ b/keyboards/mitosis/rules.mk @@ -15,4 +15,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/molecule/rules.mk b/keyboards/molecule/rules.mk index 35280e22e3..06a8f490ee 100755 --- a/keyboards/molecule/rules.mk +++ b/keyboards/molecule/rules.mk @@ -15,4 +15,4 @@ AUDIO_ENABLE = no # Audio output POINTING_DEVICE_ENABLE = yes POINTING_DEVICE_DRIVER = custom SRC += adns.c -QUANTUM_LIB_SRC += spi_master.c +SPI_DRIVER_REQUIRED = yes diff --git a/keyboards/moon/rules.mk b/keyboards/moon/rules.mk index 804580d1f9..676f0971a2 100644 --- a/keyboards/moon/rules.mk +++ b/keyboards/moon/rules.mk @@ -16,4 +16,4 @@ CUSTOM_MATRIX = yes VPATH += drivers/gpio SRC += pca9555.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/moonlander/rules.mk b/keyboards/moonlander/rules.mk index a96d00f2f1..204c5940e4 100644 --- a/keyboards/moonlander/rules.mk +++ b/keyboards/moonlander/rules.mk @@ -17,6 +17,6 @@ RGB_MATRIX_ENABLE = yes #project specific files SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes MOUSE_SHARED_EP = no diff --git a/keyboards/mt/split75/rules.mk b/keyboards/mt/split75/rules.mk index f616b9400e..b0c02543b1 100644 --- a/keyboards/mt/split75/rules.mk +++ b/keyboards/mt/split75/rules.mk @@ -12,4 +12,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow # custom matrix setup CUSTOM_MATRIX = lite SRC = matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/neson_design/700e/rules.mk b/keyboards/neson_design/700e/rules.mk index 6e1439f1f5..5650ed1fee 100644 --- a/keyboards/neson_design/700e/rules.mk +++ b/keyboards/neson_design/700e/rules.mk @@ -11,4 +11,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow NO_USB_STARTUP_CHECK = yes -QUANTUM_LIB_SRC += i2c_master.c drivers/led/issi/is31fl3731.c +QUANTUM_LIB_SRC += drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/neson_design/n6/rules.mk b/keyboards/neson_design/n6/rules.mk index 5d8397653e..a3e4abe6cd 100644 --- a/keyboards/neson_design/n6/rules.mk +++ b/keyboards/neson_design/n6/rules.mk @@ -10,4 +10,5 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow -QUANTUM_LIB_SRC += i2c_master.c drivers/led/issi/is31fl3731.c +QUANTUM_LIB_SRC += drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/novelkeys/nk65/rules.mk b/keyboards/novelkeys/nk65/rules.mk index e9036ebb61..d71d9a6c4e 100755 --- a/keyboards/novelkeys/nk65/rules.mk +++ b/keyboards/novelkeys/nk65/rules.mk @@ -22,7 +22,7 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3733.c \ - quantum/color.c \ - i2c_master.c + quantum/color.c +I2C_DRIVER_REQUIRED = yes DEFAULT_FOLDER = novelkeys/nk65/base diff --git a/keyboards/novelkeys/nk87/rules.mk b/keyboards/novelkeys/nk87/rules.mk index 288d802054..a0a09c1dab 100755 --- a/keyboards/novelkeys/nk87/rules.mk +++ b/keyboards/novelkeys/nk87/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3733.c \ - quantum/color.c \ - i2c_master.c + quantum/color.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/nullbitsco/nibble/rules.mk b/keyboards/nullbitsco/nibble/rules.mk index 0d5d3e2aac..5a1714cc9d 100644 --- a/keyboards/nullbitsco/nibble/rules.mk +++ b/keyboards/nullbitsco/nibble/rules.mk @@ -19,4 +19,4 @@ SRC += matrix.c \ common/bitc_led.c \ big_led.c \ common/remote_kb.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/nullbitsco/snap/rules.mk b/keyboards/nullbitsco/snap/rules.mk index 79ba7d6eb6..2ad88b97c0 100644 --- a/keyboards/nullbitsco/snap/rules.mk +++ b/keyboards/nullbitsco/snap/rules.mk @@ -19,5 +19,5 @@ CUSTOM_MATRIX = lite # Split custom matrix # Project specific files SRC += common/bitc_led.c \ common/remote_kb.c \ - matrix.c \ - uart.c + matrix.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/nullbitsco/tidbit/rules.mk b/keyboards/nullbitsco/tidbit/rules.mk index 3b7ff078bb..b4a06216bb 100644 --- a/keyboards/nullbitsco/tidbit/rules.mk +++ b/keyboards/nullbitsco/tidbit/rules.mk @@ -16,5 +16,5 @@ LTO_ENABLE = yes # Project specific files SRC += common/bitc_led.c \ common/remote_kb.c -QUANTUM_LIB_SRC += i2c_master.c \ - uart.c +I2C_DRIVER_REQUIRED = yes +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/oddforge/vea/rules.mk b/keyboards/oddforge/vea/rules.mk index f616b9400e..b0c02543b1 100644 --- a/keyboards/oddforge/vea/rules.mk +++ b/keyboards/oddforge/vea/rules.mk @@ -12,4 +12,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow # custom matrix setup CUSTOM_MATRIX = lite SRC = matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/phoenix/config.h b/keyboards/phoenix/config.h index 76ac0edf2c..9241950731 100644 --- a/keyboards/phoenix/config.h +++ b/keyboards/phoenix/config.h @@ -26,7 +26,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -#define HAL_USE_SERIAL TRUE #define SPLIT_HAND_PIN B9 #define SERIAL_USART_DRIVER SD1 #define SERIAL_USART_TX_PAL_MODE 7 diff --git a/keyboards/phoenix/halconf.h b/keyboards/phoenix/halconf.h index 2527d38940..95bd6c565f 100644 --- a/keyboards/phoenix/halconf.h +++ b/keyboards/phoenix/halconf.h @@ -21,6 +21,8 @@ #pragma once +#define HAL_USE_SERIAL TRUE + #define SERIAL_USB_BUFFERS_SIZE 256 #include_next diff --git a/keyboards/redox_w/rules.mk b/keyboards/redox_w/rules.mk index 32eca4db31..f543b5fd9a 100644 --- a/keyboards/redox_w/rules.mk +++ b/keyboards/redox_w/rules.mk @@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/rgbkb/mun/rules.mk b/keyboards/rgbkb/mun/rules.mk index 18dfc8edf7..4269e3b0a1 100644 --- a/keyboards/rgbkb/mun/rules.mk +++ b/keyboards/rgbkb/mun/rules.mk @@ -2,7 +2,7 @@ VPATH += keyboards/rgbkb/common SRC += touch_encoder.c SRC += common_oled.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes # Build Options # change yes to no to disable diff --git a/keyboards/rgbkb/sol3/rules.mk b/keyboards/rgbkb/sol3/rules.mk index 9cb54cfa15..227219e302 100644 --- a/keyboards/rgbkb/sol3/rules.mk +++ b/keyboards/rgbkb/sol3/rules.mk @@ -2,7 +2,7 @@ VPATH += keyboards/rgbkb/common SRC += touch_encoder.c SRC += common_oled.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes # Build Options # change yes to no to disable diff --git a/keyboards/satt/comet46/rules.mk b/keyboards/satt/comet46/rules.mk index fe692cc5c3..0db5166ffa 100644 --- a/keyboards/satt/comet46/rules.mk +++ b/keyboards/satt/comet46/rules.mk @@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/sirius/uni660/rev1/rules.mk b/keyboards/sirius/uni660/rev1/rules.mk index d44567105e..7ac7507269 100644 --- a/keyboards/sirius/uni660/rev1/rules.mk +++ b/keyboards/sirius/uni660/rev1/rules.mk @@ -15,4 +15,4 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes diff --git a/keyboards/sirius/uni660/rev2/rules.mk b/keyboards/sirius/uni660/rev2/rules.mk index b41206636d..791fa054c8 100644 --- a/keyboards/sirius/uni660/rev2/rules.mk +++ b/keyboards/sirius/uni660/rev2/rules.mk @@ -15,6 +15,6 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes DEFAULT_FOLDER = sirius/uni660/rev2/ansi diff --git a/keyboards/spaceholdings/nebula12/rules.mk b/keyboards/spaceholdings/nebula12/rules.mk index 1c8b41fea7..191a1c0a1b 100755 --- a/keyboards/spaceholdings/nebula12/rules.mk +++ b/keyboards/spaceholdings/nebula12/rules.mk @@ -24,4 +24,4 @@ SRC += keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3731.c \ quantum/color.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/spaceholdings/nebula68/rules.mk b/keyboards/spaceholdings/nebula68/rules.mk index 7880744fff..627f82784e 100755 --- a/keyboards/spaceholdings/nebula68/rules.mk +++ b/keyboards/spaceholdings/nebula68/rules.mk @@ -24,4 +24,4 @@ SRC += keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ drivers/led/issi/is31fl3733.c \ quantum/color.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/spiderisland/split78/rules.mk b/keyboards/spiderisland/split78/rules.mk index edddf67abc..db8262a763 100644 --- a/keyboards/spiderisland/split78/rules.mk +++ b/keyboards/spiderisland/split78/rules.mk @@ -12,4 +12,4 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow # custom matrix setup CUSTOM_MATRIX = lite SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/switchplate/southpaw_65/rules.mk b/keyboards/switchplate/southpaw_65/rules.mk index c6c7f4ef93..89d05c5487 100644 --- a/keyboards/switchplate/southpaw_65/rules.mk +++ b/keyboards/switchplate/southpaw_65/rules.mk @@ -17,4 +17,4 @@ CUSTOM_MATRIX = lite VPATH += drivers/gpio SRC += pca9555.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/sx60/rules.mk b/keyboards/sx60/rules.mk index a18361a0cd..2f0d22e49f 100755 --- a/keyboards/sx60/rules.mk +++ b/keyboards/sx60/rules.mk @@ -13,5 +13,5 @@ RGBLIGHT_ENABLE = no CUSTOM_MATRIX = yes # project specific files -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes SRC += matrix.c diff --git a/keyboards/system76/launch_1/rules.mk b/keyboards/system76/launch_1/rules.mk index 7dbc07ced0..181976b2dd 100644 --- a/keyboards/system76/launch_1/rules.mk +++ b/keyboards/system76/launch_1/rules.mk @@ -23,4 +23,4 @@ LTO_ENABLE = yes # Link-time optimization for smaller binary # Add System76 EC command interface as well as I2C and USB mux drivers SRC += system76_ec.c usb_mux.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/telophase/rules.mk b/keyboards/telophase/rules.mk index 1ee3fc58f9..706d610653 100644 --- a/keyboards/telophase/rules.mk +++ b/keyboards/telophase/rules.mk @@ -14,7 +14,7 @@ CUSTOM_MATRIX = lite # project specific files SRC += matrix.c -QUANTUM_LIB_SRC += uart.c +UART_DRIVER_REQUIRED = yes # Disable unsupported hardware RGBLIGHT_SUPPORTED = no diff --git a/keyboards/tkc/portico/rules.mk b/keyboards/tkc/portico/rules.mk index 4e382541f4..6bc05372af 100644 --- a/keyboards/tkc/portico/rules.mk +++ b/keyboards/tkc/portico/rules.mk @@ -19,4 +19,4 @@ SRC += keyboards/wilba_tech/wt_main.c \ quantum/color.c \ drivers/led/issi/is31fl3731.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/tkc/portico75/keymaps/via/rules.mk b/keyboards/tkc/portico75/keymaps/via/rules.mk index 3e4e4a229d..1706771222 100644 --- a/keyboards/tkc/portico75/keymaps/via/rules.mk +++ b/keyboards/tkc/portico75/keymaps/via/rules.mk @@ -9,4 +9,4 @@ SRC += keyboards/wilba_tech/wt_main.c \ quantum/color.c \ drivers/led/issi/is31fl3741.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/torn/rules.mk b/keyboards/torn/rules.mk index d2ec5cf6d4..f855a651a5 100644 --- a/keyboards/torn/rules.mk +++ b/keyboards/torn/rules.mk @@ -18,4 +18,4 @@ SRC += matrix.c \ mcp23018.c \ torn_encoder.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/touchpad/rules.mk b/keyboards/touchpad/rules.mk index c22f3a2da5..b9fb83c48c 100644 --- a/keyboards/touchpad/rules.mk +++ b/keyboards/touchpad/rules.mk @@ -12,4 +12,5 @@ AUDIO_ENABLE = no # Audio output RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. CUSTOM_MATRIX = yes -SRC += matrix.c i2c_master.c +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/viktus/sp111/rules.mk b/keyboards/viktus/sp111/rules.mk index 0b9b8490de..1be8c7ad68 100644 --- a/keyboards/viktus/sp111/rules.mk +++ b/keyboards/viktus/sp111/rules.mk @@ -18,4 +18,4 @@ CUSTOM_MATRIX = lite VPATH += drivers/gpio SRC += mcp23018.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_kara/rules.mk b/keyboards/wilba_tech/rama_works_kara/rules.mk index 465bc65d9e..b49711824a 100644 --- a/keyboards/wilba_tech/rama_works_kara/rules.mk +++ b/keyboards/wilba_tech/rama_works_kara/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_koyu/rules.mk b/keyboards/wilba_tech/rama_works_koyu/rules.mk index be907583a2..c921fc5c18 100644 --- a/keyboards/wilba_tech/rama_works_koyu/rules.mk +++ b/keyboards/wilba_tech/rama_works_koyu/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_m10_c/rules.mk b/keyboards/wilba_tech/rama_works_m10_c/rules.mk index 89e17a01b4..d8a2bae455 100644 --- a/keyboards/wilba_tech/rama_works_m10_c/rules.mk +++ b/keyboards/wilba_tech/rama_works_m10_c/rules.mk @@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_m50_a/rules.mk b/keyboards/wilba_tech/rama_works_m50_a/rules.mk index 89e17a01b4..d8a2bae455 100644 --- a/keyboards/wilba_tech/rama_works_m50_a/rules.mk +++ b/keyboards/wilba_tech/rama_works_m50_a/rules.mk @@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_m60_a/rules.mk b/keyboards/wilba_tech/rama_works_m60_a/rules.mk index be907583a2..c921fc5c18 100644 --- a/keyboards/wilba_tech/rama_works_m60_a/rules.mk +++ b/keyboards/wilba_tech/rama_works_m60_a/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_m65_b/rules.mk b/keyboards/wilba_tech/rama_works_m65_b/rules.mk index 89e17a01b4..d8a2bae455 100644 --- a/keyboards/wilba_tech/rama_works_m65_b/rules.mk +++ b/keyboards/wilba_tech/rama_works_m65_b/rules.mk @@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_m65_bx/rules.mk b/keyboards/wilba_tech/rama_works_m65_bx/rules.mk index 89e17a01b4..d8a2bae455 100644 --- a/keyboards/wilba_tech/rama_works_m65_bx/rules.mk +++ b/keyboards/wilba_tech/rama_works_m65_bx/rules.mk @@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_m6_b/rules.mk b/keyboards/wilba_tech/rama_works_m6_b/rules.mk index 04a197576f..eff0605d90 100644 --- a/keyboards/wilba_tech/rama_works_m6_b/rules.mk +++ b/keyboards/wilba_tech/rama_works_m6_b/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3218.c \ - i2c_master.c + drivers/led/issi/is31fl3218.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/rama_works_u80_a/rules.mk b/keyboards/wilba_tech/rama_works_u80_a/rules.mk index 3e1eda9d5e..b262985880 100644 --- a/keyboards/wilba_tech/rama_works_u80_a/rules.mk +++ b/keyboards/wilba_tech/rama_works_u80_a/rules.mk @@ -15,5 +15,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/wt60_a/rules.mk b/keyboards/wilba_tech/wt60_a/rules.mk index 3a552128d8..9ca8e8f973 100644 --- a/keyboards/wilba_tech/wt60_a/rules.mk +++ b/keyboards/wilba_tech/wt60_a/rules.mk @@ -12,7 +12,7 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC = drivers/led/issi/is31fl3736-simple.c \ - i2c_master.c \ quantum/color.c \ keyboards/wilba_tech/wt_mono_backlight.c \ keyboards/wilba_tech/wt_main.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/wilba_tech/wt60_b/rules.mk b/keyboards/wilba_tech/wt60_b/rules.mk index a9fcf043e2..397643d372 100644 --- a/keyboards/wilba_tech/wt60_b/rules.mk +++ b/keyboards/wilba_tech/wt60_b/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/wt60_bx/rules.mk b/keyboards/wilba_tech/wt60_bx/rules.mk index a9fcf043e2..397643d372 100644 --- a/keyboards/wilba_tech/wt60_bx/rules.mk +++ b/keyboards/wilba_tech/wt60_bx/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/wt60_c/rules.mk b/keyboards/wilba_tech/wt60_c/rules.mk index a9fcf043e2..397643d372 100644 --- a/keyboards/wilba_tech/wt60_c/rules.mk +++ b/keyboards/wilba_tech/wt60_c/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/wt65_a/rules.mk b/keyboards/wilba_tech/wt65_a/rules.mk index 3a552128d8..9ca8e8f973 100644 --- a/keyboards/wilba_tech/wt65_a/rules.mk +++ b/keyboards/wilba_tech/wt65_a/rules.mk @@ -12,7 +12,7 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC = drivers/led/issi/is31fl3736-simple.c \ - i2c_master.c \ quantum/color.c \ keyboards/wilba_tech/wt_mono_backlight.c \ keyboards/wilba_tech/wt_main.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/wilba_tech/wt65_b/rules.mk b/keyboards/wilba_tech/wt65_b/rules.mk index 3a552128d8..9ca8e8f973 100644 --- a/keyboards/wilba_tech/wt65_b/rules.mk +++ b/keyboards/wilba_tech/wt65_b/rules.mk @@ -12,7 +12,7 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC = drivers/led/issi/is31fl3736-simple.c \ - i2c_master.c \ quantum/color.c \ keyboards/wilba_tech/wt_mono_backlight.c \ keyboards/wilba_tech/wt_main.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/wilba_tech/wt75_a/rules.mk b/keyboards/wilba_tech/wt75_a/rules.mk index 3a552128d8..9ca8e8f973 100644 --- a/keyboards/wilba_tech/wt75_a/rules.mk +++ b/keyboards/wilba_tech/wt75_a/rules.mk @@ -12,7 +12,7 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC = drivers/led/issi/is31fl3736-simple.c \ - i2c_master.c \ quantum/color.c \ keyboards/wilba_tech/wt_mono_backlight.c \ keyboards/wilba_tech/wt_main.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/wilba_tech/wt75_b/rules.mk b/keyboards/wilba_tech/wt75_b/rules.mk index 3a552128d8..9ca8e8f973 100644 --- a/keyboards/wilba_tech/wt75_b/rules.mk +++ b/keyboards/wilba_tech/wt75_b/rules.mk @@ -12,7 +12,7 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC = drivers/led/issi/is31fl3736-simple.c \ - i2c_master.c \ quantum/color.c \ keyboards/wilba_tech/wt_mono_backlight.c \ keyboards/wilba_tech/wt_main.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/wilba_tech/wt75_c/rules.mk b/keyboards/wilba_tech/wt75_c/rules.mk index 3a552128d8..9ca8e8f973 100644 --- a/keyboards/wilba_tech/wt75_c/rules.mk +++ b/keyboards/wilba_tech/wt75_c/rules.mk @@ -12,7 +12,7 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC = drivers/led/issi/is31fl3736-simple.c \ - i2c_master.c \ quantum/color.c \ keyboards/wilba_tech/wt_mono_backlight.c \ keyboards/wilba_tech/wt_main.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/wilba_tech/wt80_a/rules.mk b/keyboards/wilba_tech/wt80_a/rules.mk index 3a552128d8..9ca8e8f973 100644 --- a/keyboards/wilba_tech/wt80_a/rules.mk +++ b/keyboards/wilba_tech/wt80_a/rules.mk @@ -12,7 +12,7 @@ AUDIO_ENABLE = no # Audio output # project specific files SRC = drivers/led/issi/is31fl3736-simple.c \ - i2c_master.c \ quantum/color.c \ keyboards/wilba_tech/wt_mono_backlight.c \ keyboards/wilba_tech/wt_main.c +I2C_DRIVER_REQUIRED = yes \ No newline at end of file diff --git a/keyboards/wilba_tech/zeal60/rules.mk b/keyboards/wilba_tech/zeal60/rules.mk index 4f810f3d32..d1ce11b473 100644 --- a/keyboards/wilba_tech/zeal60/rules.mk +++ b/keyboards/wilba_tech/zeal60/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/wilba_tech/zeal65/rules.mk b/keyboards/wilba_tech/zeal65/rules.mk index 4f810f3d32..d1ce11b473 100644 --- a/keyboards/wilba_tech/zeal65/rules.mk +++ b/keyboards/wilba_tech/zeal65/rules.mk @@ -22,5 +22,5 @@ CIE1931_CURVE = yes SRC = keyboards/wilba_tech/wt_main.c \ keyboards/wilba_tech/wt_rgb_backlight.c \ quantum/color.c \ - drivers/led/issi/is31fl3731.c \ - i2c_master.c + drivers/led/issi/is31fl3731.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/xelus/dawn60/rev1/rules.mk b/keyboards/xelus/dawn60/rev1/rules.mk index d4e70bfbec..0a72a60eca 100644 --- a/keyboards/xelus/dawn60/rev1/rules.mk +++ b/keyboards/xelus/dawn60/rev1/rules.mk @@ -26,4 +26,4 @@ SRC += keyboards/wilba_tech/wt_main.c \ quantum/color.c \ drivers/led/issi/is31fl3731.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/xelus/dawn60/rev1_qmk/rules.mk b/keyboards/xelus/dawn60/rev1_qmk/rules.mk index 4a799710d2..edb15fa760 100644 --- a/keyboards/xelus/dawn60/rev1_qmk/rules.mk +++ b/keyboards/xelus/dawn60/rev1_qmk/rules.mk @@ -25,6 +25,6 @@ COMMON_VPATH += $(DRIVER_PATH)/issi # project specific files SRC += drivers/led/issi/is31fl3731.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes LTO_ENABLE = yes diff --git a/keyboards/xiudi/xd84/rules.mk b/keyboards/xiudi/xd84/rules.mk index c6c7f4ef93..89d05c5487 100644 --- a/keyboards/xiudi/xd84/rules.mk +++ b/keyboards/xiudi/xd84/rules.mk @@ -17,4 +17,4 @@ CUSTOM_MATRIX = lite VPATH += drivers/gpio SRC += pca9555.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/xiudi/xd96/rules.mk b/keyboards/xiudi/xd96/rules.mk index c6c7f4ef93..89d05c5487 100644 --- a/keyboards/xiudi/xd96/rules.mk +++ b/keyboards/xiudi/xd96/rules.mk @@ -17,4 +17,4 @@ CUSTOM_MATRIX = lite VPATH += drivers/gpio SRC += pca9555.c matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/yiancardesigns/barleycorn/rules.mk b/keyboards/yiancardesigns/barleycorn/rules.mk index b56efe3ef9..3808b0d3f2 100644 --- a/keyboards/yiancardesigns/barleycorn/rules.mk +++ b/keyboards/yiancardesigns/barleycorn/rules.mk @@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output CUSTOM_MATRIX = lite SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/yiancardesigns/gingham/rules.mk b/keyboards/yiancardesigns/gingham/rules.mk index 2fce424de8..cd47b89aed 100644 --- a/keyboards/yiancardesigns/gingham/rules.mk +++ b/keyboards/yiancardesigns/gingham/rules.mk @@ -1,5 +1,5 @@ -SRC = matrix.c \ - i2c_master.c +SRC = matrix.c +I2C_DRIVER_REQUIRED = yes # Build Options # change yes to no to disable diff --git a/keyboards/yiancardesigns/seigaiha/rules.mk b/keyboards/yiancardesigns/seigaiha/rules.mk index b56efe3ef9..3808b0d3f2 100644 --- a/keyboards/yiancardesigns/seigaiha/rules.mk +++ b/keyboards/yiancardesigns/seigaiha/rules.mk @@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output CUSTOM_MATRIX = lite SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/ymdk/sp64/rules.mk b/keyboards/ymdk/sp64/rules.mk index df9380f361..56da806510 100644 --- a/keyboards/ymdk/sp64/rules.mk +++ b/keyboards/ymdk/sp64/rules.mk @@ -14,4 +14,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow CUSTOM_MATRIX = yes SRC += matrix.c -QUANTUM_LIB_SRC += i2c_master.c +I2C_DRIVER_REQUIRED = yes