~ruther/qmk_firmware

21ed9b4575fd5c19b4879b90d4a15863aa731ba9 — Ryan 1 year, 7 months ago 61702b2
Simplify more feature driver defines (#22090)

51 files changed, 63 insertions(+), 62 deletions(-)

M builddefs/common_features.mk
M docs/ws2812_driver.md
M keyboards/4pplet/eagle_viper_rep/rev_a/config.h
M keyboards/aeboards/ext65/rev2/config.h
M keyboards/bt66tech/bt66tech60/config.h
M keyboards/cannonkeys/an_c/config.h
M keyboards/cannonkeys/atlas/config.h
M keyboards/cannonkeys/cloudline/config.h
M keyboards/cannonkeys/db60/config.h
M keyboards/cannonkeys/devastatingtkl/config.h
M keyboards/cannonkeys/instant60/config.h
M keyboards/cannonkeys/instant65/config.h
M keyboards/cannonkeys/malicious_ergo/config.h
M keyboards/cannonkeys/obliterated75/config.h
M keyboards/cannonkeys/ortho48/config.h
M keyboards/cannonkeys/ortho60/config.h
M keyboards/cannonkeys/ortho75/config.h
M keyboards/cannonkeys/practice60/config.h
M keyboards/cannonkeys/practice65/config.h
M keyboards/cannonkeys/ripple/config.h
M keyboards/cannonkeys/sagittarius/config.h
M keyboards/cannonkeys/savage65/config.h
M keyboards/cannonkeys/serenity/config.h
M keyboards/cannonkeys/tmov2/config.h
M keyboards/cannonkeys/tsukuyomi/config.h
M keyboards/eason/aeroboard/config.h
M keyboards/handwired/co60/rev7/config.h
M keyboards/handwired/steamvan/rev1/config.h
M keyboards/keebsforall/coarse60/config.h
M keyboards/mechlovin/adelais/rgb_led/rev3/config.h
M keyboards/mechlovin/zed60/config.h
M keyboards/mechlovin/zed65/910/config.h
M keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h
M keyboards/mechlovin/zed65/rev1/config.h
M keyboards/nack/config.h
M keyboards/plywrks/ply8x/config.h
M keyboards/primekb/meridian/config.h
M keyboards/primekb/meridian/ws2812/config.h
M keyboards/projectkb/alice/rev1/config.h
M keyboards/projectkb/alice/rev2/config.h
M keyboards/rart/rartlice/config.h
M keyboards/riot_pad/config.h
M keyboards/spaceholdings/nebula12/config.h
M keyboards/vertex/angle65/config.h
M keyboards/vertex/arc60/config.h
M keyboards/vertex/arc60h/config.h
M keyboards/zoo/wampus/config.h
M platforms/chibios/boards/BONSAI_C4/configs/config.h
M platforms/chibios/boards/BONSAI_C4/configs/halconf.h
M platforms/chibios/drivers/serial.c
M platforms/chibios/drivers/ws2812_spi.c
M builddefs/common_features.mk => builddefs/common_features.mk +6 -5
@@ 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)
    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



