Simplify more feature driver defines (#22090)

This commit is contained in:
Ryan 2023-09-25 13:06:42 +10:00 committed by GitHub
parent 61702b2564
commit 21ed9b4575
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
51 changed files with 63 additions and 62 deletions

View file

@ -602,7 +602,7 @@ ifeq ($(strip $(WS2812_DRIVER_REQUIRED)), yes)
$(call CATASTROPHIC_ERROR,Invalid WS2812_DRIVER,WS2812_DRIVER="$(WS2812_DRIVER)" is not a valid WS2812 driver) $(call CATASTROPHIC_ERROR,Invalid WS2812_DRIVER,WS2812_DRIVER="$(WS2812_DRIVER)" is not a valid WS2812 driver)
endif endif
OPT_DEFS += -DWS2812_DRIVER_$(strip $(shell echo $(WS2812_DRIVER) | tr '[:lower:]' '[:upper:]')) OPT_DEFS += -DWS2812_$(strip $(shell echo $(WS2812_DRIVER) | tr '[:lower:]' '[:upper:]'))
SRC += ws2812_$(strip $(WS2812_DRIVER)).c SRC += ws2812_$(strip $(WS2812_DRIVER)).c
@ -739,17 +739,16 @@ ifeq ($(strip $(HAPTIC_ENABLE)),yes)
ifeq ($(filter $(HAPTIC_DRIVER),$(VALID_HAPTIC_DRIVER_TYPES)),) ifeq ($(filter $(HAPTIC_DRIVER),$(VALID_HAPTIC_DRIVER_TYPES)),)
$(call CATASTROPHIC_ERROR,Invalid HAPTIC_DRIVER,HAPTIC_DRIVER="$(HAPTIC_DRIVER)" is not a valid Haptic driver) $(call CATASTROPHIC_ERROR,Invalid HAPTIC_DRIVER,HAPTIC_DRIVER="$(HAPTIC_DRIVER)" is not a valid Haptic driver)
else else
OPT_DEFS += -DHAPTIC_$(strip $(shell echo $(HAPTIC_DRIVER) | tr '[:lower:]' '[:upper:]'))
COMMON_VPATH += $(DRIVER_PATH)/haptic COMMON_VPATH += $(DRIVER_PATH)/haptic
ifeq ($(strip $(HAPTIC_DRIVER)), drv2605l) ifeq ($(strip $(HAPTIC_DRIVER)), drv2605l)
SRC += drv2605l.c SRC += drv2605l.c
QUANTUM_LIB_SRC += i2c_master.c QUANTUM_LIB_SRC += i2c_master.c
OPT_DEFS += -DHAPTIC_DRV2605L
endif endif
ifeq ($(strip $(HAPTIC_DRIVER)), solenoid) ifeq ($(strip $(HAPTIC_DRIVER)), solenoid)
SRC += solenoid.c SRC += solenoid.c
OPT_DEFS += -DHAPTIC_SOLENOID
endif endif
endif endif
endif endif
@ -772,6 +771,7 @@ ifeq ($(strip $(OLED_ENABLE)), yes)
$(call CATASTROPHIC_ERROR,Invalid OLED_TRANSPORT,OLED_TRANSPORT="$(OLED_TRANSPORT)" is not a valid OLED transport) $(call CATASTROPHIC_ERROR,Invalid OLED_TRANSPORT,OLED_TRANSPORT="$(OLED_TRANSPORT)" is not a valid OLED transport)
else else
OPT_DEFS += -DOLED_ENABLE OPT_DEFS += -DOLED_ENABLE
OPT_DEFS += -DOLED_$(strip $(shell echo $(OLED_DRIVER) | tr '[:lower:]' '[:upper:]'))
COMMON_VPATH += $(DRIVER_PATH)/oled COMMON_VPATH += $(DRIVER_PATH)/oled
ifneq ($(strip $(OLED_DRIVER)), custom) ifneq ($(strip $(OLED_DRIVER)), custom)
SRC += oled_driver.c SRC += oled_driver.c
@ -924,12 +924,13 @@ ifeq ($(strip $(BLUETOOTH_ENABLE)), yes)
$(call CATASTROPHIC_ERROR,Invalid BLUETOOTH_DRIVER,BLUETOOTH_DRIVER="$(BLUETOOTH_DRIVER)" is not a valid Bluetooth driver type) $(call CATASTROPHIC_ERROR,Invalid BLUETOOTH_DRIVER,BLUETOOTH_DRIVER="$(BLUETOOTH_DRIVER)" is not a valid Bluetooth driver type)
endif endif
OPT_DEFS += -DBLUETOOTH_ENABLE OPT_DEFS += -DBLUETOOTH_ENABLE
OPT_DEFS += -DBLUETOOTH_$(strip $(shell echo $(BLUETOOTH_DRIVER) | tr '[:lower:]' '[:upper:]'))
NO_USB_STARTUP_CHECK := yes NO_USB_STARTUP_CHECK := yes
COMMON_VPATH += $(DRIVER_PATH)/bluetooth COMMON_VPATH += $(DRIVER_PATH)/bluetooth
SRC += outputselect.c SRC += outputselect.c
ifeq ($(strip $(BLUETOOTH_DRIVER)), bluefruit_le) ifeq ($(strip $(BLUETOOTH_DRIVER)), bluefruit_le)
OPT_DEFS += -DBLUETOOTH_BLUEFRUIT_LE -DHAL_USE_SPI=TRUE OPT_DEFS += -DHAL_USE_SPI=TRUE
SRC += $(DRIVER_PATH)/bluetooth/bluetooth.c SRC += $(DRIVER_PATH)/bluetooth/bluetooth.c
SRC += $(DRIVER_PATH)/bluetooth/bluefruit_le.cpp SRC += $(DRIVER_PATH)/bluetooth/bluefruit_le.cpp
QUANTUM_LIB_SRC += analog.c QUANTUM_LIB_SRC += analog.c
@ -937,7 +938,7 @@ ifeq ($(strip $(BLUETOOTH_ENABLE)), yes)
endif endif
ifeq ($(strip $(BLUETOOTH_DRIVER)), rn42) ifeq ($(strip $(BLUETOOTH_DRIVER)), rn42)
OPT_DEFS += -DBLUETOOTH_RN42 -DHAL_USE_SERIAL=TRUE OPT_DEFS += -DHAL_USE_SERIAL=TRUE
SRC += $(DRIVER_PATH)/bluetooth/bluetooth.c SRC += $(DRIVER_PATH)/bluetooth/bluetooth.c
SRC += $(DRIVER_PATH)/bluetooth/rn42.c SRC += $(DRIVER_PATH)/bluetooth/rn42.c
QUANTUM_LIB_SRC += uart.c QUANTUM_LIB_SRC += uart.c

View file

@ -85,7 +85,7 @@ WS2812_DRIVER = spi
Configure the hardware via your config.h: Configure the hardware via your config.h:
```c ```c
#define WS2812_SPI SPID1 // default: SPID1 #define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_MOSI_PAL_MODE 5 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
#define WS2812_SPI_SCK_PIN B3 // Required for F072, may be for others -- SCK pin, see the respective datasheet for the appropriate values for your MCU. default: unspecified #define WS2812_SPI_SCK_PIN B3 // Required for F072, may be for others -- SCK pin, see the respective datasheet for the appropriate values for your MCU. default: unspecified
#define WS2812_SPI_SCK_PAL_MODE 5 // SCK pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_SCK_PAL_MODE 5 // SCK pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5

View file

@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PWM_CHANNEL 4 #define BACKLIGHT_PWM_CHANNEL 4
/* Underglow */ /* Underglow */
#define WS2812_SPI SPID1 #define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PIN A5 #define WS2812_SPI_SCK_PIN A5
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0

View file

@ -17,7 +17,7 @@
#pragma once #pragma once
//SPI //SPI
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5
/* /*
* Feature disable options * Feature disable options

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -12,7 +12,7 @@
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -28,7 +28,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
/* /*
* Feature disable options * Feature disable options

View file

@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
/* /*
* Feature disable options * Feature disable options

View file

@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
/* /*
* Feature disable options * Feature disable options

View file

@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
/* /*
* Feature disable options * Feature disable options

View file

@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
/* /*
* Feature disable options * Feature disable options

View file

@ -12,7 +12,7 @@
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -21,7 +21,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PWM_CHANNEL 1 #define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1 #define BACKLIGHT_PAL_MODE 1
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -3,7 +3,7 @@
#pragma once #pragma once
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5
/* disable debug print */ /* disable debug print */

View file

@ -23,5 +23,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
/* RGB underglow configuration */ /* RGB underglow configuration */
#define WS2812_SPI SPID1 #define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5

View file

@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID1 #define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5
#define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_KEYPRESSES

View file

@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID1 // default: SPID1 #define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_MOSI_PAL_MODE 5 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
#ifdef RGB_MATRIX_ENABLE #ifdef RGB_MATRIX_ENABLE

View file

@ -17,5 +17,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID1 // default: SPID1 #define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5

View file

@ -17,5 +17,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID1 // default: SPID1 #define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5

View file

@ -17,5 +17,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID2 // default: SPID1 #define WS2812_SPI_DRIVER SPID2 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_MOSI_PAL_MODE 0 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5

View file

@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#ifdef RGBLIGHT_ENABLE #ifdef RGBLIGHT_ENABLE
#define WS2812_SPI SPID1 // default: SPID1 #define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
#define WS2812_SPI_USE_CIRCULAR_BUFFER #define WS2812_SPI_USE_CIRCULAR_BUFFER
#endif #endif

View file

@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#ifdef RGB_MATRIX_ENABLE #ifdef RGB_MATRIX_ENABLE
#define WS2812_SPI SPID1 #define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5
#define RGB_MATRIX_LED_COUNT 52 #define RGB_MATRIX_LED_COUNT 52
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 128 // Max brightness of LEDs #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 128 // Max brightness of LEDs

View file

@ -4,7 +4,7 @@
#pragma once #pragma once
/* RGB */ /* RGB */
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0

View file

@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
/* /*
* Feature disable options * Feature disable options

View file

@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
#define WS2812_SPI SPID1 #define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN A5 #define WS2812_SPI_SCK_PIN A5

View file

@ -35,7 +35,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define I2C1_TIMINGR_SCLH 3U #define I2C1_TIMINGR_SCLH 3U
#define I2C1_TIMINGR_SCLL 9U #define I2C1_TIMINGR_SCLL 9U
#define WS2812_SPI SPID2 // default: SPID1 #define WS2812_SPI_DRIVER SPID2 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5 #define WS2812_SPI_MOSI_PAL_MODE 0 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -18,5 +18,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define SOLENOID_PIN A2 #define SOLENOID_PIN A2
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5

View file

@ -16,7 +16,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5
/* /*

View file

@ -16,7 +16,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5 #define WS2812_SPI_MOSI_PAL_MODE 5
/* /*

View file

@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PAL_MODE 1 #define BACKLIGHT_PAL_MODE 1
// SPI RGB Driver // SPI RGB Driver
#define WS2812_SPI SPID2 #define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0 #define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0 #define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13 #define WS2812_SPI_SCK_PIN B13

View file

@ -66,7 +66,7 @@
#endif #endif
// WS2812-style LED control on pin A10 // WS2812-style LED control on pin A10
#ifdef WS2812_DRIVER_PWM #ifdef WS2812_PWM
# ifndef WS2812_DI_PIN # ifndef WS2812_DI_PIN
# define WS2812_DI_PIN PAL_LINE(GPIOA, 10) # define WS2812_DI_PIN PAL_LINE(GPIOA, 10)
# endif # endif

View file

@ -32,7 +32,7 @@
# endif # endif
#endif #endif
#ifdef WS2812_DRIVER_PWM #ifdef WS2812_PWM
# ifndef HAL_USE_PWM # ifndef HAL_USE_PWM
# define HAL_USE_PWM TRUE # define HAL_USE_PWM TRUE
# endif # endif

View file

@ -10,7 +10,7 @@
#include <hal.h> #include <hal.h>
// TODO: resolve/remove build warnings // TODO: resolve/remove build warnings
#if defined(RGBLIGHT_ENABLE) && defined(RGBLED_SPLIT) && defined(PROTOCOL_CHIBIOS) && defined(WS2812_DRIVER_BITBANG) #if defined(RGBLIGHT_ENABLE) && defined(RGBLED_SPLIT) && defined(PROTOCOL_CHIBIOS) && defined(WS2812_BITBANG)
# warning "RGBLED_SPLIT not supported with bitbang WS2812 driver" # warning "RGBLED_SPLIT not supported with bitbang WS2812 driver"
#endif #endif

View file

@ -6,8 +6,8 @@
/* Adapted from https://github.com/gamazeps/ws2812b-chibios-SPIDMA/ */ /* Adapted from https://github.com/gamazeps/ws2812b-chibios-SPIDMA/ */
// Define the spi your LEDs are plugged to here // Define the spi your LEDs are plugged to here
#ifndef WS2812_SPI #ifndef WS2812_SPI_DRIVER
# define WS2812_SPI SPID1 # define WS2812_SPI_DRIVER SPID1
#endif #endif
#ifndef WS2812_SPI_MOSI_PAL_MODE #ifndef WS2812_SPI_MOSI_PAL_MODE
@ -179,11 +179,11 @@ void ws2812_init(void) {
#endif #endif
}; };
spiAcquireBus(&WS2812_SPI); /* Acquire ownership of the bus. */ spiAcquireBus(&WS2812_SPI_DRIVER); /* Acquire ownership of the bus. */
spiStart(&WS2812_SPI, &spicfg); /* Setup transfer parameters. */ spiStart(&WS2812_SPI_DRIVER, &spicfg); /* Setup transfer parameters. */
spiSelect(&WS2812_SPI); /* Slave Select assertion. */ spiSelect(&WS2812_SPI_DRIVER); /* Slave Select assertion. */
#ifdef WS2812_SPI_USE_CIRCULAR_BUFFER #ifdef WS2812_SPI_USE_CIRCULAR_BUFFER
spiStartSend(&WS2812_SPI, ARRAY_SIZE(txbuf), txbuf); spiStartSend(&WS2812_SPI_DRIVER, ARRAY_SIZE(txbuf), txbuf);
#endif #endif
} }
@ -202,9 +202,9 @@ void ws2812_setleds(rgb_led_t* ledarray, uint16_t leds) {
// Instead spiSend can be used to send synchronously (or the thread logic can be added back). // Instead spiSend can be used to send synchronously (or the thread logic can be added back).
#ifndef WS2812_SPI_USE_CIRCULAR_BUFFER #ifndef WS2812_SPI_USE_CIRCULAR_BUFFER
# ifdef WS2812_SPI_SYNC # ifdef WS2812_SPI_SYNC
spiSend(&WS2812_SPI, ARRAY_SIZE(txbuf), txbuf); spiSend(&WS2812_SPI_DRIVER, ARRAY_SIZE(txbuf), txbuf);
# else # else
spiStartSend(&WS2812_SPI, ARRAY_SIZE(txbuf), txbuf); spiStartSend(&WS2812_SPI_DRIVER, ARRAY_SIZE(txbuf), txbuf);
# endif # endif
#endif #endif
} }