@@ 739,17 739,16 @@ ifeq ($(strip $(HAPTIC_ENABLE)),yes)
    ifeq ($(filter $(HAPTIC_DRIVER),$(VALID_HAPTIC_DRIVER_TYPES)),)
        $(call CATASTROPHIC_ERROR,Invalid HAPTIC_DRIVER,HAPTIC_DRIVER="$(HAPTIC_DRIVER)" is not a valid Haptic driver)
    else
        OPT_DEFS += -DHAPTIC_$(strip $(shell echo $(HAPTIC_DRIVER) | tr '[:lower:]' '[:upper:]'))
        COMMON_VPATH += $(DRIVER_PATH)/haptic

        ifeq ($(strip $(HAPTIC_DRIVER)), drv2605l)
            SRC += drv2605l.c
            QUANTUM_LIB_SRC += i2c_master.c
            OPT_DEFS += -DHAPTIC_DRV2605L
        endif

        ifeq ($(strip $(HAPTIC_DRIVER)), solenoid)
            SRC += solenoid.c
            OPT_DEFS += -DHAPTIC_SOLENOID
        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)
        else
            OPT_DEFS += -DOLED_ENABLE
            OPT_DEFS += -DOLED_$(strip $(shell echo $(OLED_DRIVER) | tr '[:lower:]' '[:upper:]'))
            COMMON_VPATH += $(DRIVER_PATH)/oled
            ifneq ($(strip $(OLED_DRIVER)), custom)
                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)
    endif
    OPT_DEFS += -DBLUETOOTH_ENABLE
    OPT_DEFS += -DBLUETOOTH_$(strip $(shell echo $(BLUETOOTH_DRIVER) | tr '[:lower:]' '[:upper:]'))
    NO_USB_STARTUP_CHECK := yes
    COMMON_VPATH += $(DRIVER_PATH)/bluetooth
    SRC += outputselect.c

    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/bluefruit_le.cpp
        QUANTUM_LIB_SRC += analog.c


@@ 937,7 938,7 @@ ifeq ($(strip $(BLUETOOTH_ENABLE)), yes)
    endif

    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/rn42.c
        QUANTUM_LIB_SRC += uart.c

M docs/ws2812_driver.md => docs/ws2812_driver.md +1 -1
@@ 85,7 85,7 @@ WS2812_DRIVER = spi

Configure the hardware via your config.h:
```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_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

M keyboards/4pplet/eagle_viper_rep/rev_a/config.h => keyboards/4pplet/eagle_viper_rep/rev_a/config.h +1 -1
@@ 20,7 20,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PWM_CHANNEL   4

/* Underglow */
#define WS2812_SPI  SPID1
#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PIN A5
#define WS2812_SPI_SCK_PAL_MODE 0

M keyboards/aeboards/ext65/rev2/config.h => keyboards/aeboards/ext65/rev2/config.h +1 -1
@@ 17,7 17,7 @@
#pragma once

//SPI
#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/bt66tech/bt66tech60/config.h => keyboards/bt66tech/bt66tech60/config.h +1 -1
@@ 25,7 25,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5
/*
 * Feature disable options

M keyboards/cannonkeys/an_c/config.h => keyboards/cannonkeys/an_c/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/atlas/config.h => keyboards/cannonkeys/atlas/config.h +1 -1
@@ 22,7 22,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/cloudline/config.h => keyboards/cannonkeys/cloudline/config.h +1 -1
@@ 12,7 12,7 @@
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/db60/config.h => keyboards/cannonkeys/db60/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/devastatingtkl/config.h => keyboards/cannonkeys/devastatingtkl/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/instant60/config.h => keyboards/cannonkeys/instant60/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/instant65/config.h => keyboards/cannonkeys/instant65/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/malicious_ergo/config.h => keyboards/cannonkeys/malicious_ergo/config.h +1 -1
@@ 28,7 28,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/obliterated75/config.h => keyboards/cannonkeys/obliterated75/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/ortho48/config.h => keyboards/cannonkeys/ortho48/config.h +1 -1
@@ 25,7 25,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2

/*
 * Feature disable options

M keyboards/cannonkeys/ortho60/config.h => keyboards/cannonkeys/ortho60/config.h +1 -1
@@ 25,7 25,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2

/*
 * Feature disable options

M keyboards/cannonkeys/ortho75/config.h => keyboards/cannonkeys/ortho75/config.h +1 -1
@@ 25,7 25,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2

/*
 * Feature disable options

M keyboards/cannonkeys/practice60/config.h => keyboards/cannonkeys/practice60/config.h +1 -1
@@ 25,7 25,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2

/*
 * Feature disable options

M keyboards/cannonkeys/practice65/config.h => keyboards/cannonkeys/practice65/config.h +1 -1
@@ 25,7 25,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2

/*
 * Feature disable options

M keyboards/cannonkeys/ripple/config.h => keyboards/cannonkeys/ripple/config.h +1 -1
@@ 12,7 12,7 @@
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/sagittarius/config.h => keyboards/cannonkeys/sagittarius/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/savage65/config.h => keyboards/cannonkeys/savage65/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/serenity/config.h => keyboards/cannonkeys/serenity/config.h +1 -1
@@ 21,7 21,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PWM_CHANNEL   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_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/tmov2/config.h => keyboards/cannonkeys/tmov2/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/cannonkeys/tsukuyomi/config.h => keyboards/cannonkeys/tsukuyomi/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/eason/aeroboard/config.h => keyboards/eason/aeroboard/config.h +1 -1
@@ 3,7 3,7 @@

#pragma once

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5

/* disable debug print */

M keyboards/handwired/co60/rev7/config.h => keyboards/handwired/co60/rev7/config.h +1 -1
@@ 23,5 23,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_RESYNC_ENABLE

/* RGB underglow configuration */
#define WS2812_SPI SPID1
#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5

M keyboards/handwired/steamvan/rev1/config.h => keyboards/handwired/steamvan/rev1/config.h +1 -1
@@ 22,7 22,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID1
#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5

#define RGB_MATRIX_KEYPRESSES

M keyboards/keebsforall/coarse60/config.h => keyboards/keebsforall/coarse60/config.h +1 -1
@@ 25,7 25,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/mechlovin/adelais/rgb_led/rev3/config.h => keyboards/mechlovin/adelais/rgb_led/rev3/config.h +1 -1
@@ 17,7 17,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#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

#ifdef RGB_MATRIX_ENABLE

M keyboards/mechlovin/zed60/config.h => keyboards/mechlovin/zed60/config.h +1 -1
@@ 17,5 17,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#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

M keyboards/mechlovin/zed65/910/config.h => keyboards/mechlovin/zed65/910/config.h +1 -1
@@ 17,5 17,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#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

M keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h => keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h +1 -1
@@ 17,5 17,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#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

M keyboards/mechlovin/zed65/rev1/config.h => keyboards/mechlovin/zed65/rev1/config.h +1 -1
@@ 18,7 18,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#pragma once

#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_USE_CIRCULAR_BUFFER
#endif

M keyboards/nack/config.h => keyboards/nack/config.h +1 -1
@@ 18,7 18,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#pragma once

#ifdef RGB_MATRIX_ENABLE
    #define WS2812_SPI SPID1
    #define WS2812_SPI_DRIVER SPID1
    #define WS2812_SPI_MOSI_PAL_MODE 5
    #define RGB_MATRIX_LED_COUNT 52
    #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 128 // Max brightness of LEDs

M keyboards/plywrks/ply8x/config.h => keyboards/plywrks/ply8x/config.h +1 -1
@@ 4,7 4,7 @@
#pragma once

/* RGB */
#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
#define WS2812_SPI_SCK_PAL_MODE 0

M keyboards/primekb/meridian/config.h => keyboards/primekb/meridian/config.h +1 -1
@@ 17,7 17,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#pragma once

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/primekb/meridian/ws2812/config.h => keyboards/primekb/meridian/ws2812/config.h +1 -1
@@ 17,7 17,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#pragma once

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/projectkb/alice/rev1/config.h => keyboards/projectkb/alice/rev1/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/projectkb/alice/rev2/config.h => keyboards/projectkb/alice/rev2/config.h +1 -1
@@ 26,7 26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/rart/rartlice/config.h => keyboards/rart/rartlice/config.h +1 -1
@@ 22,7 22,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2

/*
 * Feature disable options

M keyboards/riot_pad/config.h => keyboards/riot_pad/config.h +1 -1
@@ 2,7 2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once

#define WS2812_SPI SPID1
#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN A5

M keyboards/spaceholdings/nebula12/config.h => keyboards/spaceholdings/nebula12/config.h +1 -1
@@ 35,7 35,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define I2C1_TIMINGR_SCLH 3U
#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_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M keyboards/vertex/angle65/config.h => keyboards/vertex/angle65/config.h +1 -1
@@ 18,5 18,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#define SOLENOID_PIN A2

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5

M keyboards/vertex/arc60/config.h => keyboards/vertex/arc60/config.h +1 -1
@@ 16,7 16,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#pragma once

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5

/*

M keyboards/vertex/arc60h/config.h => keyboards/vertex/arc60h/config.h +1 -1
@@ 16,7 16,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#pragma once

#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5

/*

M keyboards/zoo/wampus/config.h => keyboards/zoo/wampus/config.h +1 -1
@@ 22,7 22,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PAL_MODE      1

// SPI RGB Driver
#define WS2812_SPI SPID2
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

M platforms/chibios/boards/BONSAI_C4/configs/config.h => platforms/chibios/boards/BONSAI_C4/configs/config.h +1 -1
@@ 66,7 66,7 @@
#endif

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

M platforms/chibios/boards/BONSAI_C4/configs/halconf.h => platforms/chibios/boards/BONSAI_C4/configs/halconf.h +1 -1
@@ 32,7 32,7 @@
#    endif
#endif

#ifdef WS2812_DRIVER_PWM
#ifdef WS2812_PWM
#    ifndef HAL_USE_PWM
#        define HAL_USE_PWM TRUE
#    endif

M platforms/chibios/drivers/serial.c => platforms/chibios/drivers/serial.c +1 -1
@@ 10,7 10,7 @@
#include <hal.h>

// 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"
#endif


M platforms/chibios/drivers/ws2812_spi.c => platforms/chibios/drivers/ws2812_spi.c +8 -8
@@ 6,8 6,8 @@
/* Adapted from https://github.com/gamazeps/ws2812b-chibios-SPIDMA/ */

// Define the spi your LEDs are plugged to here
#ifndef WS2812_SPI
#    define WS2812_SPI SPID1
#ifndef WS2812_SPI_DRIVER
#    define WS2812_SPI_DRIVER SPID1
#endif

#ifndef WS2812_SPI_MOSI_PAL_MODE


@@ 179,11 179,11 @@ void ws2812_init(void) {
#endif
    };

    spiAcquireBus(&WS2812_SPI);     /* Acquire ownership of the bus.    */
    spiStart(&WS2812_SPI, &spicfg); /* Setup transfer parameters.       */
    spiSelect(&WS2812_SPI);         /* Slave Select assertion.          */
    spiAcquireBus(&WS2812_SPI_DRIVER);     /* Acquire ownership of the bus.    */
    spiStart(&WS2812_SPI_DRIVER, &spicfg); /* Setup transfer parameters.       */
    spiSelect(&WS2812_SPI_DRIVER);         /* Slave Select assertion.          */
#ifdef WS2812_SPI_USE_CIRCULAR_BUFFER
    spiStartSend(&WS2812_SPI, ARRAY_SIZE(txbuf), txbuf);
    spiStartSend(&WS2812_SPI_DRIVER, ARRAY_SIZE(txbuf), txbuf);
#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).
#ifndef WS2812_SPI_USE_CIRCULAR_BUFFER
#    ifdef WS2812_SPI_SYNC
    spiSend(&WS2812_SPI, ARRAY_SIZE(txbuf), txbuf);
    spiSend(&WS2812_SPI_DRIVER, ARRAY_SIZE(txbuf), txbuf);
#    else
    spiStartSend(&WS2812_SPI, ARRAY_SIZE(txbuf), txbuf);
    spiStartSend(&WS2812_SPI_DRIVER, ARRAY_SIZE(txbuf), txbuf);
#    endif
#endif
}

Do not follow this link