summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitris Mantzouranis <d3xter93@gmail.com>2022-01-10 19:38:45 +0200
committerDimitris Mantzouranis <d3xter93@gmail.com>2022-01-10 19:38:45 +0200
commitfa93058b6689b84e940f653ae877c6213ae491e8 (patch)
treea8a8e3fb763f03ec1b7a001a6caff7cc97738475
parentbc7fa36a8efde652ecbefc6cc8864ba65aedbcdd (diff)
240: fix keyboard build
-rw-r--r--keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.c85
-rw-r--r--keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.h229
-rw-r--r--keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.mk5
-rw-r--r--keyboards/ajazz/ak33/rev1/chconf.h700
-rw-r--r--keyboards/ajazz/ak33/rev1/halconf.h524
-rw-r--r--keyboards/ajazz/ak33/rev1/led_matrix.c5
-rw-r--r--keyboards/ajazz/ak33/rev1/mcuconf.h101
-rw-r--r--keyboards/marvo/kg938/boards/SN_SN32F240/board.c85
-rw-r--r--keyboards/marvo/kg938/boards/SN_SN32F240/board.h229
-rw-r--r--keyboards/marvo/kg938/boards/SN_SN32F240/board.mk5
-rw-r--r--keyboards/marvo/kg938/chconf.h700
-rw-r--r--keyboards/marvo/kg938/halconf.h524
-rw-r--r--keyboards/marvo/kg938/led_matrix.c5
-rw-r--r--keyboards/marvo/kg938/mcuconf.h101
-rw-r--r--keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.c85
-rw-r--r--keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.h229
-rw-r--r--keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.mk5
-rw-r--r--keyboards/redragon/k552/rev1/chconf.h700
-rw-r--r--keyboards/redragon/k552/rev1/config.h (renamed from keyboards/redragon/k552/rev1/keymaps/abnt2/config.h)3
-rw-r--r--keyboards/redragon/k552/rev1/halconf.h524
-rw-r--r--keyboards/redragon/k552/rev1/keymaps/ansi/config.h57
-rw-r--r--keyboards/redragon/k552/rev1/keymaps/iso/config.h57
-rw-r--r--keyboards/redragon/k552/rev1/led_matrix.c5
-rw-r--r--keyboards/redragon/k552/rev1/mcuconf.h101
-rw-r--r--keyboards/redragon/k552/rev2/config.h3
-rw-r--r--keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.c85
-rw-r--r--keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.h229
-rw-r--r--keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.mk5
-rw-r--r--keyboards/sharkoon/sgk3/chconf.h700
-rw-r--r--keyboards/sharkoon/sgk3/halconf.h524
-rw-r--r--keyboards/sharkoon/sgk3/keymaps/ansi/config.h5
-rw-r--r--keyboards/sharkoon/sgk3/keymaps/iso/config.h5
-rw-r--r--keyboards/sharkoon/sgk3/led_matrix.c5
-rw-r--r--keyboards/sharkoon/sgk3/mcuconf.h101
-rw-r--r--keyboards/spcgear/gk530/boards/SN_SN32F240/board.c85
-rw-r--r--keyboards/spcgear/gk530/boards/SN_SN32F240/board.h229
-rw-r--r--keyboards/spcgear/gk530/boards/SN_SN32F240/board.mk5
-rw-r--r--keyboards/spcgear/gk530/chconf.h700
-rw-r--r--keyboards/spcgear/gk530/halconf.h524
-rw-r--r--keyboards/spcgear/gk530/led_matrix.c5
-rw-r--r--keyboards/spcgear/gk530/mcuconf.h101
-rw-r--r--keyboards/spcgear/gk530/rules.mk35
-rw-r--r--keyboards/spcgear/gk540/boards/SN_SN32F240/board.c85
-rw-r--r--keyboards/spcgear/gk540/boards/SN_SN32F240/board.h229
-rw-r--r--keyboards/spcgear/gk540/boards/SN_SN32F240/board.mk5
-rw-r--r--keyboards/spcgear/gk540/chconf.h700
-rw-r--r--keyboards/spcgear/gk540/halconf.h524
-rw-r--r--keyboards/spcgear/gk540/led_matrix.c5
-rw-r--r--keyboards/spcgear/gk540/mcuconf.h101
-rw-r--r--keyboards/spcgear/gk540/rules.mk35
50 files changed, 10 insertions, 10084 deletions
diff --git a/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.c b/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.c
deleted file mode 100644
index a896aea21..000000000
--- a/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#include "hal.h"
-
-#if HAL_USE_PAL || defined(__DOXYGEN__)
-/**
- * @brief PAL setup.
- * @details Digital I/O ports static configuration as defined in @p board.h.
- * This variable is used by the HAL when initializing the PAL driver.
- */
-const PALConfig pal_default_config = {
- #if SN32_HAS_GPIOA
- {VAL_GPIOA_MODE},
- #endif
- #if SN32_HAS_GPIOB
- {VAL_GPIOB_MODE},
- #endif
- #if SN32_HAS_GPIOC
- {VAL_GPIOC_MODE},
- #endif
- #if SN32_HAS_GPIOD
- {VAL_GPIOD_MODE},
- #endif
-};
-#endif
-
-static int flag __attribute__((section(".flag"))) __attribute__((__used__)) = 0xAAAA5555;
-
-extern void enter_bootloader_mode_if_requested(void);
-
-/**
- * @brief Early initialization code.
- * @details This initialization must be performed just after stack setup
- * and before any other initialization.
- */
-void __early_init(void) {
- enter_bootloader_mode_if_requested();
- sn32_clock_init();
-}
-
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-// SN_GPIO0->MODE = 0xffff;
-// // setP0.0~P0.1, P0.6~P0.7, P0.10~P0.15 to input pull-up
-// SN_GPIO0->CFG = 0x000A0AA0;
-
-// // set P1.2~1.9, P1.12~P1.15 to input pull-up
-// SN_GPIO1->CFG = 0x00A0000A;
-
-// SN_GPIO2->MODE = 0xFFFF;
-// // set P2.4~P2.15 to input pull-up
-// SN_GPIO2->CFG = 0x000000AA;
-
-// // set P3.0~P3.1, P3.4~P3.8 to input pull-up
-// SN_GPIO3->CFG = 0xAAA800A0;
-
- // Set led pins to output
-// SN_GPIO2->CFG = 0xFFFF;
-// SN_GPIO2->DATA = 0x0; // Set low
-
- SN_SYS0->SWDCTRL_b.SWDDIS = 1; // Disable SWD
-} \ No newline at end of file
diff --git a/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.h b/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.h
deleted file mode 100644
index 99a5982ef..000000000
--- a/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.h
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef _BOARD_H_
-#define _BOARD_H_
-
-/*
- * Setup for Generic STM32_F303 Board
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_GENERIC_SN32_F240
-#define BOARD_NAME "SN32F240"
-
-/*
- * MCU type as defined in the ST header.
- */
-#define system_SN32F240
-
-/*
- * IO pins assignments.
- */
-#define GPIOA_PIN0 0U
-#define GPIOA_PIN1 1U
-#define GPIOA_PIN2 2U
-#define GPIOA_PIN3 3U
-#define GPIOA_PIN4 4U
-#define GPIOA_PIN5 5U
-#define GPIOA_PIN6 6U
-#define GPIOA_PIN7 7U
-#define GPIOA_PIN8 8U
-#define GPIOA_PIN9 9U
-#define GPIOA_PIN10 10U
-#define GPIOA_PIN11 11U
-#define GPIOA_PIN12 12U
-#define GPIOA_PIN13 13U
-#define GPIOA_PIN14 14U
-#define GPIOA_PIN15 15U
-
-#define GPIOB_PIN0 0U
-#define GPIOB_PIN1 1U
-#define GPIOB_PIN2 2U
-#define GPIOB_PIN3 3U
-#define GPIOB_PIN4 4U
-#define GPIOB_PIN5 5U
-#define GPIOB_PIN6 6U
-#define GPIOB_PIN7 7U
-#define GPIOB_PIN8 8U
-#define GPIOB_PIN9 9U
-#define GPIOB_PIN10 10U
-#define GPIOB_PIN11 11U
-#define GPIOB_PIN12 12U
-#define GPIOB_PIN13 13U
-#define GPIOB_PIN14 14U
-#define GPIOB_PIN15 15U
-
-#define GPIOC_PIN0 0U
-#define GPIOC_PIN1 1U
-#define GPIOC_PIN2 2U
-#define GPIOC_PIN3 3U
-#define GPIOC_PIN4 4U
-#define GPIOC_PIN5 5U
-#define GPIOC_PIN6 6U
-#define GPIOC_PIN7 7U
-#define GPIOC_PIN8 8U
-#define GPIOC_PIN9 9U
-#define GPIOC_PIN10 10U
-#define GPIOC_PIN11 11U
-#define GPIOC_PIN12 12U
-#define GPIOC_PIN13 13U
-#define GPIOC_PIN14 14U
-#define GPIOC_PIN15 15U
-
-// #define GPIOD_PIN0 0U
-// #define GPIOD_PIN1 1U
-// #define GPIOD_PIN2 2U
-#define GPIOD_PIN3 3U
-#define GPIOD_PIN4 4U
-#define GPIOD_PIN5 5U
-#define GPIOD_PIN6 6U
-#define GPIOD_PIN7 7U
-#define GPIOD_PIN8 8U
-#define GPIOD_PIN9 9U
-#define GPIOD_PIN10 10U
-#define GPIOD_PIN11 11U
-// #define GPIOD_PIN12 12U
-// #define GPIOD_PIN13 13U
-// #define GPIOD_PIN14 14U
-// #define GPIOD_PIN15 15U
-
-
-/*
- * IO lines assignments.
- */
-// #define LINE_L3GD20_SDI PAL_LINE(GPIOA, 7U)
-// #define LINE_USB_DM PAL_LINE(GPIOA, 11U)
-// #define LINE_USB_DP PAL_LINE(GPIOA, 12U)
-#define LINE_SWDIO PAL_LINE(GPIOD, 5U)
-#define LINE_SWCLK PAL_LINE(GPIOD, 6U)
-
-// #define LINE_PINB8 PAL_LINE(GPIOB, 8U)
-// #define LINE_PINB9 PAL_LINE(GPIOB, 9U)
-
-#define LINE_CAPS_LOCK PAL_LINE(GPIOC, 8U)
-
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the SN32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n)))
-#define PIN_MODE_OUTPUT(n) (1U << ((n)))
-#define PIN_MODE_PULLUP(n) (0U << ((n*2)))
-#define PIN_MODE_SCHMITT_EN(n) (10U << ((n*2)))
-#define PIN_MODE_SCHMITT_DIS(n) (11U << ((n*2)))
-
-/*
- * GPIOA setup:
- *
- * PA0 - PIN0 (input pullup).
- * PA1 - PIN1 (input pullup).
- * PA2 - PIN2 (input pullup).
- * PA3 - PIN3 (input pullup).
- * PA4 - PIN4 (input pullup).
- * PA5 - PIN5 (input pullup).
- * PA6 - PIN6 (input pullup).
- * PA7 - PIN7 (input pullup).
- * PA8 - PIN8 (input pullup).
- * PA9 - PIN9 (input pullup).
- * PA11 - PIN10 (input pullup).
- * PA11 - PIN11 (input pullup).
- * PA12 - PIN12 (input pullup).
- * PA13 - PIN13 (input pullup).
- * PA14 - PIN14 (input pullup).
- * PA15 - PIN15 (input pullup).
- */
-#define VAL_GPIOA_MODE (PIN_MODE_INPUT(GPIOA_PIN0) | PIN_MODE_INPUT(GPIOA_PIN1) | PIN_MODE_INPUT(GPIOA_PIN2) | PIN_MODE_INPUT(GPIOA_PIN3) | PIN_MODE_INPUT(GPIOA_PIN4) | PIN_MODE_INPUT(GPIOA_PIN5) | PIN_MODE_INPUT(GPIOA_PIN6) | PIN_MODE_INPUT(GPIOA_PIN7) | PIN_MODE_INPUT(GPIOA_PIN8) | PIN_MODE_INPUT(GPIOA_PIN9) | PIN_MODE_INPUT(GPIOA_PIN10) | PIN_MODE_INPUT(GPIOA_PIN11) | PIN_MODE_INPUT(GPIOA_PIN12) | PIN_MODE_INPUT(GPIOA_PIN13) | PIN_MODE_INPUT(GPIOA_PIN14) | PIN_MODE_INPUT(GPIOA_PIN15))
-
-/*
- * GPIOB setup:
- *
- * PB0 - PIN0 (input pullup).
- * PB1 - PIN1 (input pullup).
- * PB2 - PIN2 (input pullup).
- * PB3 - PIN3 (input pullup).
- * PB4 - PIN4 (input pullup).
- * PB5 - PIN5 (input pullup).
- * PB6 - PIN6 (input pullup).
- * PB7 - PIN7 (input pullup).
- * PB8 - PIN8 (input pullup).
- * PB9 - PIN9 (input pullup).
- * PB10 - PIN10 (input pullup).
- * PB11 - PIN11 (input pullup).
- * PB12 - PIN12 (input pullup).
- * PB13 - PIN13 (input pullup).
- * PB14 - PIN14 (input pullup).
- * PB15 - PIN15 (input pullup).
- */
-#define VAL_GPIOB_MODE (PIN_MODE_INPUT(GPIOB_PIN0) | PIN_MODE_INPUT(GPIOB_PIN1) | PIN_MODE_INPUT(GPIOB_PIN2) | PIN_MODE_INPUT(GPIOB_PIN3) | PIN_MODE_INPUT(GPIOB_PIN4) | PIN_MODE_INPUT(GPIOB_PIN5) | PIN_MODE_INPUT(GPIOB_PIN6) | PIN_MODE_OUTPUT(GPIOB_PIN7) | PIN_MODE_INPUT(GPIOB_PIN8) | PIN_MODE_INPUT(GPIOB_PIN9) | PIN_MODE_INPUT(GPIOB_PIN10) | PIN_MODE_INPUT(GPIOB_PIN11) | PIN_MODE_INPUT(GPIOB_PIN12) | PIN_MODE_INPUT(GPIOB_PIN13) | PIN_MODE_INPUT(GPIOB_PIN14) | PIN_MODE_INPUT(GPIOB_PIN15))
-/*
- * GPIOC setup:
- *
- * PC0 - PIN0 (input pullup).
- * PC1 - PIN1 (input pullup).
- * PC2 - PIN2 (input pullup).
- * PC3 - PIN3 (input pullup).
- * PC4 - PIN4 (input pullup).
- * PC5 - PIN5 (input pullup).
- * PC6 - PIN6 (input pullup).
- * PC7 - PIN7 (input pullup).
- * PC8 - PIN8 (input pullup).
- * PC9 - PIN9 (input pullup).
- * PC10 - PIN10 (input pullup).
- * PC11 - PIN11 (input pullup).
- * PC12 - PIN12 (input pullup).
- * PC13 - PIN13 (input pullup).
- * PC14 - PIN14 (input pullup).
- * PC15 - PIN15 (input pullup).
- */
-#define VAL_GPIOC_MODE (PIN_MODE_INPUT(GPIOC_PIN0) | PIN_MODE_INPUT(GPIOC_PIN1) | PIN_MODE_INPUT(GPIOC_PIN2) | PIN_MODE_INPUT(GPIOC_PIN3) | PIN_MODE_INPUT(GPIOC_PIN4) | PIN_MODE_INPUT(GPIOC_PIN5) | PIN_MODE_INPUT(GPIOC_PIN6) | PIN_MODE_INPUT(GPIOC_PIN7) | PIN_MODE_INPUT(GPIOC_PIN8) | PIN_MODE_INPUT(GPIOC_PIN9) | PIN_MODE_INPUT(GPIOC_PIN10) | PIN_MODE_INPUT(GPIOC_PIN11) | PIN_MODE_INPUT(GPIOC_PIN12) | PIN_MODE_INPUT(GPIOC_PIN13) | PIN_MODE_INPUT(GPIOC_PIN14) | PIN_MODE_INPUT(GPIOC_PIN15))
-
-/*
- * GPIOD setup:
- *
- * PD0 - PIN0 (input pullup).
- * PD1 - PIN1 (input pullup).
- * PD2 - PIN2 (input pullup).
- * PD3 - PIN3 (input pullup).
- * PD4 - PIN4 (input pullup).
- * PD5 - PIN5 (input pullup).
- * PD6 - PIN6 (input pullup).
- * PD7 - PIN7 (input pullup).
- * PD8 - PIN8 (input pullup).
- * PD9 - PIN9 (input pullup).
- * PD11 - PIN10 (input pullup).
- * PD11 - PIN11 (input pullup).
- * PD12 - PIN12 (input pullup).
- * PD13 - PIN13 (input pullup).
- * PD14 - PIN14 (input pullup).
- * PD15 - PIN15 (input pullup).
- */
-#define VAL_GPIOD_MODE (PIN_MODE_INPUT(GPIOD_PIN3) | PIN_MODE_INPUT(GPIOD_PIN4) | PIN_MODE_INPUT(GPIOD_PIN5) | PIN_MODE_INPUT(GPIOD_PIN6) | PIN_MODE_INPUT(GPIOD_PIN7) | PIN_MODE_INPUT(GPIOD_PIN8) | PIN_MODE_INPUT(GPIOD_PIN9) | PIN_MODE_INPUT(GPIOD_PIN10) | PIN_MODE_INPUT(GPIOD_PIN11))
-
-#if !defined(_FROM_ASM_)
-# ifdef __cplusplus
-extern "C" {
-# endif
-void boardInit(void);
-# ifdef __cplusplus
-}
-# endif
-#endif /* _FROM_ASM_ */
-
-#endif /* _BOARD_H_ */ \ No newline at end of file
diff --git a/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.mk b/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.mk
deleted file mode 100644
index e9bfc74b6..000000000
--- a/keyboards/ajazz/ak33/rev1/boards/SN_SN32F240/board.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# List of all the board related files.
-BOARDSRC = $(BOARD_PATH)/boards/SN_SN32F240/board.c
-
-# Required include directories
-BOARDINC = $(BOARD_PATH)/boards/SN_SN32F240 \ No newline at end of file
diff --git a/keyboards/ajazz/ak33/rev1/chconf.h b/keyboards/ajazz/ak33/rev1/chconf.h
deleted file mode 100644
index 2b863e582..000000000
--- a/keyboards/ajazz/ak33/rev1/chconf.h
+++ /dev/null
@@ -1,700 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file rt/templates/chconf.h
- * @brief Configuration file template.
- * @details A copy of this file must be placed in each project directory, it
- * contains the application specific kernel settings.
- *
- * @addtogroup config
- * @details Kernel related settings and hooks.
- * @{
- */
-
-#ifndef CHCONF_H
-# define CHCONF_H
-
-# define _CHIBIOS_RT_CONF_
-# define _CHIBIOS_RT_CONF_VER_6_0_
-
-/*===========================================================================*/
-/**
- * @name System timers settings
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System time counter resolution.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_ST_RESOLUTION)
-# define CH_CFG_ST_RESOLUTION 32
-# endif
-
-/**
- * @brief System tick frequency.
- * @details Frequency of the system timer that drives the system ticks. This
- * setting also defines the system tick time unit.
- */
-# if !defined(CH_CFG_ST_FREQUENCY)
-# define CH_CFG_ST_FREQUENCY 10000
-# endif
-
-/**
- * @brief Time intervals data size.
- * @note Allowed values are 16, 32 or 64 bits.
- */
-# if !defined(CH_CFG_INTERVALS_SIZE)
-# define CH_CFG_INTERVALS_SIZE 32
-# endif
-
-/**
- * @brief Time types data size.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_TIME_TYPES_SIZE)
-# define CH_CFG_TIME_TYPES_SIZE 32
-# endif
-
-/**
- * @brief Time delta constant for the tick-less mode.
- * @note If this value is zero then the system uses the classic
- * periodic tick. This value represents the minimum number
- * of ticks that is safe to specify in a timeout directive.
- * The value one is not valid, timeouts are rounded up to
- * this value.
- */
-# if !defined(CH_CFG_ST_TIMEDELTA)
-# define CH_CFG_ST_TIMEDELTA 0
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel parameters and options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Round robin interval.
- * @details This constant is the number of system ticks allowed for the
- * threads before preemption occurs. Setting this value to zero
- * disables the preemption for threads with equal priority and the
- * round robin becomes cooperative. Note that higher priority
- * threads can still preempt, the kernel is always preemptive.
- * @note Disabling the round robin preemption makes the kernel more compact
- * and generally faster.
- * @note The round robin preemption is not supported in tickless mode and
- * must be set to zero in that case.
- */
-# if !defined(CH_CFG_TIME_QUANTUM)
-# define CH_CFG_TIME_QUANTUM 0
-# endif
-
-/**
- * @brief Managed RAM size.
- * @details Size of the RAM area to be managed by the OS. If set to zero
- * then the whole available RAM is used. The core memory is made
- * available to the heap allocator and/or can be used directly through
- * the simplified core memory allocator.
- *
- * @note In order to let the OS manage the whole RAM the linker script must
- * provide the @p __heap_base__ and @p __heap_end__ symbols.
- * @note Requires @p CH_CFG_USE_MEMCORE.
- */
-# if !defined(CH_CFG_MEMCORE_SIZE)
-# define CH_CFG_MEMCORE_SIZE 0
-# endif
-
-/**
- * @brief Idle thread automatic spawn suppression.
- * @details When this option is activated the function @p chSysInit()
- * does not spawn the idle thread. The application @p main()
- * function becomes the idle thread and must implement an
- * infinite loop.
- */
-# if !defined(CH_CFG_NO_IDLE_THREAD)
-# define CH_CFG_NO_IDLE_THREAD FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Performance options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief OS optimization.
- * @details If enabled then time efficient rather than space efficient code
- * is used when two possible implementations exist.
- *
- * @note This is not related to the compiler optimization options.
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_OPTIMIZE_SPEED)
-# define CH_CFG_OPTIMIZE_SPEED FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Subsystem options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Time Measurement APIs.
- * @details If enabled then the time measurement APIs are included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_TM)
-# define CH_CFG_USE_TM FALSE
-# endif
-
-/**
- * @brief Threads registry APIs.
- * @details If enabled then the registry APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_REGISTRY)
-# define CH_CFG_USE_REGISTRY TRUE
-# endif
-
-/**
- * @brief Threads synchronization APIs.
- * @details If enabled then the @p chThdWait() function is included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_WAITEXIT)
-# define CH_CFG_USE_WAITEXIT TRUE
-# endif
-
-/**
- * @brief Semaphores APIs.
- * @details If enabled then the Semaphores APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES)
-# define CH_CFG_USE_SEMAPHORES TRUE
-# endif
-
-/**
- * @brief Semaphores queuing mode.
- * @details If enabled then the threads are enqueued on semaphores by
- * priority rather than in FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY)
-# define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mutexes APIs.
- * @details If enabled then the mutexes APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MUTEXES)
-# define CH_CFG_USE_MUTEXES TRUE
-# endif
-
-/**
- * @brief Enables recursive behavior on mutexes.
- * @note Recursive mutexes are heavier and have an increased
- * memory footprint.
- *
- * @note The default is @p FALSE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_MUTEXES_RECURSIVE)
-# define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
-# endif
-
-/**
- * @brief Conditional Variables APIs.
- * @details If enabled then the conditional variables APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_CONDVARS)
-# define CH_CFG_USE_CONDVARS TRUE
-# endif
-
-/**
- * @brief Conditional Variables APIs with timeout.
- * @details If enabled then the conditional variables APIs with timeout
- * specification are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_CONDVARS.
- */
-# if !defined(CH_CFG_USE_CONDVARS_TIMEOUT)
-# define CH_CFG_USE_CONDVARS_TIMEOUT FALSE
-# endif
-
-/**
- * @brief Events Flags APIs.
- * @details If enabled then the event flags APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_EVENTS)
-# define CH_CFG_USE_EVENTS TRUE
-# endif
-
-/**
- * @brief Events Flags APIs with timeout.
- * @details If enabled then the events APIs with timeout specification
- * are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_EVENTS.
- */
-# if !defined(CH_CFG_USE_EVENTS_TIMEOUT)
-# define CH_CFG_USE_EVENTS_TIMEOUT TRUE
-# endif
-
-/**
- * @brief Synchronous Messages APIs.
- * @details If enabled then the synchronous messages APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MESSAGES)
-# define CH_CFG_USE_MESSAGES TRUE
-# endif
-
-/**
- * @brief Synchronous Messages queuing mode.
- * @details If enabled then messages are served by priority rather than in
- * FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_MESSAGES.
- */
-# if !defined(CH_CFG_USE_MESSAGES_PRIORITY)
-# define CH_CFG_USE_MESSAGES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mailboxes APIs.
- * @details If enabled then the asynchronous messages (mailboxes) APIs are
- * included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_MAILBOXES)
-# define CH_CFG_USE_MAILBOXES TRUE
-# endif
-
-/**
- * @brief Core Memory Manager APIs.
- * @details If enabled then the core memory manager APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMCORE)
-# define CH_CFG_USE_MEMCORE FALSE
-# endif
-
-/**
- * @brief Heap Allocator APIs.
- * @details If enabled then the memory heap allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or
- * @p CH_CFG_USE_SEMAPHORES.
- * @note Mutexes are recommended.
- */
-# if !defined(CH_CFG_USE_HEAP)
-# define CH_CFG_USE_HEAP FALSE
-# endif
-
-/**
- * @brief Memory Pools Allocator APIs.
- * @details If enabled then the memory pools allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMPOOLS)
-# define CH_CFG_USE_MEMPOOLS FALSE
-# endif
-
-/**
- * @brief Objects FIFOs APIs.
- * @details If enabled then the objects FIFOs APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_OBJ_FIFOS)
-# define CH_CFG_USE_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Pipes APIs.
- * @details If enabled then the pipes APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_PIPES)
-# define CH_CFG_USE_PIPES FALSE
-# endif
-
-/**
- * @brief Dynamic Threads APIs.
- * @details If enabled then the dynamic threads creation APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_WAITEXIT.
- * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
- */
-# if !defined(CH_CFG_USE_DYNAMIC)
-# define CH_CFG_USE_DYNAMIC FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Objects factory options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Objects Factory APIs.
- * @details If enabled then the objects factory APIs are included in the
- * kernel.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_CFG_USE_FACTORY)
-# define CH_CFG_USE_FACTORY FALSE
-# endif
-
-/**
- * @brief Maximum length for object names.
- * @details If the specified length is zero then the name is stored by
- * pointer but this could have unintended side effects.
- */
-# if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
-# define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8
-# endif
-
-/**
- * @brief Enables the registry of generic objects.
- */
-# if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
-# define CH_CFG_FACTORY_OBJECTS_REGISTRY FALSE
-# endif
-
-/**
- * @brief Enables factory for generic buffers.
- */
-# if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
-# define CH_CFG_FACTORY_GENERIC_BUFFERS FALSE
-# endif
-
-/**
- * @brief Enables factory for semaphores.
- */
-# if !defined(CH_CFG_FACTORY_SEMAPHORES)
-# define CH_CFG_FACTORY_SEMAPHORES FALSE
-# endif
-
-/**
- * @brief Enables factory for mailboxes.
- */
-# if !defined(CH_CFG_FACTORY_MAILBOXES)
-# define CH_CFG_FACTORY_MAILBOXES FALSE
-# endif
-
-/**
- * @brief Enables factory for objects FIFOs.
- */
-# if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
-# define CH_CFG_FACTORY_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Enables factory for Pipes.
- */
-# if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__)
-# define CH_CFG_FACTORY_PIPES FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Debug options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Debug option, kernel statistics.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_STATISTICS)
-# define CH_DBG_STATISTICS FALSE
-# endif
-
-/**
- * @brief Debug option, system state check.
- * @details If enabled the correct call protocol for system APIs is checked
- * at runtime.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_SYSTEM_STATE_CHECK)
-# define CH_DBG_SYSTEM_STATE_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, parameters checks.
- * @details If enabled then the checks on the API functions input
- * parameters are activated.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_CHECKS)
-# define CH_DBG_ENABLE_CHECKS FALSE
-# endif
-
-/**
- * @brief Debug option, consistency checks.
- * @details If enabled then all the assertions in the kernel code are
- * activated. This includes consistency checks inside the kernel,
- * runtime anomalies and port-defined checks.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_ASSERTS)
-# define CH_DBG_ENABLE_ASSERTS FALSE
-# endif
-
-/**
- * @brief Debug option, trace buffer.
- * @details If enabled then the trace buffer is activated.
- *
- * @note The default is @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_MASK)
-# define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
-# endif
-
-/**
- * @brief Trace buffer entries.
- * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is
- * different from @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_BUFFER_SIZE)
-# define CH_DBG_TRACE_BUFFER_SIZE 128
-# endif
-
-/**
- * @brief Debug option, stack checks.
- * @details If enabled then a runtime stack check is performed.
- *
- * @note The default is @p FALSE.
- * @note The stack check is performed in a architecture/port dependent way.
- * It may not be implemented or some ports.
- * @note The default failure mode is to halt the system with the global
- * @p panic_msg variable set to @p NULL.
- */
-# if !defined(CH_DBG_ENABLE_STACK_CHECK)
-# define CH_DBG_ENABLE_STACK_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, stacks initialization.
- * @details If enabled then the threads working area is filled with a byte
- * value when a thread is created. This can be useful for the
- * runtime measurement of the used stack.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_FILL_THREADS)
-# define CH_DBG_FILL_THREADS FALSE
-# endif
-
-/**
- * @brief Debug option, threads profiling.
- * @details If enabled then a field is added to the @p thread_t structure that
- * counts the system ticks occurred while executing the thread.
- *
- * @note The default is @p FALSE.
- * @note This debug option is not currently compatible with the
- * tickless mode.
- */
-# if !defined(CH_DBG_THREADS_PROFILING)
-# define CH_DBG_THREADS_PROFILING FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel hooks
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System structure extension.
- * @details User fields added to the end of the @p ch_system_t structure.
- */
-# define CH_CFG_SYSTEM_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief System initialization hook.
- * @details User initialization code added to the @p chSysInit() function
- * just before interrupts are enabled globally.
- */
-# define CH_CFG_SYSTEM_INIT_HOOK() \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads descriptor structure extension.
- * @details User fields added to the end of the @p thread_t structure.
- */
-# define CH_CFG_THREAD_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief Threads initialization hook.
- * @details User initialization code added to the @p _thread_init() function.
- *
- * @note It is invoked from within @p _thread_init() and implicitly from all
- * the threads creation APIs.
- */
-# define CH_CFG_THREAD_INIT_HOOK(tp) \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads finalization hook.
- * @details User finalization code added to the @p chThdExit() API.
- */
-# define CH_CFG_THREAD_EXIT_HOOK(tp) \
- { /* Add threads finalization code here.*/ }
-
-/**
- * @brief Context switch hook.
- * @details This hook is invoked just before switching between threads.
- */
-# define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) \
- { /* Context switch code here.*/ }
-
-/**
- * @brief ISR enter hook.
- */
-# define CH_CFG_IRQ_PROLOGUE_HOOK() \
- { /* IRQ prologue code here.*/ }
-
-/**
- * @brief ISR exit hook.
- */
-# define CH_CFG_IRQ_EPILOGUE_HOOK() \
- { /* IRQ epilogue code here.*/ }
-
-/**
- * @brief Idle thread enter hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to activate a power saving mode.
- */
-# define CH_CFG_IDLE_ENTER_HOOK() \
- { /* Idle-enter code here.*/ }
-
-/**
- * @brief Idle thread leave hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to deactivate a power saving mode.
- */
-# define CH_CFG_IDLE_LEAVE_HOOK() \
- { /* Idle-leave code here.*/ }
-
-/**
- * @brief Idle Loop hook.
- * @details This hook is continuously invoked by the idle thread loop.
- */
-# define CH_CFG_IDLE_LOOP_HOOK() \
- { /* Idle loop code here.*/ }
-
-/**
- * @brief System tick event hook.
- * @details This hook is invoked in the system tick handler immediately
- * after processing the virtual timers queue.
- */
-# define CH_CFG_SYSTEM_TICK_HOOK() \
- { /* System tick event code here.*/ }
-
-/**
- * @brief System halt hook.
- * @details This hook is invoked in case to a system halting error before
- * the system is halted.
- */
-# define CH_CFG_SYSTEM_HALT_HOOK(reason) \
- { /* System halt code here.*/ }
-
-/**
- * @brief Trace hook.
- * @details This hook is invoked each time a new record is written in the
- * trace buffer.
- */
-# define CH_CFG_TRACE_HOOK(tep) \
- { /* Trace code here.*/ }
-
-/** @} */
-
-/*===========================================================================*/
-/* Port-specific settings (override port settings defaulted in chcore.h). */
-/*===========================================================================*/
-
-#endif /* CHCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/ajazz/ak33/rev1/halconf.h b/keyboards/ajazz/ak33/rev1/halconf.h
deleted file mode 100644
index 8c25963fc..000000000
--- a/keyboards/ajazz/ak33/rev1/halconf.h
+++ /dev/null
@@ -1,524 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file templates/halconf.h
- * @brief HAL configuration header.
- * @details HAL configuration file, this file allows to enable or disable the
- * various device drivers from your application. You may also use
- * this file in order to override the device drivers default settings.
- *
- * @addtogroup HAL_CONF
- * @{
- */
-
-#ifndef HALCONF_H
-# define HALCONF_H
-
-# define _CHIBIOS_HAL_CONF_
-# define _CHIBIOS_HAL_CONF_VER_7_0_
-
-# include "mcuconf.h"
-
-/**
- * @brief Enables the PAL subsystem.
- */
-# if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-# define HAL_USE_PAL TRUE
-# endif
-
-/**
- * @brief Enables the ADC subsystem.
- */
-# if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-# define HAL_USE_ADC FALSE
-# endif
-
-/**
- * @brief Enables the CAN subsystem.
- */
-# if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-# define HAL_USE_CAN FALSE
-# endif
-
-/**
- * @brief Enables the cryptographic subsystem.
- */
-# if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-# define HAL_USE_CRY FALSE
-# endif
-
-/**
- * @brief Enables the DAC subsystem.
- */
-# if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-# define HAL_USE_DAC FALSE
-# endif
-
-/**
- * @brief Enables the GPT subsystem.
- */
-# if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-# define HAL_USE_GPT FALSE
-# endif
-
-/**
- * @brief Enables the I2C subsystem.
- */
-# if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-# define HAL_USE_I2C FALSE
-# endif
-
-/**
- * @brief Enables the I2S subsystem.
- */
-# if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-# define HAL_USE_I2S FALSE
-# endif
-
-/**
- * @brief Enables the ICU subsystem.
- */
-# if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-# define HAL_USE_ICU FALSE
-# endif
-
-/**
- * @brief Enables the MAC subsystem.
- */
-# if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-# define HAL_USE_MAC FALSE
-# endif
-
-/**
- * @brief Enables the MMC_SPI subsystem.
- */
-# if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_MMC_SPI FALSE
-# endif
-
-/**
- * @brief Enables the PWM subsystem.
- */
-# if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-# define HAL_USE_PWM FALSE
-# endif
-
-/**
- * @brief Enables the RTC subsystem.
- */
-# if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-# define HAL_USE_RTC FALSE
-# endif
-
-/**
- * @brief Enables the SDC subsystem.
- */
-# if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-# define HAL_USE_SDC FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL subsystem.
- */
-# if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL over USB subsystem.
- */
-# if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL_USB TRUE
-# endif
-
-/**
- * @brief Enables the SIO subsystem.
- */
-# if !defined(HAL_USE_SIO) || defined(__DOXYGEN__)
-# define HAL_USE_SIO FALSE
-# endif
-
-/**
- * @brief Enables the SPI subsystem.
- */
-# if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_SPI FALSE
-# endif
-
-/**
- * @brief Enables the TRNG subsystem.
- */
-# if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__)
-# define HAL_USE_TRNG FALSE
-# endif
-
-/**
- * @brief Enables the UART subsystem.
- */
-# if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-# define HAL_USE_UART FALSE
-# endif
-
-/**
- * @brief Enables the USB subsystem.
- */
-# if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-# define HAL_USE_USB TRUE
-# endif
-
-/**
- * @brief Enables the WDG subsystem.
- */
-# if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-# define HAL_USE_WDG FALSE
-# endif
-
-/**
- * @brief Enables the WSPI subsystem.
- */
-# if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__)
-# define HAL_USE_WSPI FALSE
-# endif
-
-/*===========================================================================*/
-/* PAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define PAL_USE_CALLBACKS FALSE
-# endif
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-# define PAL_USE_WAIT FALSE
-# endif
-
-/*===========================================================================*/
-/* ADC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-# define ADC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define ADC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* CAN driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Sleep mode related APIs inclusion switch.
- */
-# if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-# define CAN_USE_SLEEP_MODE TRUE
-# endif
-
-/**
- * @brief Enforces the driver to use direct callbacks rather than OSAL events.
- */
-# if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define CAN_ENFORCE_USE_CALLBACKS FALSE
-# endif
-
-/*===========================================================================*/
-/* CRY driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the SW fall-back of the cryptographic driver.
- * @details When enabled, this option, activates a fall-back software
- * implementation for algorithms not supported by the underlying
- * hardware.
- * @note Fall-back implementations may not be present for all algorithms.
- */
-# if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_USE_FALLBACK FALSE
-# endif
-
-/**
- * @brief Makes the driver forcibly use the fall-back implementations.
- */
-# if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_ENFORCE_FALLBACK FALSE
-# endif
-
-/*===========================================================================*/
-/* DAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
-# define DAC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define DAC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* I2C driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the mutual exclusion APIs on the I2C bus.
- */
-# if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define I2C_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* MAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the zero-copy API.
- */
-# if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-# define MAC_USE_ZERO_COPY FALSE
-# endif
-
-/**
- * @brief Enables an event sources for incoming packets.
- */
-# if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-# define MAC_USE_EVENTS TRUE
-# endif
-
-/*===========================================================================*/
-/* MMC_SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- * This option is recommended also if the SPI driver does not
- * use a DMA channel and heavily loads the CPU.
- */
-# if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-# define MMC_NICE_WAITING TRUE
-# endif
-
-/*===========================================================================*/
-/* SDC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Number of initialization attempts before rejecting the card.
- * @note Attempts are performed at 10mS intervals.
- */
-# if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-# define SDC_INIT_RETRY 100
-# endif
-
-/**
- * @brief Include support for MMC cards.
- * @note MMC support is not yet implemented so this option must be kept
- * at @p FALSE.
- */
-# if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-# define SDC_MMC_SUPPORT FALSE
-# endif
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- */
-# if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-# define SDC_NICE_WAITING TRUE
-# endif
-
-/**
- * @brief OCR initialization constant for V20 cards.
- */
-# if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR_V20 0x50FF8000U
-# endif
-
-/**
- * @brief OCR initialization constant for non-V20 cards.
- */
-# if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR 0x80100000U
-# endif
-
-/*===========================================================================*/
-/* SERIAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Default bit rate.
- * @details Configuration parameter, this is the baud rate selected for the
- * default configuration.
- */
-# if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-# define SERIAL_DEFAULT_BITRATE 38400
-# endif
-
-/**
- * @brief Serial buffers size.
- * @details Configuration parameter, you can change the depth of the queue
- * buffers depending on the requirements of your application.
- * @note The default is 16 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_BUFFERS_SIZE 16
-# endif
-
-/*===========================================================================*/
-/* SERIAL_USB driver related setting. */
-/*===========================================================================*/
-
-/**
- * @brief Serial over USB buffers size.
- * @details Configuration parameter, the buffer size must be a multiple of
- * the USB data endpoint maximum packet size.
- * @note The default is 256 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_SIZE 1
-# endif
-
-/**
- * @brief Serial over USB number of buffers.
- * @note The default is 2 buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_NUMBER 2
-# endif
-
-/*===========================================================================*/
-/* SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-# define SPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables circular transfers APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
-# define SPI_USE_CIRCULAR FALSE
-# endif
-
-/**
- * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define SPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/**
- * @brief Handling method for SPI CS line.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
-# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
-# endif
-
-/*===========================================================================*/
-/* UART driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-# define UART_USE_WAIT FALSE
-# endif
-
-/**
- * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define UART_USE_MUTUAL_EXCLUSION FALSE
-# endif
-
-/*===========================================================================*/
-/* USB driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-# define USB_USE_WAIT TRUE
-# endif
-
-/*===========================================================================*/
-/* WSPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__)
-# define WSPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define WSPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-#endif /* HALCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/ajazz/ak33/rev1/led_matrix.c b/keyboards/ajazz/ak33/rev1/led_matrix.c
index 26ca495f4..f01e9a232 100644
--- a/keyboards/ajazz/ak33/rev1/led_matrix.c
+++ b/keyboards/ajazz/ak33/rev1/led_matrix.c
@@ -1,9 +1,4 @@
-#include <string.h>
-#include "rgb.h"
#include "rgb_matrix.h"
-#include "rgb_matrix_types.h"
-#include "color.h"
-
/*
COLS key / led
PWM PWM00A - PWM21A (PWM15A unused)
diff --git a/keyboards/ajazz/ak33/rev1/mcuconf.h b/keyboards/ajazz/ak33/rev1/mcuconf.h
deleted file mode 100644
index 2cb5fd2a1..000000000
--- a/keyboards/ajazz/ak33/rev1/mcuconf.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef MCUCONF_H
-#define MCUCONF_H
-
-/*
- * SN32F24xx drivers configuration.
- * The following settings override the default settings present in
- * the various device driver implementation headers.
- * Note that the settings for each driver only have effect if the whole
- * driver is enabled in halconf.h.
- *
- * IRQ priorities:
- * 3...0 Lowest...Highest.
- *
- * DMA priorities:
- * 0...3 Lowest...Highest.
- */
-
-#define SN32F24xx_MCUCONF
-
-/*
- * HAL driver system settings.
- */
-
-/*
- * SN driver system settings.
- */
-#define SN32_CT_IRQ_PRIORITY 2
-#define SN32_CT_USE_TIMER 2
-
-#define SN32_HAS_GPIOA TRUE
-#define SN32_HAS_GPIOB TRUE
-#define SN32_HAS_GPIOC TRUE
-#define SN32_HAS_GPIOD TRUE
-
-/*
- * USB driver system settings.
- */
-#define SN32_USB_USE_USB1 TRUE
-#define SN32_USB_LOW_POWER_ON_SUSPEND TRUE
-#define STM32_USB_USB1_HP_IRQ_PRIORITY 13
-#define STM32_USB_USB1_LP_IRQ_PRIORITY 14
-
-#define CRT1_AREAS_NUMBER 1
-
-#define PLATFORM_USB_USE_USB1 TRUE
-
-/*
- * Timer driver system settings.
- */
-#define SN32_PWM_USE_TIM1 FALSE
-#define SN32_PWM_USE_TIM2 TRUE
-#define SN32_PWM_TIM1_IRQ_PRIORITY 3
-#define SN32_PWM_TIM2_IRQ_PRIORITY 3
-
-#define SYS_CLOCK_SETUP 1
-#define SYS0_CLKCFG_VAL 0
-#define AHB_PRESCALAR 0x2
-#define CLKOUT_SEL_VAL 0x0
-#define CLKOUT_PRESCALAR 0x0
-
-/*----------------------------------------------------------------------------
- DEFINES
- *----------------------------------------------------------------------------*/
-#define IHRC 0
-#define ILRC 1
-#define EHSXTAL 2
-#define ELSXTAL 3
-#define PLL 4
-
-/*----------------------------------------------------------------------------
- Define clocks
- *----------------------------------------------------------------------------*/
-#define __IHRC_FREQ (12000000UL)
-#define __ILRC_FREQ (32000UL)
-#define __ELS_XTAL_FREQ (32768UL)
-
-#if (SYS_CLOCK_SETUP)
-#define SYS0_PLLCTRL_VAL (PLL_ENABLE<<15) | (PLL_CLKIN<<12) | (PLL_FSEL<<8) | (PLL_PSEL<<5) | PLL_MSEL
-#endif
-
-// #endif /* _MCUCONF_H_ */
-
-#define PLATFORM_MCUCONF
-
-#endif /* MCUCONF_H */ \ No newline at end of file
diff --git a/keyboards/marvo/kg938/boards/SN_SN32F240/board.c b/keyboards/marvo/kg938/boards/SN_SN32F240/board.c
deleted file mode 100644
index a896aea21..000000000
--- a/keyboards/marvo/kg938/boards/SN_SN32F240/board.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#include "hal.h"
-
-#if HAL_USE_PAL || defined(__DOXYGEN__)
-/**
- * @brief PAL setup.
- * @details Digital I/O ports static configuration as defined in @p board.h.
- * This variable is used by the HAL when initializing the PAL driver.
- */
-const PALConfig pal_default_config = {
- #if SN32_HAS_GPIOA
- {VAL_GPIOA_MODE},
- #endif
- #if SN32_HAS_GPIOB
- {VAL_GPIOB_MODE},
- #endif
- #if SN32_HAS_GPIOC
- {VAL_GPIOC_MODE},
- #endif
- #if SN32_HAS_GPIOD
- {VAL_GPIOD_MODE},
- #endif
-};
-#endif
-
-static int flag __attribute__((section(".flag"))) __attribute__((__used__)) = 0xAAAA5555;
-
-extern void enter_bootloader_mode_if_requested(void);
-
-/**
- * @brief Early initialization code.
- * @details This initialization must be performed just after stack setup
- * and before any other initialization.
- */
-void __early_init(void) {
- enter_bootloader_mode_if_requested();
- sn32_clock_init();
-}
-
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-// SN_GPIO0->MODE = 0xffff;
-// // setP0.0~P0.1, P0.6~P0.7, P0.10~P0.15 to input pull-up
-// SN_GPIO0->CFG = 0x000A0AA0;
-
-// // set P1.2~1.9, P1.12~P1.15 to input pull-up
-// SN_GPIO1->CFG = 0x00A0000A;
-
-// SN_GPIO2->MODE = 0xFFFF;
-// // set P2.4~P2.15 to input pull-up
-// SN_GPIO2->CFG = 0x000000AA;
-
-// // set P3.0~P3.1, P3.4~P3.8 to input pull-up
-// SN_GPIO3->CFG = 0xAAA800A0;
-
- // Set led pins to output
-// SN_GPIO2->CFG = 0xFFFF;
-// SN_GPIO2->DATA = 0x0; // Set low
-
- SN_SYS0->SWDCTRL_b.SWDDIS = 1; // Disable SWD
-} \ No newline at end of file
diff --git a/keyboards/marvo/kg938/boards/SN_SN32F240/board.h b/keyboards/marvo/kg938/boards/SN_SN32F240/board.h
deleted file mode 100644
index 99a5982ef..000000000
--- a/keyboards/marvo/kg938/boards/SN_SN32F240/board.h
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef _BOARD_H_
-#define _BOARD_H_
-
-/*
- * Setup for Generic STM32_F303 Board
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_GENERIC_SN32_F240
-#define BOARD_NAME "SN32F240"
-
-/*
- * MCU type as defined in the ST header.
- */
-#define system_SN32F240
-
-/*
- * IO pins assignments.
- */
-#define GPIOA_PIN0 0U
-#define GPIOA_PIN1 1U
-#define GPIOA_PIN2 2U
-#define GPIOA_PIN3 3U
-#define GPIOA_PIN4 4U
-#define GPIOA_PIN5 5U
-#define GPIOA_PIN6 6U
-#define GPIOA_PIN7 7U
-#define GPIOA_PIN8 8U
-#define GPIOA_PIN9 9U
-#define GPIOA_PIN10 10U
-#define GPIOA_PIN11 11U
-#define GPIOA_PIN12 12U
-#define GPIOA_PIN13 13U
-#define GPIOA_PIN14 14U
-#define GPIOA_PIN15 15U
-
-#define GPIOB_PIN0 0U
-#define GPIOB_PIN1 1U
-#define GPIOB_PIN2 2U
-#define GPIOB_PIN3 3U
-#define GPIOB_PIN4 4U
-#define GPIOB_PIN5 5U
-#define GPIOB_PIN6 6U
-#define GPIOB_PIN7 7U
-#define GPIOB_PIN8 8U
-#define GPIOB_PIN9 9U
-#define GPIOB_PIN10 10U
-#define GPIOB_PIN11 11U
-#define GPIOB_PIN12 12U
-#define GPIOB_PIN13 13U
-#define GPIOB_PIN14 14U
-#define GPIOB_PIN15 15U
-
-#define GPIOC_PIN0 0U
-#define GPIOC_PIN1 1U
-#define GPIOC_PIN2 2U
-#define GPIOC_PIN3 3U
-#define GPIOC_PIN4 4U
-#define GPIOC_PIN5 5U
-#define GPIOC_PIN6 6U
-#define GPIOC_PIN7 7U
-#define GPIOC_PIN8 8U
-#define GPIOC_PIN9 9U
-#define GPIOC_PIN10 10U
-#define GPIOC_PIN11 11U
-#define GPIOC_PIN12 12U
-#define GPIOC_PIN13 13U
-#define GPIOC_PIN14 14U
-#define GPIOC_PIN15 15U
-
-// #define GPIOD_PIN0 0U
-// #define GPIOD_PIN1 1U
-// #define GPIOD_PIN2 2U
-#define GPIOD_PIN3 3U
-#define GPIOD_PIN4 4U
-#define GPIOD_PIN5 5U
-#define GPIOD_PIN6 6U
-#define GPIOD_PIN7 7U
-#define GPIOD_PIN8 8U
-#define GPIOD_PIN9 9U
-#define GPIOD_PIN10 10U
-#define GPIOD_PIN11 11U
-// #define GPIOD_PIN12 12U
-// #define GPIOD_PIN13 13U
-// #define GPIOD_PIN14 14U
-// #define GPIOD_PIN15 15U
-
-
-/*
- * IO lines assignments.
- */
-// #define LINE_L3GD20_SDI PAL_LINE(GPIOA, 7U)
-// #define LINE_USB_DM PAL_LINE(GPIOA, 11U)
-// #define LINE_USB_DP PAL_LINE(GPIOA, 12U)
-#define LINE_SWDIO PAL_LINE(GPIOD, 5U)
-#define LINE_SWCLK PAL_LINE(GPIOD, 6U)
-
-// #define LINE_PINB8 PAL_LINE(GPIOB, 8U)
-// #define LINE_PINB9 PAL_LINE(GPIOB, 9U)
-
-#define LINE_CAPS_LOCK PAL_LINE(GPIOC, 8U)
-
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the SN32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n)))
-#define PIN_MODE_OUTPUT(n) (1U << ((n)))
-#define PIN_MODE_PULLUP(n) (0U << ((n*2)))
-#define PIN_MODE_SCHMITT_EN(n) (10U << ((n*2)))
-#define PIN_MODE_SCHMITT_DIS(n) (11U << ((n*2)))
-
-/*
- * GPIOA setup:
- *
- * PA0 - PIN0 (input pullup).
- * PA1 - PIN1 (input pullup).
- * PA2 - PIN2 (input pullup).
- * PA3 - PIN3 (input pullup).
- * PA4 - PIN4 (input pullup).
- * PA5 - PIN5 (input pullup).
- * PA6 - PIN6 (input pullup).
- * PA7 - PIN7 (input pullup).
- * PA8 - PIN8 (input pullup).
- * PA9 - PIN9 (input pullup).
- * PA11 - PIN10 (input pullup).
- * PA11 - PIN11 (input pullup).
- * PA12 - PIN12 (input pullup).
- * PA13 - PIN13 (input pullup).
- * PA14 - PIN14 (input pullup).
- * PA15 - PIN15 (input pullup).
- */
-#define VAL_GPIOA_MODE (PIN_MODE_INPUT(GPIOA_PIN0) | PIN_MODE_INPUT(GPIOA_PIN1) | PIN_MODE_INPUT(GPIOA_PIN2) | PIN_MODE_INPUT(GPIOA_PIN3) | PIN_MODE_INPUT(GPIOA_PIN4) | PIN_MODE_INPUT(GPIOA_PIN5) | PIN_MODE_INPUT(GPIOA_PIN6) | PIN_MODE_INPUT(GPIOA_PIN7) | PIN_MODE_INPUT(GPIOA_PIN8) | PIN_MODE_INPUT(GPIOA_PIN9) | PIN_MODE_INPUT(GPIOA_PIN10) | PIN_MODE_INPUT(GPIOA_PIN11) | PIN_MODE_INPUT(GPIOA_PIN12) | PIN_MODE_INPUT(GPIOA_PIN13) | PIN_MODE_INPUT(GPIOA_PIN14) | PIN_MODE_INPUT(GPIOA_PIN15))
-
-/*
- * GPIOB setup:
- *
- * PB0 - PIN0 (input pullup).
- * PB1 - PIN1 (input pullup).
- * PB2 - PIN2 (input pullup).
- * PB3 - PIN3 (input pullup).
- * PB4 - PIN4 (input pullup).
- * PB5 - PIN5 (input pullup).
- * PB6 - PIN6 (input pullup).
- * PB7 - PIN7 (input pullup).
- * PB8 - PIN8 (input pullup).
- * PB9 - PIN9 (input pullup).
- * PB10 - PIN10 (input pullup).
- * PB11 - PIN11 (input pullup).
- * PB12 - PIN12 (input pullup).
- * PB13 - PIN13 (input pullup).
- * PB14 - PIN14 (input pullup).
- * PB15 - PIN15 (input pullup).
- */
-#define VAL_GPIOB_MODE (PIN_MODE_INPUT(GPIOB_PIN0) | PIN_MODE_INPUT(GPIOB_PIN1) | PIN_MODE_INPUT(GPIOB_PIN2) | PIN_MODE_INPUT(GPIOB_PIN3) | PIN_MODE_INPUT(GPIOB_PIN4) | PIN_MODE_INPUT(GPIOB_PIN5) | PIN_MODE_INPUT(GPIOB_PIN6) | PIN_MODE_OUTPUT(GPIOB_PIN7) | PIN_MODE_INPUT(GPIOB_PIN8) | PIN_MODE_INPUT(GPIOB_PIN9) | PIN_MODE_INPUT(GPIOB_PIN10) | PIN_MODE_INPUT(GPIOB_PIN11) | PIN_MODE_INPUT(GPIOB_PIN12) | PIN_MODE_INPUT(GPIOB_PIN13) | PIN_MODE_INPUT(GPIOB_PIN14) | PIN_MODE_INPUT(GPIOB_PIN15))
-/*
- * GPIOC setup:
- *
- * PC0 - PIN0 (input pullup).
- * PC1 - PIN1 (input pullup).
- * PC2 - PIN2 (input pullup).
- * PC3 - PIN3 (input pullup).
- * PC4 - PIN4 (input pullup).
- * PC5 - PIN5 (input pullup).
- * PC6 - PIN6 (input pullup).
- * PC7 - PIN7 (input pullup).
- * PC8 - PIN8 (input pullup).
- * PC9 - PIN9 (input pullup).
- * PC10 - PIN10 (input pullup).
- * PC11 - PIN11 (input pullup).
- * PC12 - PIN12 (input pullup).
- * PC13 - PIN13 (input pullup).
- * PC14 - PIN14 (input pullup).
- * PC15 - PIN15 (input pullup).
- */
-#define VAL_GPIOC_MODE (PIN_MODE_INPUT(GPIOC_PIN0) | PIN_MODE_INPUT(GPIOC_PIN1) | PIN_MODE_INPUT(GPIOC_PIN2) | PIN_MODE_INPUT(GPIOC_PIN3) | PIN_MODE_INPUT(GPIOC_PIN4) | PIN_MODE_INPUT(GPIOC_PIN5) | PIN_MODE_INPUT(GPIOC_PIN6) | PIN_MODE_INPUT(GPIOC_PIN7) | PIN_MODE_INPUT(GPIOC_PIN8) | PIN_MODE_INPUT(GPIOC_PIN9) | PIN_MODE_INPUT(GPIOC_PIN10) | PIN_MODE_INPUT(GPIOC_PIN11) | PIN_MODE_INPUT(GPIOC_PIN12) | PIN_MODE_INPUT(GPIOC_PIN13) | PIN_MODE_INPUT(GPIOC_PIN14) | PIN_MODE_INPUT(GPIOC_PIN15))
-
-/*
- * GPIOD setup:
- *
- * PD0 - PIN0 (input pullup).
- * PD1 - PIN1 (input pullup).
- * PD2 - PIN2 (input pullup).
- * PD3 - PIN3 (input pullup).
- * PD4 - PIN4 (input pullup).
- * PD5 - PIN5 (input pullup).
- * PD6 - PIN6 (input pullup).
- * PD7 - PIN7 (input pullup).
- * PD8 - PIN8 (input pullup).
- * PD9 - PIN9 (input pullup).
- * PD11 - PIN10 (input pullup).
- * PD11 - PIN11 (input pullup).
- * PD12 - PIN12 (input pullup).
- * PD13 - PIN13 (input pullup).
- * PD14 - PIN14 (input pullup).
- * PD15 - PIN15 (input pullup).
- */
-#define VAL_GPIOD_MODE (PIN_MODE_INPUT(GPIOD_PIN3) | PIN_MODE_INPUT(GPIOD_PIN4) | PIN_MODE_INPUT(GPIOD_PIN5) | PIN_MODE_INPUT(GPIOD_PIN6) | PIN_MODE_INPUT(GPIOD_PIN7) | PIN_MODE_INPUT(GPIOD_PIN8) | PIN_MODE_INPUT(GPIOD_PIN9) | PIN_MODE_INPUT(GPIOD_PIN10) | PIN_MODE_INPUT(GPIOD_PIN11))
-
-#if !defined(_FROM_ASM_)
-# ifdef __cplusplus
-extern "C" {
-# endif
-void boardInit(void);
-# ifdef __cplusplus
-}
-# endif
-#endif /* _FROM_ASM_ */
-
-#endif /* _BOARD_H_ */ \ No newline at end of file
diff --git a/keyboards/marvo/kg938/boards/SN_SN32F240/board.mk b/keyboards/marvo/kg938/boards/SN_SN32F240/board.mk
deleted file mode 100644
index e9bfc74b6..000000000
--- a/keyboards/marvo/kg938/boards/SN_SN32F240/board.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# List of all the board related files.
-BOARDSRC = $(BOARD_PATH)/boards/SN_SN32F240/board.c
-
-# Required include directories
-BOARDINC = $(BOARD_PATH)/boards/SN_SN32F240 \ No newline at end of file
diff --git a/keyboards/marvo/kg938/chconf.h b/keyboards/marvo/kg938/chconf.h
deleted file mode 100644
index 2b863e582..000000000
--- a/keyboards/marvo/kg938/chconf.h
+++ /dev/null
@@ -1,700 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file rt/templates/chconf.h
- * @brief Configuration file template.
- * @details A copy of this file must be placed in each project directory, it
- * contains the application specific kernel settings.
- *
- * @addtogroup config
- * @details Kernel related settings and hooks.
- * @{
- */
-
-#ifndef CHCONF_H
-# define CHCONF_H
-
-# define _CHIBIOS_RT_CONF_
-# define _CHIBIOS_RT_CONF_VER_6_0_
-
-/*===========================================================================*/
-/**
- * @name System timers settings
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System time counter resolution.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_ST_RESOLUTION)
-# define CH_CFG_ST_RESOLUTION 32
-# endif
-
-/**
- * @brief System tick frequency.
- * @details Frequency of the system timer that drives the system ticks. This
- * setting also defines the system tick time unit.
- */
-# if !defined(CH_CFG_ST_FREQUENCY)
-# define CH_CFG_ST_FREQUENCY 10000
-# endif
-
-/**
- * @brief Time intervals data size.
- * @note Allowed values are 16, 32 or 64 bits.
- */
-# if !defined(CH_CFG_INTERVALS_SIZE)
-# define CH_CFG_INTERVALS_SIZE 32
-# endif
-
-/**
- * @brief Time types data size.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_TIME_TYPES_SIZE)
-# define CH_CFG_TIME_TYPES_SIZE 32
-# endif
-
-/**
- * @brief Time delta constant for the tick-less mode.
- * @note If this value is zero then the system uses the classic
- * periodic tick. This value represents the minimum number
- * of ticks that is safe to specify in a timeout directive.
- * The value one is not valid, timeouts are rounded up to
- * this value.
- */
-# if !defined(CH_CFG_ST_TIMEDELTA)
-# define CH_CFG_ST_TIMEDELTA 0
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel parameters and options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Round robin interval.
- * @details This constant is the number of system ticks allowed for the
- * threads before preemption occurs. Setting this value to zero
- * disables the preemption for threads with equal priority and the
- * round robin becomes cooperative. Note that higher priority
- * threads can still preempt, the kernel is always preemptive.
- * @note Disabling the round robin preemption makes the kernel more compact
- * and generally faster.
- * @note The round robin preemption is not supported in tickless mode and
- * must be set to zero in that case.
- */
-# if !defined(CH_CFG_TIME_QUANTUM)
-# define CH_CFG_TIME_QUANTUM 0
-# endif
-
-/**
- * @brief Managed RAM size.
- * @details Size of the RAM area to be managed by the OS. If set to zero
- * then the whole available RAM is used. The core memory is made
- * available to the heap allocator and/or can be used directly through
- * the simplified core memory allocator.
- *
- * @note In order to let the OS manage the whole RAM the linker script must
- * provide the @p __heap_base__ and @p __heap_end__ symbols.
- * @note Requires @p CH_CFG_USE_MEMCORE.
- */
-# if !defined(CH_CFG_MEMCORE_SIZE)
-# define CH_CFG_MEMCORE_SIZE 0
-# endif
-
-/**
- * @brief Idle thread automatic spawn suppression.
- * @details When this option is activated the function @p chSysInit()
- * does not spawn the idle thread. The application @p main()
- * function becomes the idle thread and must implement an
- * infinite loop.
- */
-# if !defined(CH_CFG_NO_IDLE_THREAD)
-# define CH_CFG_NO_IDLE_THREAD FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Performance options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief OS optimization.
- * @details If enabled then time efficient rather than space efficient code
- * is used when two possible implementations exist.
- *
- * @note This is not related to the compiler optimization options.
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_OPTIMIZE_SPEED)
-# define CH_CFG_OPTIMIZE_SPEED FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Subsystem options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Time Measurement APIs.
- * @details If enabled then the time measurement APIs are included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_TM)
-# define CH_CFG_USE_TM FALSE
-# endif
-
-/**
- * @brief Threads registry APIs.
- * @details If enabled then the registry APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_REGISTRY)
-# define CH_CFG_USE_REGISTRY TRUE
-# endif
-
-/**
- * @brief Threads synchronization APIs.
- * @details If enabled then the @p chThdWait() function is included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_WAITEXIT)
-# define CH_CFG_USE_WAITEXIT TRUE
-# endif
-
-/**
- * @brief Semaphores APIs.
- * @details If enabled then the Semaphores APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES)
-# define CH_CFG_USE_SEMAPHORES TRUE
-# endif
-
-/**
- * @brief Semaphores queuing mode.
- * @details If enabled then the threads are enqueued on semaphores by
- * priority rather than in FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY)
-# define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mutexes APIs.
- * @details If enabled then the mutexes APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MUTEXES)
-# define CH_CFG_USE_MUTEXES TRUE
-# endif
-
-/**
- * @brief Enables recursive behavior on mutexes.
- * @note Recursive mutexes are heavier and have an increased
- * memory footprint.
- *
- * @note The default is @p FALSE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_MUTEXES_RECURSIVE)
-# define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
-# endif
-
-/**
- * @brief Conditional Variables APIs.
- * @details If enabled then the conditional variables APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_CONDVARS)
-# define CH_CFG_USE_CONDVARS TRUE
-# endif
-
-/**
- * @brief Conditional Variables APIs with timeout.
- * @details If enabled then the conditional variables APIs with timeout
- * specification are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_CONDVARS.
- */
-# if !defined(CH_CFG_USE_CONDVARS_TIMEOUT)
-# define CH_CFG_USE_CONDVARS_TIMEOUT FALSE
-# endif
-
-/**
- * @brief Events Flags APIs.
- * @details If enabled then the event flags APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_EVENTS)
-# define CH_CFG_USE_EVENTS TRUE
-# endif
-
-/**
- * @brief Events Flags APIs with timeout.
- * @details If enabled then the events APIs with timeout specification
- * are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_EVENTS.
- */
-# if !defined(CH_CFG_USE_EVENTS_TIMEOUT)
-# define CH_CFG_USE_EVENTS_TIMEOUT TRUE
-# endif
-
-/**
- * @brief Synchronous Messages APIs.
- * @details If enabled then the synchronous messages APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MESSAGES)
-# define CH_CFG_USE_MESSAGES TRUE
-# endif
-
-/**
- * @brief Synchronous Messages queuing mode.
- * @details If enabled then messages are served by priority rather than in
- * FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_MESSAGES.
- */
-# if !defined(CH_CFG_USE_MESSAGES_PRIORITY)
-# define CH_CFG_USE_MESSAGES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mailboxes APIs.
- * @details If enabled then the asynchronous messages (mailboxes) APIs are
- * included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_MAILBOXES)
-# define CH_CFG_USE_MAILBOXES TRUE
-# endif
-
-/**
- * @brief Core Memory Manager APIs.
- * @details If enabled then the core memory manager APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMCORE)
-# define CH_CFG_USE_MEMCORE FALSE
-# endif
-
-/**
- * @brief Heap Allocator APIs.
- * @details If enabled then the memory heap allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or
- * @p CH_CFG_USE_SEMAPHORES.
- * @note Mutexes are recommended.
- */
-# if !defined(CH_CFG_USE_HEAP)
-# define CH_CFG_USE_HEAP FALSE
-# endif
-
-/**
- * @brief Memory Pools Allocator APIs.
- * @details If enabled then the memory pools allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMPOOLS)
-# define CH_CFG_USE_MEMPOOLS FALSE
-# endif
-
-/**
- * @brief Objects FIFOs APIs.
- * @details If enabled then the objects FIFOs APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_OBJ_FIFOS)
-# define CH_CFG_USE_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Pipes APIs.
- * @details If enabled then the pipes APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_PIPES)
-# define CH_CFG_USE_PIPES FALSE
-# endif
-
-/**
- * @brief Dynamic Threads APIs.
- * @details If enabled then the dynamic threads creation APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_WAITEXIT.
- * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
- */
-# if !defined(CH_CFG_USE_DYNAMIC)
-# define CH_CFG_USE_DYNAMIC FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Objects factory options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Objects Factory APIs.
- * @details If enabled then the objects factory APIs are included in the
- * kernel.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_CFG_USE_FACTORY)
-# define CH_CFG_USE_FACTORY FALSE
-# endif
-
-/**
- * @brief Maximum length for object names.
- * @details If the specified length is zero then the name is stored by
- * pointer but this could have unintended side effects.
- */
-# if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
-# define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8
-# endif
-
-/**
- * @brief Enables the registry of generic objects.
- */
-# if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
-# define CH_CFG_FACTORY_OBJECTS_REGISTRY FALSE
-# endif
-
-/**
- * @brief Enables factory for generic buffers.
- */
-# if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
-# define CH_CFG_FACTORY_GENERIC_BUFFERS FALSE
-# endif
-
-/**
- * @brief Enables factory for semaphores.
- */
-# if !defined(CH_CFG_FACTORY_SEMAPHORES)
-# define CH_CFG_FACTORY_SEMAPHORES FALSE
-# endif
-
-/**
- * @brief Enables factory for mailboxes.
- */
-# if !defined(CH_CFG_FACTORY_MAILBOXES)
-# define CH_CFG_FACTORY_MAILBOXES FALSE
-# endif
-
-/**
- * @brief Enables factory for objects FIFOs.
- */
-# if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
-# define CH_CFG_FACTORY_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Enables factory for Pipes.
- */
-# if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__)
-# define CH_CFG_FACTORY_PIPES FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Debug options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Debug option, kernel statistics.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_STATISTICS)
-# define CH_DBG_STATISTICS FALSE
-# endif
-
-/**
- * @brief Debug option, system state check.
- * @details If enabled the correct call protocol for system APIs is checked
- * at runtime.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_SYSTEM_STATE_CHECK)
-# define CH_DBG_SYSTEM_STATE_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, parameters checks.
- * @details If enabled then the checks on the API functions input
- * parameters are activated.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_CHECKS)
-# define CH_DBG_ENABLE_CHECKS FALSE
-# endif
-
-/**
- * @brief Debug option, consistency checks.
- * @details If enabled then all the assertions in the kernel code are
- * activated. This includes consistency checks inside the kernel,
- * runtime anomalies and port-defined checks.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_ASSERTS)
-# define CH_DBG_ENABLE_ASSERTS FALSE
-# endif
-
-/**
- * @brief Debug option, trace buffer.
- * @details If enabled then the trace buffer is activated.
- *
- * @note The default is @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_MASK)
-# define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
-# endif
-
-/**
- * @brief Trace buffer entries.
- * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is
- * different from @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_BUFFER_SIZE)
-# define CH_DBG_TRACE_BUFFER_SIZE 128
-# endif
-
-/**
- * @brief Debug option, stack checks.
- * @details If enabled then a runtime stack check is performed.
- *
- * @note The default is @p FALSE.
- * @note The stack check is performed in a architecture/port dependent way.
- * It may not be implemented or some ports.
- * @note The default failure mode is to halt the system with the global
- * @p panic_msg variable set to @p NULL.
- */
-# if !defined(CH_DBG_ENABLE_STACK_CHECK)
-# define CH_DBG_ENABLE_STACK_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, stacks initialization.
- * @details If enabled then the threads working area is filled with a byte
- * value when a thread is created. This can be useful for the
- * runtime measurement of the used stack.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_FILL_THREADS)
-# define CH_DBG_FILL_THREADS FALSE
-# endif
-
-/**
- * @brief Debug option, threads profiling.
- * @details If enabled then a field is added to the @p thread_t structure that
- * counts the system ticks occurred while executing the thread.
- *
- * @note The default is @p FALSE.
- * @note This debug option is not currently compatible with the
- * tickless mode.
- */
-# if !defined(CH_DBG_THREADS_PROFILING)
-# define CH_DBG_THREADS_PROFILING FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel hooks
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System structure extension.
- * @details User fields added to the end of the @p ch_system_t structure.
- */
-# define CH_CFG_SYSTEM_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief System initialization hook.
- * @details User initialization code added to the @p chSysInit() function
- * just before interrupts are enabled globally.
- */
-# define CH_CFG_SYSTEM_INIT_HOOK() \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads descriptor structure extension.
- * @details User fields added to the end of the @p thread_t structure.
- */
-# define CH_CFG_THREAD_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief Threads initialization hook.
- * @details User initialization code added to the @p _thread_init() function.
- *
- * @note It is invoked from within @p _thread_init() and implicitly from all
- * the threads creation APIs.
- */
-# define CH_CFG_THREAD_INIT_HOOK(tp) \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads finalization hook.
- * @details User finalization code added to the @p chThdExit() API.
- */
-# define CH_CFG_THREAD_EXIT_HOOK(tp) \
- { /* Add threads finalization code here.*/ }
-
-/**
- * @brief Context switch hook.
- * @details This hook is invoked just before switching between threads.
- */
-# define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) \
- { /* Context switch code here.*/ }
-
-/**
- * @brief ISR enter hook.
- */
-# define CH_CFG_IRQ_PROLOGUE_HOOK() \
- { /* IRQ prologue code here.*/ }
-
-/**
- * @brief ISR exit hook.
- */
-# define CH_CFG_IRQ_EPILOGUE_HOOK() \
- { /* IRQ epilogue code here.*/ }
-
-/**
- * @brief Idle thread enter hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to activate a power saving mode.
- */
-# define CH_CFG_IDLE_ENTER_HOOK() \
- { /* Idle-enter code here.*/ }
-
-/**
- * @brief Idle thread leave hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to deactivate a power saving mode.
- */
-# define CH_CFG_IDLE_LEAVE_HOOK() \
- { /* Idle-leave code here.*/ }
-
-/**
- * @brief Idle Loop hook.
- * @details This hook is continuously invoked by the idle thread loop.
- */
-# define CH_CFG_IDLE_LOOP_HOOK() \
- { /* Idle loop code here.*/ }
-
-/**
- * @brief System tick event hook.
- * @details This hook is invoked in the system tick handler immediately
- * after processing the virtual timers queue.
- */
-# define CH_CFG_SYSTEM_TICK_HOOK() \
- { /* System tick event code here.*/ }
-
-/**
- * @brief System halt hook.
- * @details This hook is invoked in case to a system halting error before
- * the system is halted.
- */
-# define CH_CFG_SYSTEM_HALT_HOOK(reason) \
- { /* System halt code here.*/ }
-
-/**
- * @brief Trace hook.
- * @details This hook is invoked each time a new record is written in the
- * trace buffer.
- */
-# define CH_CFG_TRACE_HOOK(tep) \
- { /* Trace code here.*/ }
-
-/** @} */
-
-/*===========================================================================*/
-/* Port-specific settings (override port settings defaulted in chcore.h). */
-/*===========================================================================*/
-
-#endif /* CHCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/marvo/kg938/halconf.h b/keyboards/marvo/kg938/halconf.h
deleted file mode 100644
index 8c25963fc..000000000
--- a/keyboards/marvo/kg938/halconf.h
+++ /dev/null
@@ -1,524 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file templates/halconf.h
- * @brief HAL configuration header.
- * @details HAL configuration file, this file allows to enable or disable the
- * various device drivers from your application. You may also use
- * this file in order to override the device drivers default settings.
- *
- * @addtogroup HAL_CONF
- * @{
- */
-
-#ifndef HALCONF_H
-# define HALCONF_H
-
-# define _CHIBIOS_HAL_CONF_
-# define _CHIBIOS_HAL_CONF_VER_7_0_
-
-# include "mcuconf.h"
-
-/**
- * @brief Enables the PAL subsystem.
- */
-# if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-# define HAL_USE_PAL TRUE
-# endif
-
-/**
- * @brief Enables the ADC subsystem.
- */
-# if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-# define HAL_USE_ADC FALSE
-# endif
-
-/**
- * @brief Enables the CAN subsystem.
- */
-# if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-# define HAL_USE_CAN FALSE
-# endif
-
-/**
- * @brief Enables the cryptographic subsystem.
- */
-# if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-# define HAL_USE_CRY FALSE
-# endif
-
-/**
- * @brief Enables the DAC subsystem.
- */
-# if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-# define HAL_USE_DAC FALSE
-# endif
-
-/**
- * @brief Enables the GPT subsystem.
- */
-# if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-# define HAL_USE_GPT FALSE
-# endif
-
-/**
- * @brief Enables the I2C subsystem.
- */
-# if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-# define HAL_USE_I2C FALSE
-# endif
-
-/**
- * @brief Enables the I2S subsystem.
- */
-# if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-# define HAL_USE_I2S FALSE
-# endif
-
-/**
- * @brief Enables the ICU subsystem.
- */
-# if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-# define HAL_USE_ICU FALSE
-# endif
-
-/**
- * @brief Enables the MAC subsystem.
- */
-# if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-# define HAL_USE_MAC FALSE
-# endif
-
-/**
- * @brief Enables the MMC_SPI subsystem.
- */
-# if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_MMC_SPI FALSE
-# endif
-
-/**
- * @brief Enables the PWM subsystem.
- */
-# if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-# define HAL_USE_PWM FALSE
-# endif
-
-/**
- * @brief Enables the RTC subsystem.
- */
-# if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-# define HAL_USE_RTC FALSE
-# endif
-
-/**
- * @brief Enables the SDC subsystem.
- */
-# if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-# define HAL_USE_SDC FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL subsystem.
- */
-# if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL over USB subsystem.
- */
-# if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL_USB TRUE
-# endif
-
-/**
- * @brief Enables the SIO subsystem.
- */
-# if !defined(HAL_USE_SIO) || defined(__DOXYGEN__)
-# define HAL_USE_SIO FALSE
-# endif
-
-/**
- * @brief Enables the SPI subsystem.
- */
-# if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_SPI FALSE
-# endif
-
-/**
- * @brief Enables the TRNG subsystem.
- */
-# if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__)
-# define HAL_USE_TRNG FALSE
-# endif
-
-/**
- * @brief Enables the UART subsystem.
- */
-# if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-# define HAL_USE_UART FALSE
-# endif
-
-/**
- * @brief Enables the USB subsystem.
- */
-# if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-# define HAL_USE_USB TRUE
-# endif
-
-/**
- * @brief Enables the WDG subsystem.
- */
-# if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-# define HAL_USE_WDG FALSE
-# endif
-
-/**
- * @brief Enables the WSPI subsystem.
- */
-# if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__)
-# define HAL_USE_WSPI FALSE
-# endif
-
-/*===========================================================================*/
-/* PAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define PAL_USE_CALLBACKS FALSE
-# endif
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-# define PAL_USE_WAIT FALSE
-# endif
-
-/*===========================================================================*/
-/* ADC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-# define ADC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define ADC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* CAN driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Sleep mode related APIs inclusion switch.
- */
-# if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-# define CAN_USE_SLEEP_MODE TRUE
-# endif
-
-/**
- * @brief Enforces the driver to use direct callbacks rather than OSAL events.
- */
-# if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define CAN_ENFORCE_USE_CALLBACKS FALSE
-# endif
-
-/*===========================================================================*/
-/* CRY driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the SW fall-back of the cryptographic driver.
- * @details When enabled, this option, activates a fall-back software
- * implementation for algorithms not supported by the underlying
- * hardware.
- * @note Fall-back implementations may not be present for all algorithms.
- */
-# if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_USE_FALLBACK FALSE
-# endif
-
-/**
- * @brief Makes the driver forcibly use the fall-back implementations.
- */
-# if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_ENFORCE_FALLBACK FALSE
-# endif
-
-/*===========================================================================*/
-/* DAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
-# define DAC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define DAC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* I2C driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the mutual exclusion APIs on the I2C bus.
- */
-# if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define I2C_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* MAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the zero-copy API.
- */
-# if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-# define MAC_USE_ZERO_COPY FALSE
-# endif
-
-/**
- * @brief Enables an event sources for incoming packets.
- */
-# if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-# define MAC_USE_EVENTS TRUE
-# endif
-
-/*===========================================================================*/
-/* MMC_SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- * This option is recommended also if the SPI driver does not
- * use a DMA channel and heavily loads the CPU.
- */
-# if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-# define MMC_NICE_WAITING TRUE
-# endif
-
-/*===========================================================================*/
-/* SDC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Number of initialization attempts before rejecting the card.
- * @note Attempts are performed at 10mS intervals.
- */
-# if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-# define SDC_INIT_RETRY 100
-# endif
-
-/**
- * @brief Include support for MMC cards.
- * @note MMC support is not yet implemented so this option must be kept
- * at @p FALSE.
- */
-# if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-# define SDC_MMC_SUPPORT FALSE
-# endif
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- */
-# if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-# define SDC_NICE_WAITING TRUE
-# endif
-
-/**
- * @brief OCR initialization constant for V20 cards.
- */
-# if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR_V20 0x50FF8000U
-# endif
-
-/**
- * @brief OCR initialization constant for non-V20 cards.
- */
-# if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR 0x80100000U
-# endif
-
-/*===========================================================================*/
-/* SERIAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Default bit rate.
- * @details Configuration parameter, this is the baud rate selected for the
- * default configuration.
- */
-# if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-# define SERIAL_DEFAULT_BITRATE 38400
-# endif
-
-/**
- * @brief Serial buffers size.
- * @details Configuration parameter, you can change the depth of the queue
- * buffers depending on the requirements of your application.
- * @note The default is 16 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_BUFFERS_SIZE 16
-# endif
-
-/*===========================================================================*/
-/* SERIAL_USB driver related setting. */
-/*===========================================================================*/
-
-/**
- * @brief Serial over USB buffers size.
- * @details Configuration parameter, the buffer size must be a multiple of
- * the USB data endpoint maximum packet size.
- * @note The default is 256 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_SIZE 1
-# endif
-
-/**
- * @brief Serial over USB number of buffers.
- * @note The default is 2 buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_NUMBER 2
-# endif
-
-/*===========================================================================*/
-/* SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-# define SPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables circular transfers APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
-# define SPI_USE_CIRCULAR FALSE
-# endif
-
-/**
- * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define SPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/**
- * @brief Handling method for SPI CS line.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
-# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
-# endif
-
-/*===========================================================================*/
-/* UART driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-# define UART_USE_WAIT FALSE
-# endif
-
-/**
- * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define UART_USE_MUTUAL_EXCLUSION FALSE
-# endif
-
-/*===========================================================================*/
-/* USB driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-# define USB_USE_WAIT TRUE
-# endif
-
-/*===========================================================================*/
-/* WSPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__)
-# define WSPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define WSPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-#endif /* HALCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/marvo/kg938/led_matrix.c b/keyboards/marvo/kg938/led_matrix.c
index 197a9fc34..3f8fa163c 100644
--- a/keyboards/marvo/kg938/led_matrix.c
+++ b/keyboards/marvo/kg938/led_matrix.c
@@ -1,9 +1,4 @@
-#include <string.h>
-#include "rgb.h"
#include "rgb_matrix.h"
-#include "rgb_matrix_types.h"
-#include "color.h"
-
/*
COLS key / led
PWM PWM00A - PWM21A (PWM15A unused)
diff --git a/keyboards/marvo/kg938/mcuconf.h b/keyboards/marvo/kg938/mcuconf.h
deleted file mode 100644
index 2cb5fd2a1..000000000
--- a/keyboards/marvo/kg938/mcuconf.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef MCUCONF_H
-#define MCUCONF_H
-
-/*
- * SN32F24xx drivers configuration.
- * The following settings override the default settings present in
- * the various device driver implementation headers.
- * Note that the settings for each driver only have effect if the whole
- * driver is enabled in halconf.h.
- *
- * IRQ priorities:
- * 3...0 Lowest...Highest.
- *
- * DMA priorities:
- * 0...3 Lowest...Highest.
- */
-
-#define SN32F24xx_MCUCONF
-
-/*
- * HAL driver system settings.
- */
-
-/*
- * SN driver system settings.
- */
-#define SN32_CT_IRQ_PRIORITY 2
-#define SN32_CT_USE_TIMER 2
-
-#define SN32_HAS_GPIOA TRUE
-#define SN32_HAS_GPIOB TRUE
-#define SN32_HAS_GPIOC TRUE
-#define SN32_HAS_GPIOD TRUE
-
-/*
- * USB driver system settings.
- */
-#define SN32_USB_USE_USB1 TRUE
-#define SN32_USB_LOW_POWER_ON_SUSPEND TRUE
-#define STM32_USB_USB1_HP_IRQ_PRIORITY 13
-#define STM32_USB_USB1_LP_IRQ_PRIORITY 14
-
-#define CRT1_AREAS_NUMBER 1
-
-#define PLATFORM_USB_USE_USB1 TRUE
-
-/*
- * Timer driver system settings.
- */
-#define SN32_PWM_USE_TIM1 FALSE
-#define SN32_PWM_USE_TIM2 TRUE
-#define SN32_PWM_TIM1_IRQ_PRIORITY 3
-#define SN32_PWM_TIM2_IRQ_PRIORITY 3
-
-#define SYS_CLOCK_SETUP 1
-#define SYS0_CLKCFG_VAL 0
-#define AHB_PRESCALAR 0x2
-#define CLKOUT_SEL_VAL 0x0
-#define CLKOUT_PRESCALAR 0x0
-
-/*----------------------------------------------------------------------------
- DEFINES
- *----------------------------------------------------------------------------*/
-#define IHRC 0
-#define ILRC 1
-#define EHSXTAL 2
-#define ELSXTAL 3
-#define PLL 4
-
-/*----------------------------------------------------------------------------
- Define clocks
- *----------------------------------------------------------------------------*/
-#define __IHRC_FREQ (12000000UL)
-#define __ILRC_FREQ (32000UL)
-#define __ELS_XTAL_FREQ (32768UL)
-
-#if (SYS_CLOCK_SETUP)
-#define SYS0_PLLCTRL_VAL (PLL_ENABLE<<15) | (PLL_CLKIN<<12) | (PLL_FSEL<<8) | (PLL_PSEL<<5) | PLL_MSEL
-#endif
-
-// #endif /* _MCUCONF_H_ */
-
-#define PLATFORM_MCUCONF
-
-#endif /* MCUCONF_H */ \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.c b/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.c
deleted file mode 100644
index a896aea21..000000000
--- a/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#include "hal.h"
-
-#if HAL_USE_PAL || defined(__DOXYGEN__)
-/**
- * @brief PAL setup.
- * @details Digital I/O ports static configuration as defined in @p board.h.
- * This variable is used by the HAL when initializing the PAL driver.
- */
-const PALConfig pal_default_config = {
- #if SN32_HAS_GPIOA
- {VAL_GPIOA_MODE},
- #endif
- #if SN32_HAS_GPIOB
- {VAL_GPIOB_MODE},
- #endif
- #if SN32_HAS_GPIOC
- {VAL_GPIOC_MODE},
- #endif
- #if SN32_HAS_GPIOD
- {VAL_GPIOD_MODE},
- #endif
-};
-#endif
-
-static int flag __attribute__((section(".flag"))) __attribute__((__used__)) = 0xAAAA5555;
-
-extern void enter_bootloader_mode_if_requested(void);
-
-/**
- * @brief Early initialization code.
- * @details This initialization must be performed just after stack setup
- * and before any other initialization.
- */
-void __early_init(void) {
- enter_bootloader_mode_if_requested();
- sn32_clock_init();
-}
-
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-// SN_GPIO0->MODE = 0xffff;
-// // setP0.0~P0.1, P0.6~P0.7, P0.10~P0.15 to input pull-up
-// SN_GPIO0->CFG = 0x000A0AA0;
-
-// // set P1.2~1.9, P1.12~P1.15 to input pull-up
-// SN_GPIO1->CFG = 0x00A0000A;
-
-// SN_GPIO2->MODE = 0xFFFF;
-// // set P2.4~P2.15 to input pull-up
-// SN_GPIO2->CFG = 0x000000AA;
-
-// // set P3.0~P3.1, P3.4~P3.8 to input pull-up
-// SN_GPIO3->CFG = 0xAAA800A0;
-
- // Set led pins to output
-// SN_GPIO2->CFG = 0xFFFF;
-// SN_GPIO2->DATA = 0x0; // Set low
-
- SN_SYS0->SWDCTRL_b.SWDDIS = 1; // Disable SWD
-} \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.h b/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.h
deleted file mode 100644
index 99a5982ef..000000000
--- a/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.h
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef _BOARD_H_
-#define _BOARD_H_
-
-/*
- * Setup for Generic STM32_F303 Board
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_GENERIC_SN32_F240
-#define BOARD_NAME "SN32F240"
-
-/*
- * MCU type as defined in the ST header.
- */
-#define system_SN32F240
-
-/*
- * IO pins assignments.
- */
-#define GPIOA_PIN0 0U
-#define GPIOA_PIN1 1U
-#define GPIOA_PIN2 2U
-#define GPIOA_PIN3 3U
-#define GPIOA_PIN4 4U
-#define GPIOA_PIN5 5U
-#define GPIOA_PIN6 6U
-#define GPIOA_PIN7 7U
-#define GPIOA_PIN8 8U
-#define GPIOA_PIN9 9U
-#define GPIOA_PIN10 10U
-#define GPIOA_PIN11 11U
-#define GPIOA_PIN12 12U
-#define GPIOA_PIN13 13U
-#define GPIOA_PIN14 14U
-#define GPIOA_PIN15 15U
-
-#define GPIOB_PIN0 0U
-#define GPIOB_PIN1 1U
-#define GPIOB_PIN2 2U
-#define GPIOB_PIN3 3U
-#define GPIOB_PIN4 4U
-#define GPIOB_PIN5 5U
-#define GPIOB_PIN6 6U
-#define GPIOB_PIN7 7U
-#define GPIOB_PIN8 8U
-#define GPIOB_PIN9 9U
-#define GPIOB_PIN10 10U
-#define GPIOB_PIN11 11U
-#define GPIOB_PIN12 12U
-#define GPIOB_PIN13 13U
-#define GPIOB_PIN14 14U
-#define GPIOB_PIN15 15U
-
-#define GPIOC_PIN0 0U
-#define GPIOC_PIN1 1U
-#define GPIOC_PIN2 2U
-#define GPIOC_PIN3 3U
-#define GPIOC_PIN4 4U
-#define GPIOC_PIN5 5U
-#define GPIOC_PIN6 6U
-#define GPIOC_PIN7 7U
-#define GPIOC_PIN8 8U
-#define GPIOC_PIN9 9U
-#define GPIOC_PIN10 10U
-#define GPIOC_PIN11 11U
-#define GPIOC_PIN12 12U
-#define GPIOC_PIN13 13U
-#define GPIOC_PIN14 14U
-#define GPIOC_PIN15 15U
-
-// #define GPIOD_PIN0 0U
-// #define GPIOD_PIN1 1U
-// #define GPIOD_PIN2 2U
-#define GPIOD_PIN3 3U
-#define GPIOD_PIN4 4U
-#define GPIOD_PIN5 5U
-#define GPIOD_PIN6 6U
-#define GPIOD_PIN7 7U
-#define GPIOD_PIN8 8U
-#define GPIOD_PIN9 9U
-#define GPIOD_PIN10 10U
-#define GPIOD_PIN11 11U
-// #define GPIOD_PIN12 12U
-// #define GPIOD_PIN13 13U
-// #define GPIOD_PIN14 14U
-// #define GPIOD_PIN15 15U
-
-
-/*
- * IO lines assignments.
- */
-// #define LINE_L3GD20_SDI PAL_LINE(GPIOA, 7U)
-// #define LINE_USB_DM PAL_LINE(GPIOA, 11U)
-// #define LINE_USB_DP PAL_LINE(GPIOA, 12U)
-#define LINE_SWDIO PAL_LINE(GPIOD, 5U)
-#define LINE_SWCLK PAL_LINE(GPIOD, 6U)
-
-// #define LINE_PINB8 PAL_LINE(GPIOB, 8U)
-// #define LINE_PINB9 PAL_LINE(GPIOB, 9U)
-
-#define LINE_CAPS_LOCK PAL_LINE(GPIOC, 8U)
-
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the SN32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n)))
-#define PIN_MODE_OUTPUT(n) (1U << ((n)))
-#define PIN_MODE_PULLUP(n) (0U << ((n*2)))
-#define PIN_MODE_SCHMITT_EN(n) (10U << ((n*2)))
-#define PIN_MODE_SCHMITT_DIS(n) (11U << ((n*2)))
-
-/*
- * GPIOA setup:
- *
- * PA0 - PIN0 (input pullup).
- * PA1 - PIN1 (input pullup).
- * PA2 - PIN2 (input pullup).
- * PA3 - PIN3 (input pullup).
- * PA4 - PIN4 (input pullup).
- * PA5 - PIN5 (input pullup).
- * PA6 - PIN6 (input pullup).
- * PA7 - PIN7 (input pullup).
- * PA8 - PIN8 (input pullup).
- * PA9 - PIN9 (input pullup).
- * PA11 - PIN10 (input pullup).
- * PA11 - PIN11 (input pullup).
- * PA12 - PIN12 (input pullup).
- * PA13 - PIN13 (input pullup).
- * PA14 - PIN14 (input pullup).
- * PA15 - PIN15 (input pullup).
- */
-#define VAL_GPIOA_MODE (PIN_MODE_INPUT(GPIOA_PIN0) | PIN_MODE_INPUT(GPIOA_PIN1) | PIN_MODE_INPUT(GPIOA_PIN2) | PIN_MODE_INPUT(GPIOA_PIN3) | PIN_MODE_INPUT(GPIOA_PIN4) | PIN_MODE_INPUT(GPIOA_PIN5) | PIN_MODE_INPUT(GPIOA_PIN6) | PIN_MODE_INPUT(GPIOA_PIN7) | PIN_MODE_INPUT(GPIOA_PIN8) | PIN_MODE_INPUT(GPIOA_PIN9) | PIN_MODE_INPUT(GPIOA_PIN10) | PIN_MODE_INPUT(GPIOA_PIN11) | PIN_MODE_INPUT(GPIOA_PIN12) | PIN_MODE_INPUT(GPIOA_PIN13) | PIN_MODE_INPUT(GPIOA_PIN14) | PIN_MODE_INPUT(GPIOA_PIN15))
-
-/*
- * GPIOB setup:
- *
- * PB0 - PIN0 (input pullup).
- * PB1 - PIN1 (input pullup).
- * PB2 - PIN2 (input pullup).
- * PB3 - PIN3 (input pullup).
- * PB4 - PIN4 (input pullup).
- * PB5 - PIN5 (input pullup).
- * PB6 - PIN6 (input pullup).
- * PB7 - PIN7 (input pullup).
- * PB8 - PIN8 (input pullup).
- * PB9 - PIN9 (input pullup).
- * PB10 - PIN10 (input pullup).
- * PB11 - PIN11 (input pullup).
- * PB12 - PIN12 (input pullup).
- * PB13 - PIN13 (input pullup).
- * PB14 - PIN14 (input pullup).
- * PB15 - PIN15 (input pullup).
- */
-#define VAL_GPIOB_MODE (PIN_MODE_INPUT(GPIOB_PIN0) | PIN_MODE_INPUT(GPIOB_PIN1) | PIN_MODE_INPUT(GPIOB_PIN2) | PIN_MODE_INPUT(GPIOB_PIN3) | PIN_MODE_INPUT(GPIOB_PIN4) | PIN_MODE_INPUT(GPIOB_PIN5) | PIN_MODE_INPUT(GPIOB_PIN6) | PIN_MODE_OUTPUT(GPIOB_PIN7) | PIN_MODE_INPUT(GPIOB_PIN8) | PIN_MODE_INPUT(GPIOB_PIN9) | PIN_MODE_INPUT(GPIOB_PIN10) | PIN_MODE_INPUT(GPIOB_PIN11) | PIN_MODE_INPUT(GPIOB_PIN12) | PIN_MODE_INPUT(GPIOB_PIN13) | PIN_MODE_INPUT(GPIOB_PIN14) | PIN_MODE_INPUT(GPIOB_PIN15))
-/*
- * GPIOC setup:
- *
- * PC0 - PIN0 (input pullup).
- * PC1 - PIN1 (input pullup).
- * PC2 - PIN2 (input pullup).
- * PC3 - PIN3 (input pullup).
- * PC4 - PIN4 (input pullup).
- * PC5 - PIN5 (input pullup).
- * PC6 - PIN6 (input pullup).
- * PC7 - PIN7 (input pullup).
- * PC8 - PIN8 (input pullup).
- * PC9 - PIN9 (input pullup).
- * PC10 - PIN10 (input pullup).
- * PC11 - PIN11 (input pullup).
- * PC12 - PIN12 (input pullup).
- * PC13 - PIN13 (input pullup).
- * PC14 - PIN14 (input pullup).
- * PC15 - PIN15 (input pullup).
- */
-#define VAL_GPIOC_MODE (PIN_MODE_INPUT(GPIOC_PIN0) | PIN_MODE_INPUT(GPIOC_PIN1) | PIN_MODE_INPUT(GPIOC_PIN2) | PIN_MODE_INPUT(GPIOC_PIN3) | PIN_MODE_INPUT(GPIOC_PIN4) | PIN_MODE_INPUT(GPIOC_PIN5) | PIN_MODE_INPUT(GPIOC_PIN6) | PIN_MODE_INPUT(GPIOC_PIN7) | PIN_MODE_INPUT(GPIOC_PIN8) | PIN_MODE_INPUT(GPIOC_PIN9) | PIN_MODE_INPUT(GPIOC_PIN10) | PIN_MODE_INPUT(GPIOC_PIN11) | PIN_MODE_INPUT(GPIOC_PIN12) | PIN_MODE_INPUT(GPIOC_PIN13) | PIN_MODE_INPUT(GPIOC_PIN14) | PIN_MODE_INPUT(GPIOC_PIN15))
-
-/*
- * GPIOD setup:
- *
- * PD0 - PIN0 (input pullup).
- * PD1 - PIN1 (input pullup).
- * PD2 - PIN2 (input pullup).
- * PD3 - PIN3 (input pullup).
- * PD4 - PIN4 (input pullup).
- * PD5 - PIN5 (input pullup).
- * PD6 - PIN6 (input pullup).
- * PD7 - PIN7 (input pullup).
- * PD8 - PIN8 (input pullup).
- * PD9 - PIN9 (input pullup).
- * PD11 - PIN10 (input pullup).
- * PD11 - PIN11 (input pullup).
- * PD12 - PIN12 (input pullup).
- * PD13 - PIN13 (input pullup).
- * PD14 - PIN14 (input pullup).
- * PD15 - PIN15 (input pullup).
- */
-#define VAL_GPIOD_MODE (PIN_MODE_INPUT(GPIOD_PIN3) | PIN_MODE_INPUT(GPIOD_PIN4) | PIN_MODE_INPUT(GPIOD_PIN5) | PIN_MODE_INPUT(GPIOD_PIN6) | PIN_MODE_INPUT(GPIOD_PIN7) | PIN_MODE_INPUT(GPIOD_PIN8) | PIN_MODE_INPUT(GPIOD_PIN9) | PIN_MODE_INPUT(GPIOD_PIN10) | PIN_MODE_INPUT(GPIOD_PIN11))
-
-#if !defined(_FROM_ASM_)
-# ifdef __cplusplus
-extern "C" {
-# endif
-void boardInit(void);
-# ifdef __cplusplus
-}
-# endif
-#endif /* _FROM_ASM_ */
-
-#endif /* _BOARD_H_ */ \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.mk b/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.mk
deleted file mode 100644
index e9bfc74b6..000000000
--- a/keyboards/redragon/k552/rev1/boards/SN_SN32F240/board.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# List of all the board related files.
-BOARDSRC = $(BOARD_PATH)/boards/SN_SN32F240/board.c
-
-# Required include directories
-BOARDINC = $(BOARD_PATH)/boards/SN_SN32F240 \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/chconf.h b/keyboards/redragon/k552/rev1/chconf.h
deleted file mode 100644
index 2b863e582..000000000
--- a/keyboards/redragon/k552/rev1/chconf.h
+++ /dev/null
@@ -1,700 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file rt/templates/chconf.h
- * @brief Configuration file template.
- * @details A copy of this file must be placed in each project directory, it
- * contains the application specific kernel settings.
- *
- * @addtogroup config
- * @details Kernel related settings and hooks.
- * @{
- */
-
-#ifndef CHCONF_H
-# define CHCONF_H
-
-# define _CHIBIOS_RT_CONF_
-# define _CHIBIOS_RT_CONF_VER_6_0_
-
-/*===========================================================================*/
-/**
- * @name System timers settings
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System time counter resolution.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_ST_RESOLUTION)
-# define CH_CFG_ST_RESOLUTION 32
-# endif
-
-/**
- * @brief System tick frequency.
- * @details Frequency of the system timer that drives the system ticks. This
- * setting also defines the system tick time unit.
- */
-# if !defined(CH_CFG_ST_FREQUENCY)
-# define CH_CFG_ST_FREQUENCY 10000
-# endif
-
-/**
- * @brief Time intervals data size.
- * @note Allowed values are 16, 32 or 64 bits.
- */
-# if !defined(CH_CFG_INTERVALS_SIZE)
-# define CH_CFG_INTERVALS_SIZE 32
-# endif
-
-/**
- * @brief Time types data size.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_TIME_TYPES_SIZE)
-# define CH_CFG_TIME_TYPES_SIZE 32
-# endif
-
-/**
- * @brief Time delta constant for the tick-less mode.
- * @note If this value is zero then the system uses the classic
- * periodic tick. This value represents the minimum number
- * of ticks that is safe to specify in a timeout directive.
- * The value one is not valid, timeouts are rounded up to
- * this value.
- */
-# if !defined(CH_CFG_ST_TIMEDELTA)
-# define CH_CFG_ST_TIMEDELTA 0
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel parameters and options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Round robin interval.
- * @details This constant is the number of system ticks allowed for the
- * threads before preemption occurs. Setting this value to zero
- * disables the preemption for threads with equal priority and the
- * round robin becomes cooperative. Note that higher priority
- * threads can still preempt, the kernel is always preemptive.
- * @note Disabling the round robin preemption makes the kernel more compact
- * and generally faster.
- * @note The round robin preemption is not supported in tickless mode and
- * must be set to zero in that case.
- */
-# if !defined(CH_CFG_TIME_QUANTUM)
-# define CH_CFG_TIME_QUANTUM 0
-# endif
-
-/**
- * @brief Managed RAM size.
- * @details Size of the RAM area to be managed by the OS. If set to zero
- * then the whole available RAM is used. The core memory is made
- * available to the heap allocator and/or can be used directly through
- * the simplified core memory allocator.
- *
- * @note In order to let the OS manage the whole RAM the linker script must
- * provide the @p __heap_base__ and @p __heap_end__ symbols.
- * @note Requires @p CH_CFG_USE_MEMCORE.
- */
-# if !defined(CH_CFG_MEMCORE_SIZE)
-# define CH_CFG_MEMCORE_SIZE 0
-# endif
-
-/**
- * @brief Idle thread automatic spawn suppression.
- * @details When this option is activated the function @p chSysInit()
- * does not spawn the idle thread. The application @p main()
- * function becomes the idle thread and must implement an
- * infinite loop.
- */
-# if !defined(CH_CFG_NO_IDLE_THREAD)
-# define CH_CFG_NO_IDLE_THREAD FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Performance options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief OS optimization.
- * @details If enabled then time efficient rather than space efficient code
- * is used when two possible implementations exist.
- *
- * @note This is not related to the compiler optimization options.
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_OPTIMIZE_SPEED)
-# define CH_CFG_OPTIMIZE_SPEED FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Subsystem options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Time Measurement APIs.
- * @details If enabled then the time measurement APIs are included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_TM)
-# define CH_CFG_USE_TM FALSE
-# endif
-
-/**
- * @brief Threads registry APIs.
- * @details If enabled then the registry APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_REGISTRY)
-# define CH_CFG_USE_REGISTRY TRUE
-# endif
-
-/**
- * @brief Threads synchronization APIs.
- * @details If enabled then the @p chThdWait() function is included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_WAITEXIT)
-# define CH_CFG_USE_WAITEXIT TRUE
-# endif
-
-/**
- * @brief Semaphores APIs.
- * @details If enabled then the Semaphores APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES)
-# define CH_CFG_USE_SEMAPHORES TRUE
-# endif
-
-/**
- * @brief Semaphores queuing mode.
- * @details If enabled then the threads are enqueued on semaphores by
- * priority rather than in FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY)
-# define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mutexes APIs.
- * @details If enabled then the mutexes APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MUTEXES)
-# define CH_CFG_USE_MUTEXES TRUE
-# endif
-
-/**
- * @brief Enables recursive behavior on mutexes.
- * @note Recursive mutexes are heavier and have an increased
- * memory footprint.
- *
- * @note The default is @p FALSE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_MUTEXES_RECURSIVE)
-# define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
-# endif
-
-/**
- * @brief Conditional Variables APIs.
- * @details If enabled then the conditional variables APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_CONDVARS)
-# define CH_CFG_USE_CONDVARS TRUE
-# endif
-
-/**
- * @brief Conditional Variables APIs with timeout.
- * @details If enabled then the conditional variables APIs with timeout
- * specification are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_CONDVARS.
- */
-# if !defined(CH_CFG_USE_CONDVARS_TIMEOUT)
-# define CH_CFG_USE_CONDVARS_TIMEOUT FALSE
-# endif
-
-/**
- * @brief Events Flags APIs.
- * @details If enabled then the event flags APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_EVENTS)
-# define CH_CFG_USE_EVENTS TRUE
-# endif
-
-/**
- * @brief Events Flags APIs with timeout.
- * @details If enabled then the events APIs with timeout specification
- * are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_EVENTS.
- */
-# if !defined(CH_CFG_USE_EVENTS_TIMEOUT)
-# define CH_CFG_USE_EVENTS_TIMEOUT TRUE
-# endif
-
-/**
- * @brief Synchronous Messages APIs.
- * @details If enabled then the synchronous messages APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MESSAGES)
-# define CH_CFG_USE_MESSAGES TRUE
-# endif
-
-/**
- * @brief Synchronous Messages queuing mode.
- * @details If enabled then messages are served by priority rather than in
- * FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_MESSAGES.
- */
-# if !defined(CH_CFG_USE_MESSAGES_PRIORITY)
-# define CH_CFG_USE_MESSAGES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mailboxes APIs.
- * @details If enabled then the asynchronous messages (mailboxes) APIs are
- * included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_MAILBOXES)
-# define CH_CFG_USE_MAILBOXES TRUE
-# endif
-
-/**
- * @brief Core Memory Manager APIs.
- * @details If enabled then the core memory manager APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMCORE)
-# define CH_CFG_USE_MEMCORE FALSE
-# endif
-
-/**
- * @brief Heap Allocator APIs.
- * @details If enabled then the memory heap allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or
- * @p CH_CFG_USE_SEMAPHORES.
- * @note Mutexes are recommended.
- */
-# if !defined(CH_CFG_USE_HEAP)
-# define CH_CFG_USE_HEAP FALSE
-# endif
-
-/**
- * @brief Memory Pools Allocator APIs.
- * @details If enabled then the memory pools allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMPOOLS)
-# define CH_CFG_USE_MEMPOOLS FALSE
-# endif
-
-/**
- * @brief Objects FIFOs APIs.
- * @details If enabled then the objects FIFOs APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_OBJ_FIFOS)
-# define CH_CFG_USE_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Pipes APIs.
- * @details If enabled then the pipes APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_PIPES)
-# define CH_CFG_USE_PIPES FALSE
-# endif
-
-/**
- * @brief Dynamic Threads APIs.
- * @details If enabled then the dynamic threads creation APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_WAITEXIT.
- * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
- */
-# if !defined(CH_CFG_USE_DYNAMIC)
-# define CH_CFG_USE_DYNAMIC FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Objects factory options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Objects Factory APIs.
- * @details If enabled then the objects factory APIs are included in the
- * kernel.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_CFG_USE_FACTORY)
-# define CH_CFG_USE_FACTORY FALSE
-# endif
-
-/**
- * @brief Maximum length for object names.
- * @details If the specified length is zero then the name is stored by
- * pointer but this could have unintended side effects.
- */
-# if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
-# define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8
-# endif
-
-/**
- * @brief Enables the registry of generic objects.
- */
-# if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
-# define CH_CFG_FACTORY_OBJECTS_REGISTRY FALSE
-# endif
-
-/**
- * @brief Enables factory for generic buffers.
- */
-# if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
-# define CH_CFG_FACTORY_GENERIC_BUFFERS FALSE
-# endif
-
-/**
- * @brief Enables factory for semaphores.
- */
-# if !defined(CH_CFG_FACTORY_SEMAPHORES)
-# define CH_CFG_FACTORY_SEMAPHORES FALSE
-# endif
-
-/**
- * @brief Enables factory for mailboxes.
- */
-# if !defined(CH_CFG_FACTORY_MAILBOXES)
-# define CH_CFG_FACTORY_MAILBOXES FALSE
-# endif
-
-/**
- * @brief Enables factory for objects FIFOs.
- */
-# if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
-# define CH_CFG_FACTORY_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Enables factory for Pipes.
- */
-# if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__)
-# define CH_CFG_FACTORY_PIPES FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Debug options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Debug option, kernel statistics.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_STATISTICS)
-# define CH_DBG_STATISTICS FALSE
-# endif
-
-/**
- * @brief Debug option, system state check.
- * @details If enabled the correct call protocol for system APIs is checked
- * at runtime.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_SYSTEM_STATE_CHECK)
-# define CH_DBG_SYSTEM_STATE_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, parameters checks.
- * @details If enabled then the checks on the API functions input
- * parameters are activated.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_CHECKS)
-# define CH_DBG_ENABLE_CHECKS FALSE
-# endif
-
-/**
- * @brief Debug option, consistency checks.
- * @details If enabled then all the assertions in the kernel code are
- * activated. This includes consistency checks inside the kernel,
- * runtime anomalies and port-defined checks.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_ASSERTS)
-# define CH_DBG_ENABLE_ASSERTS FALSE
-# endif
-
-/**
- * @brief Debug option, trace buffer.
- * @details If enabled then the trace buffer is activated.
- *
- * @note The default is @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_MASK)
-# define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
-# endif
-
-/**
- * @brief Trace buffer entries.
- * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is
- * different from @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_BUFFER_SIZE)
-# define CH_DBG_TRACE_BUFFER_SIZE 128
-# endif
-
-/**
- * @brief Debug option, stack checks.
- * @details If enabled then a runtime stack check is performed.
- *
- * @note The default is @p FALSE.
- * @note The stack check is performed in a architecture/port dependent way.
- * It may not be implemented or some ports.
- * @note The default failure mode is to halt the system with the global
- * @p panic_msg variable set to @p NULL.
- */
-# if !defined(CH_DBG_ENABLE_STACK_CHECK)
-# define CH_DBG_ENABLE_STACK_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, stacks initialization.
- * @details If enabled then the threads working area is filled with a byte
- * value when a thread is created. This can be useful for the
- * runtime measurement of the used stack.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_FILL_THREADS)
-# define CH_DBG_FILL_THREADS FALSE
-# endif
-
-/**
- * @brief Debug option, threads profiling.
- * @details If enabled then a field is added to the @p thread_t structure that
- * counts the system ticks occurred while executing the thread.
- *
- * @note The default is @p FALSE.
- * @note This debug option is not currently compatible with the
- * tickless mode.
- */
-# if !defined(CH_DBG_THREADS_PROFILING)
-# define CH_DBG_THREADS_PROFILING FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel hooks
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System structure extension.
- * @details User fields added to the end of the @p ch_system_t structure.
- */
-# define CH_CFG_SYSTEM_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief System initialization hook.
- * @details User initialization code added to the @p chSysInit() function
- * just before interrupts are enabled globally.
- */
-# define CH_CFG_SYSTEM_INIT_HOOK() \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads descriptor structure extension.
- * @details User fields added to the end of the @p thread_t structure.
- */
-# define CH_CFG_THREAD_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief Threads initialization hook.
- * @details User initialization code added to the @p _thread_init() function.
- *
- * @note It is invoked from within @p _thread_init() and implicitly from all
- * the threads creation APIs.
- */
-# define CH_CFG_THREAD_INIT_HOOK(tp) \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads finalization hook.
- * @details User finalization code added to the @p chThdExit() API.
- */
-# define CH_CFG_THREAD_EXIT_HOOK(tp) \
- { /* Add threads finalization code here.*/ }
-
-/**
- * @brief Context switch hook.
- * @details This hook is invoked just before switching between threads.
- */
-# define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) \
- { /* Context switch code here.*/ }
-
-/**
- * @brief ISR enter hook.
- */
-# define CH_CFG_IRQ_PROLOGUE_HOOK() \
- { /* IRQ prologue code here.*/ }
-
-/**
- * @brief ISR exit hook.
- */
-# define CH_CFG_IRQ_EPILOGUE_HOOK() \
- { /* IRQ epilogue code here.*/ }
-
-/**
- * @brief Idle thread enter hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to activate a power saving mode.
- */
-# define CH_CFG_IDLE_ENTER_HOOK() \
- { /* Idle-enter code here.*/ }
-
-/**
- * @brief Idle thread leave hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to deactivate a power saving mode.
- */
-# define CH_CFG_IDLE_LEAVE_HOOK() \
- { /* Idle-leave code here.*/ }
-
-/**
- * @brief Idle Loop hook.
- * @details This hook is continuously invoked by the idle thread loop.
- */
-# define CH_CFG_IDLE_LOOP_HOOK() \
- { /* Idle loop code here.*/ }
-
-/**
- * @brief System tick event hook.
- * @details This hook is invoked in the system tick handler immediately
- * after processing the virtual timers queue.
- */
-# define CH_CFG_SYSTEM_TICK_HOOK() \
- { /* System tick event code here.*/ }
-
-/**
- * @brief System halt hook.
- * @details This hook is invoked in case to a system halting error before
- * the system is halted.
- */
-# define CH_CFG_SYSTEM_HALT_HOOK(reason) \
- { /* System halt code here.*/ }
-
-/**
- * @brief Trace hook.
- * @details This hook is invoked each time a new record is written in the
- * trace buffer.
- */
-# define CH_CFG_TRACE_HOOK(tep) \
- { /* Trace code here.*/ }
-
-/** @} */
-
-/*===========================================================================*/
-/* Port-specific settings (override port settings defaulted in chcore.h). */
-/*===========================================================================*/
-
-#endif /* CHCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/keymaps/abnt2/config.h b/keyboards/redragon/k552/rev1/config.h
index a1c2df67b..f53cbd692 100644
--- a/keyboards/redragon/k552/rev1/keymaps/abnt2/config.h
+++ b/keyboards/redragon/k552/rev1/config.h
@@ -25,8 +25,7 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER Redragon
-#define PRODUCT K552
-#define DESCRIPTION K552 Kumara
+#define PRODUCT K552 Kumara
/* Additional options */
#define RGB_MATRIX_ENABLE 1
diff --git a/keyboards/redragon/k552/rev1/halconf.h b/keyboards/redragon/k552/rev1/halconf.h
deleted file mode 100644
index 8c25963fc..000000000
--- a/keyboards/redragon/k552/rev1/halconf.h
+++ /dev/null
@@ -1,524 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file templates/halconf.h
- * @brief HAL configuration header.
- * @details HAL configuration file, this file allows to enable or disable the
- * various device drivers from your application. You may also use
- * this file in order to override the device drivers default settings.
- *
- * @addtogroup HAL_CONF
- * @{
- */
-
-#ifndef HALCONF_H
-# define HALCONF_H
-
-# define _CHIBIOS_HAL_CONF_
-# define _CHIBIOS_HAL_CONF_VER_7_0_
-
-# include "mcuconf.h"
-
-/**
- * @brief Enables the PAL subsystem.
- */
-# if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-# define HAL_USE_PAL TRUE
-# endif
-
-/**
- * @brief Enables the ADC subsystem.
- */
-# if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-# define HAL_USE_ADC FALSE
-# endif
-
-/**
- * @brief Enables the CAN subsystem.
- */
-# if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-# define HAL_USE_CAN FALSE
-# endif
-
-/**
- * @brief Enables the cryptographic subsystem.
- */
-# if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-# define HAL_USE_CRY FALSE
-# endif
-
-/**
- * @brief Enables the DAC subsystem.
- */
-# if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-# define HAL_USE_DAC FALSE
-# endif
-
-/**
- * @brief Enables the GPT subsystem.
- */
-# if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-# define HAL_USE_GPT FALSE
-# endif
-
-/**
- * @brief Enables the I2C subsystem.
- */
-# if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-# define HAL_USE_I2C FALSE
-# endif
-
-/**
- * @brief Enables the I2S subsystem.
- */
-# if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-# define HAL_USE_I2S FALSE
-# endif
-
-/**
- * @brief Enables the ICU subsystem.
- */
-# if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-# define HAL_USE_ICU FALSE
-# endif
-
-/**
- * @brief Enables the MAC subsystem.
- */
-# if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-# define HAL_USE_MAC FALSE
-# endif
-
-/**
- * @brief Enables the MMC_SPI subsystem.
- */
-# if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_MMC_SPI FALSE
-# endif
-
-/**
- * @brief Enables the PWM subsystem.
- */
-# if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-# define HAL_USE_PWM FALSE
-# endif
-
-/**
- * @brief Enables the RTC subsystem.
- */
-# if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-# define HAL_USE_RTC FALSE
-# endif
-
-/**
- * @brief Enables the SDC subsystem.
- */
-# if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-# define HAL_USE_SDC FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL subsystem.
- */
-# if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL over USB subsystem.
- */
-# if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL_USB TRUE
-# endif
-
-/**
- * @brief Enables the SIO subsystem.
- */
-# if !defined(HAL_USE_SIO) || defined(__DOXYGEN__)
-# define HAL_USE_SIO FALSE
-# endif
-
-/**
- * @brief Enables the SPI subsystem.
- */
-# if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_SPI FALSE
-# endif
-
-/**
- * @brief Enables the TRNG subsystem.
- */
-# if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__)
-# define HAL_USE_TRNG FALSE
-# endif
-
-/**
- * @brief Enables the UART subsystem.
- */
-# if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-# define HAL_USE_UART FALSE
-# endif
-
-/**
- * @brief Enables the USB subsystem.
- */
-# if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-# define HAL_USE_USB TRUE
-# endif
-
-/**
- * @brief Enables the WDG subsystem.
- */
-# if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-# define HAL_USE_WDG FALSE
-# endif
-
-/**
- * @brief Enables the WSPI subsystem.
- */
-# if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__)
-# define HAL_USE_WSPI FALSE
-# endif
-
-/*===========================================================================*/
-/* PAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define PAL_USE_CALLBACKS FALSE
-# endif
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-# define PAL_USE_WAIT FALSE
-# endif
-
-/*===========================================================================*/
-/* ADC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-# define ADC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define ADC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* CAN driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Sleep mode related APIs inclusion switch.
- */
-# if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-# define CAN_USE_SLEEP_MODE TRUE
-# endif
-
-/**
- * @brief Enforces the driver to use direct callbacks rather than OSAL events.
- */
-# if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define CAN_ENFORCE_USE_CALLBACKS FALSE
-# endif
-
-/*===========================================================================*/
-/* CRY driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the SW fall-back of the cryptographic driver.
- * @details When enabled, this option, activates a fall-back software
- * implementation for algorithms not supported by the underlying
- * hardware.
- * @note Fall-back implementations may not be present for all algorithms.
- */
-# if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_USE_FALLBACK FALSE
-# endif
-
-/**
- * @brief Makes the driver forcibly use the fall-back implementations.
- */
-# if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_ENFORCE_FALLBACK FALSE
-# endif
-
-/*===========================================================================*/
-/* DAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
-# define DAC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define DAC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* I2C driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the mutual exclusion APIs on the I2C bus.
- */
-# if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define I2C_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* MAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the zero-copy API.
- */
-# if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-# define MAC_USE_ZERO_COPY FALSE
-# endif
-
-/**
- * @brief Enables an event sources for incoming packets.
- */
-# if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-# define MAC_USE_EVENTS TRUE
-# endif
-
-/*===========================================================================*/
-/* MMC_SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- * This option is recommended also if the SPI driver does not
- * use a DMA channel and heavily loads the CPU.
- */
-# if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-# define MMC_NICE_WAITING TRUE
-# endif
-
-/*===========================================================================*/
-/* SDC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Number of initialization attempts before rejecting the card.
- * @note Attempts are performed at 10mS intervals.
- */
-# if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-# define SDC_INIT_RETRY 100
-# endif
-
-/**
- * @brief Include support for MMC cards.
- * @note MMC support is not yet implemented so this option must be kept
- * at @p FALSE.
- */
-# if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-# define SDC_MMC_SUPPORT FALSE
-# endif
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- */
-# if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-# define SDC_NICE_WAITING TRUE
-# endif
-
-/**
- * @brief OCR initialization constant for V20 cards.
- */
-# if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR_V20 0x50FF8000U
-# endif
-
-/**
- * @brief OCR initialization constant for non-V20 cards.
- */
-# if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR 0x80100000U
-# endif
-
-/*===========================================================================*/
-/* SERIAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Default bit rate.
- * @details Configuration parameter, this is the baud rate selected for the
- * default configuration.
- */
-# if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-# define SERIAL_DEFAULT_BITRATE 38400
-# endif
-
-/**
- * @brief Serial buffers size.
- * @details Configuration parameter, you can change the depth of the queue
- * buffers depending on the requirements of your application.
- * @note The default is 16 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_BUFFERS_SIZE 16
-# endif
-
-/*===========================================================================*/
-/* SERIAL_USB driver related setting. */
-/*===========================================================================*/
-
-/**
- * @brief Serial over USB buffers size.
- * @details Configuration parameter, the buffer size must be a multiple of
- * the USB data endpoint maximum packet size.
- * @note The default is 256 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_SIZE 1
-# endif
-
-/**
- * @brief Serial over USB number of buffers.
- * @note The default is 2 buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_NUMBER 2
-# endif
-
-/*===========================================================================*/
-/* SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-# define SPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables circular transfers APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
-# define SPI_USE_CIRCULAR FALSE
-# endif
-
-/**
- * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define SPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/**
- * @brief Handling method for SPI CS line.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
-# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
-# endif
-
-/*===========================================================================*/
-/* UART driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-# define UART_USE_WAIT FALSE
-# endif
-
-/**
- * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define UART_USE_MUTUAL_EXCLUSION FALSE
-# endif
-
-/*===========================================================================*/
-/* USB driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-# define USB_USE_WAIT TRUE
-# endif
-
-/*===========================================================================*/
-/* WSPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__)
-# define WSPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define WSPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-#endif /* HALCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/keymaps/ansi/config.h b/keyboards/redragon/k552/rev1/keymaps/ansi/config.h
deleted file mode 100644
index a1c2df67b..000000000
--- a/keyboards/redragon/k552/rev1/keymaps/ansi/config.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2020 Adam Honse <calcprogrammer1@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include "config_common.h"
-#include "config_led.h"
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x0C45
-#define PRODUCT_ID 0x5104
-#define DEVICE_VER 0x0001
-
-#define MANUFACTURER Redragon
-#define PRODUCT K552
-#define DESCRIPTION K552 Kumara
-
-/* Additional options */
-#define RGB_MATRIX_ENABLE 1
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255
-#define RGB_MATRIX_STARTUP_SPD 32
-
-/* Key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 17
-
-#define DIODE_DIRECTION ROW2COL
-
-#define MATRIX_COL_PINS { A0, A1, A2, A3, A4, A5, A6, A7, A14, A15, B0, B1, B2, B3, B4, B10, B11 }
-#define MATRIX_ROW_PINS { D15, D14, D13, D12, D11, D10 }
-
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCE 5
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-//#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-//#define LOCKING_RESYNC_ENABLE
-
-#define LED_CAPS_LOCK_PIN D6
-#define LED_SCROLL_LOCK_PIN D7
-#define LED_PIN_ON_STATE 0 \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/keymaps/iso/config.h b/keyboards/redragon/k552/rev1/keymaps/iso/config.h
deleted file mode 100644
index a1c2df67b..000000000
--- a/keyboards/redragon/k552/rev1/keymaps/iso/config.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2020 Adam Honse <calcprogrammer1@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include "config_common.h"
-#include "config_led.h"
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x0C45
-#define PRODUCT_ID 0x5104
-#define DEVICE_VER 0x0001
-
-#define MANUFACTURER Redragon
-#define PRODUCT K552
-#define DESCRIPTION K552 Kumara
-
-/* Additional options */
-#define RGB_MATRIX_ENABLE 1
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255
-#define RGB_MATRIX_STARTUP_SPD 32
-
-/* Key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 17
-
-#define DIODE_DIRECTION ROW2COL
-
-#define MATRIX_COL_PINS { A0, A1, A2, A3, A4, A5, A6, A7, A14, A15, B0, B1, B2, B3, B4, B10, B11 }
-#define MATRIX_ROW_PINS { D15, D14, D13, D12, D11, D10 }
-
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCE 5
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-//#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-//#define LOCKING_RESYNC_ENABLE
-
-#define LED_CAPS_LOCK_PIN D6
-#define LED_SCROLL_LOCK_PIN D7
-#define LED_PIN_ON_STATE 0 \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev1/led_matrix.c b/keyboards/redragon/k552/rev1/led_matrix.c
index 62d5d9650..7081aebea 100644
--- a/keyboards/redragon/k552/rev1/led_matrix.c
+++ b/keyboards/redragon/k552/rev1/led_matrix.c
@@ -1,9 +1,4 @@
-#include <string.h>
-#include "rgb.h"
#include "rgb_matrix.h"
-#include "rgb_matrix_types.h"
-#include "color.h"
-
/*
COLS key / led
PWM PWM00A - PWM21A (PWM15A unused)
diff --git a/keyboards/redragon/k552/rev1/mcuconf.h b/keyboards/redragon/k552/rev1/mcuconf.h
deleted file mode 100644
index 2cb5fd2a1..000000000
--- a/keyboards/redragon/k552/rev1/mcuconf.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef MCUCONF_H
-#define MCUCONF_H
-
-/*
- * SN32F24xx drivers configuration.
- * The following settings override the default settings present in
- * the various device driver implementation headers.
- * Note that the settings for each driver only have effect if the whole
- * driver is enabled in halconf.h.
- *
- * IRQ priorities:
- * 3...0 Lowest...Highest.
- *
- * DMA priorities:
- * 0...3 Lowest...Highest.
- */
-
-#define SN32F24xx_MCUCONF
-
-/*
- * HAL driver system settings.
- */
-
-/*
- * SN driver system settings.
- */
-#define SN32_CT_IRQ_PRIORITY 2
-#define SN32_CT_USE_TIMER 2
-
-#define SN32_HAS_GPIOA TRUE
-#define SN32_HAS_GPIOB TRUE
-#define SN32_HAS_GPIOC TRUE
-#define SN32_HAS_GPIOD TRUE
-
-/*
- * USB driver system settings.
- */
-#define SN32_USB_USE_USB1 TRUE
-#define SN32_USB_LOW_POWER_ON_SUSPEND TRUE
-#define STM32_USB_USB1_HP_IRQ_PRIORITY 13
-#define STM32_USB_USB1_LP_IRQ_PRIORITY 14
-
-#define CRT1_AREAS_NUMBER 1
-
-#define PLATFORM_USB_USE_USB1 TRUE
-
-/*
- * Timer driver system settings.
- */
-#define SN32_PWM_USE_TIM1 FALSE
-#define SN32_PWM_USE_TIM2 TRUE
-#define SN32_PWM_TIM1_IRQ_PRIORITY 3
-#define SN32_PWM_TIM2_IRQ_PRIORITY 3
-
-#define SYS_CLOCK_SETUP 1
-#define SYS0_CLKCFG_VAL 0
-#define AHB_PRESCALAR 0x2
-#define CLKOUT_SEL_VAL 0x0
-#define CLKOUT_PRESCALAR 0x0
-
-/*----------------------------------------------------------------------------
- DEFINES
- *----------------------------------------------------------------------------*/
-#define IHRC 0
-#define ILRC 1
-#define EHSXTAL 2
-#define ELSXTAL 3
-#define PLL 4
-
-/*----------------------------------------------------------------------------
- Define clocks
- *----------------------------------------------------------------------------*/
-#define __IHRC_FREQ (12000000UL)
-#define __ILRC_FREQ (32000UL)
-#define __ELS_XTAL_FREQ (32768UL)
-
-#if (SYS_CLOCK_SETUP)
-#define SYS0_PLLCTRL_VAL (PLL_ENABLE<<15) | (PLL_CLKIN<<12) | (PLL_FSEL<<8) | (PLL_PSEL<<5) | PLL_MSEL
-#endif
-
-// #endif /* _MCUCONF_H_ */
-
-#define PLATFORM_MCUCONF
-
-#endif /* MCUCONF_H */ \ No newline at end of file
diff --git a/keyboards/redragon/k552/rev2/config.h b/keyboards/redragon/k552/rev2/config.h
index 90b0e5b6c..bd065e681 100644
--- a/keyboards/redragon/k552/rev2/config.h
+++ b/keyboards/redragon/k552/rev2/config.h
@@ -24,8 +24,7 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER Redragon
-#define PRODUCT K552
-#define DESCRIPTION K552 Kumara
+#define PRODUCT K552 Kumara
/* key matrix size */
#define MATRIX_ROWS 6
diff --git a/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.c b/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.c
deleted file mode 100644
index a896aea21..000000000
--- a/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#include "hal.h"
-
-#if HAL_USE_PAL || defined(__DOXYGEN__)
-/**
- * @brief PAL setup.
- * @details Digital I/O ports static configuration as defined in @p board.h.
- * This variable is used by the HAL when initializing the PAL driver.
- */
-const PALConfig pal_default_config = {
- #if SN32_HAS_GPIOA
- {VAL_GPIOA_MODE},
- #endif
- #if SN32_HAS_GPIOB
- {VAL_GPIOB_MODE},
- #endif
- #if SN32_HAS_GPIOC
- {VAL_GPIOC_MODE},
- #endif
- #if SN32_HAS_GPIOD
- {VAL_GPIOD_MODE},
- #endif
-};
-#endif
-
-static int flag __attribute__((section(".flag"))) __attribute__((__used__)) = 0xAAAA5555;
-
-extern void enter_bootloader_mode_if_requested(void);
-
-/**
- * @brief Early initialization code.
- * @details This initialization must be performed just after stack setup
- * and before any other initialization.
- */
-void __early_init(void) {
- enter_bootloader_mode_if_requested();
- sn32_clock_init();
-}
-
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-// SN_GPIO0->MODE = 0xffff;
-// // setP0.0~P0.1, P0.6~P0.7, P0.10~P0.15 to input pull-up
-// SN_GPIO0->CFG = 0x000A0AA0;
-
-// // set P1.2~1.9, P1.12~P1.15 to input pull-up
-// SN_GPIO1->CFG = 0x00A0000A;
-
-// SN_GPIO2->MODE = 0xFFFF;
-// // set P2.4~P2.15 to input pull-up
-// SN_GPIO2->CFG = 0x000000AA;
-
-// // set P3.0~P3.1, P3.4~P3.8 to input pull-up
-// SN_GPIO3->CFG = 0xAAA800A0;
-
- // Set led pins to output
-// SN_GPIO2->CFG = 0xFFFF;
-// SN_GPIO2->DATA = 0x0; // Set low
-
- SN_SYS0->SWDCTRL_b.SWDDIS = 1; // Disable SWD
-} \ No newline at end of file
diff --git a/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.h b/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.h
deleted file mode 100644
index 99a5982ef..000000000
--- a/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.h
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef _BOARD_H_
-#define _BOARD_H_
-
-/*
- * Setup for Generic STM32_F303 Board
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_GENERIC_SN32_F240
-#define BOARD_NAME "SN32F240"
-
-/*
- * MCU type as defined in the ST header.
- */
-#define system_SN32F240
-
-/*
- * IO pins assignments.
- */
-#define GPIOA_PIN0 0U
-#define GPIOA_PIN1 1U
-#define GPIOA_PIN2 2U
-#define GPIOA_PIN3 3U
-#define GPIOA_PIN4 4U
-#define GPIOA_PIN5 5U
-#define GPIOA_PIN6 6U
-#define GPIOA_PIN7 7U
-#define GPIOA_PIN8 8U
-#define GPIOA_PIN9 9U
-#define GPIOA_PIN10 10U
-#define GPIOA_PIN11 11U
-#define GPIOA_PIN12 12U
-#define GPIOA_PIN13 13U
-#define GPIOA_PIN14 14U
-#define GPIOA_PIN15 15U
-
-#define GPIOB_PIN0 0U
-#define GPIOB_PIN1 1U
-#define GPIOB_PIN2 2U
-#define GPIOB_PIN3 3U
-#define GPIOB_PIN4 4U
-#define GPIOB_PIN5 5U
-#define GPIOB_PIN6 6U
-#define GPIOB_PIN7 7U
-#define GPIOB_PIN8 8U
-#define GPIOB_PIN9 9U
-#define GPIOB_PIN10 10U
-#define GPIOB_PIN11 11U
-#define GPIOB_PIN12 12U
-#define GPIOB_PIN13 13U
-#define GPIOB_PIN14 14U
-#define GPIOB_PIN15 15U
-
-#define GPIOC_PIN0 0U
-#define GPIOC_PIN1 1U
-#define GPIOC_PIN2 2U
-#define GPIOC_PIN3 3U
-#define GPIOC_PIN4 4U
-#define GPIOC_PIN5 5U
-#define GPIOC_PIN6 6U
-#define GPIOC_PIN7 7U
-#define GPIOC_PIN8 8U
-#define GPIOC_PIN9 9U
-#define GPIOC_PIN10 10U
-#define GPIOC_PIN11 11U
-#define GPIOC_PIN12 12U
-#define GPIOC_PIN13 13U
-#define GPIOC_PIN14 14U
-#define GPIOC_PIN15 15U
-
-// #define GPIOD_PIN0 0U
-// #define GPIOD_PIN1 1U
-// #define GPIOD_PIN2 2U
-#define GPIOD_PIN3 3U
-#define GPIOD_PIN4 4U
-#define GPIOD_PIN5 5U
-#define GPIOD_PIN6 6U
-#define GPIOD_PIN7 7U
-#define GPIOD_PIN8 8U
-#define GPIOD_PIN9 9U
-#define GPIOD_PIN10 10U
-#define GPIOD_PIN11 11U
-// #define GPIOD_PIN12 12U
-// #define GPIOD_PIN13 13U
-// #define GPIOD_PIN14 14U
-// #define GPIOD_PIN15 15U
-
-
-/*
- * IO lines assignments.
- */
-// #define LINE_L3GD20_SDI PAL_LINE(GPIOA, 7U)
-// #define LINE_USB_DM PAL_LINE(GPIOA, 11U)
-// #define LINE_USB_DP PAL_LINE(GPIOA, 12U)
-#define LINE_SWDIO PAL_LINE(GPIOD, 5U)
-#define LINE_SWCLK PAL_LINE(GPIOD, 6U)
-
-// #define LINE_PINB8 PAL_LINE(GPIOB, 8U)
-// #define LINE_PINB9 PAL_LINE(GPIOB, 9U)
-
-#define LINE_CAPS_LOCK PAL_LINE(GPIOC, 8U)
-
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the SN32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n)))
-#define PIN_MODE_OUTPUT(n) (1U << ((n)))
-#define PIN_MODE_PULLUP(n) (0U << ((n*2)))
-#define PIN_MODE_SCHMITT_EN(n) (10U << ((n*2)))
-#define PIN_MODE_SCHMITT_DIS(n) (11U << ((n*2)))
-
-/*
- * GPIOA setup:
- *
- * PA0 - PIN0 (input pullup).
- * PA1 - PIN1 (input pullup).
- * PA2 - PIN2 (input pullup).
- * PA3 - PIN3 (input pullup).
- * PA4 - PIN4 (input pullup).
- * PA5 - PIN5 (input pullup).
- * PA6 - PIN6 (input pullup).
- * PA7 - PIN7 (input pullup).
- * PA8 - PIN8 (input pullup).
- * PA9 - PIN9 (input pullup).
- * PA11 - PIN10 (input pullup).
- * PA11 - PIN11 (input pullup).
- * PA12 - PIN12 (input pullup).
- * PA13 - PIN13 (input pullup).
- * PA14 - PIN14 (input pullup).
- * PA15 - PIN15 (input pullup).
- */
-#define VAL_GPIOA_MODE (PIN_MODE_INPUT(GPIOA_PIN0) | PIN_MODE_INPUT(GPIOA_PIN1) | PIN_MODE_INPUT(GPIOA_PIN2) | PIN_MODE_INPUT(GPIOA_PIN3) | PIN_MODE_INPUT(GPIOA_PIN4) | PIN_MODE_INPUT(GPIOA_PIN5) | PIN_MODE_INPUT(GPIOA_PIN6) | PIN_MODE_INPUT(GPIOA_PIN7) | PIN_MODE_INPUT(GPIOA_PIN8) | PIN_MODE_INPUT(GPIOA_PIN9) | PIN_MODE_INPUT(GPIOA_PIN10) | PIN_MODE_INPUT(GPIOA_PIN11) | PIN_MODE_INPUT(GPIOA_PIN12) | PIN_MODE_INPUT(GPIOA_PIN13) | PIN_MODE_INPUT(GPIOA_PIN14) | PIN_MODE_INPUT(GPIOA_PIN15))
-
-/*
- * GPIOB setup:
- *
- * PB0 - PIN0 (input pullup).
- * PB1 - PIN1 (input pullup).
- * PB2 - PIN2 (input pullup).
- * PB3 - PIN3 (input pullup).
- * PB4 - PIN4 (input pullup).
- * PB5 - PIN5 (input pullup).
- * PB6 - PIN6 (input pullup).
- * PB7 - PIN7 (input pullup).
- * PB8 - PIN8 (input pullup).
- * PB9 - PIN9 (input pullup).
- * PB10 - PIN10 (input pullup).
- * PB11 - PIN11 (input pullup).
- * PB12 - PIN12 (input pullup).
- * PB13 - PIN13 (input pullup).
- * PB14 - PIN14 (input pullup).
- * PB15 - PIN15 (input pullup).
- */
-#define VAL_GPIOB_MODE (PIN_MODE_INPUT(GPIOB_PIN0) | PIN_MODE_INPUT(GPIOB_PIN1) | PIN_MODE_INPUT(GPIOB_PIN2) | PIN_MODE_INPUT(GPIOB_PIN3) | PIN_MODE_INPUT(GPIOB_PIN4) | PIN_MODE_INPUT(GPIOB_PIN5) | PIN_MODE_INPUT(GPIOB_PIN6) | PIN_MODE_OUTPUT(GPIOB_PIN7) | PIN_MODE_INPUT(GPIOB_PIN8) | PIN_MODE_INPUT(GPIOB_PIN9) | PIN_MODE_INPUT(GPIOB_PIN10) | PIN_MODE_INPUT(GPIOB_PIN11) | PIN_MODE_INPUT(GPIOB_PIN12) | PIN_MODE_INPUT(GPIOB_PIN13) | PIN_MODE_INPUT(GPIOB_PIN14) | PIN_MODE_INPUT(GPIOB_PIN15))
-/*
- * GPIOC setup:
- *
- * PC0 - PIN0 (input pullup).
- * PC1 - PIN1 (input pullup).
- * PC2 - PIN2 (input pullup).
- * PC3 - PIN3 (input pullup).
- * PC4 - PIN4 (input pullup).
- * PC5 - PIN5 (input pullup).
- * PC6 - PIN6 (input pullup).
- * PC7 - PIN7 (input pullup).
- * PC8 - PIN8 (input pullup).
- * PC9 - PIN9 (input pullup).
- * PC10 - PIN10 (input pullup).
- * PC11 - PIN11 (input pullup).
- * PC12 - PIN12 (input pullup).
- * PC13 - PIN13 (input pullup).
- * PC14 - PIN14 (input pullup).
- * PC15 - PIN15 (input pullup).
- */
-#define VAL_GPIOC_MODE (PIN_MODE_INPUT(GPIOC_PIN0) | PIN_MODE_INPUT(GPIOC_PIN1) | PIN_MODE_INPUT(GPIOC_PIN2) | PIN_MODE_INPUT(GPIOC_PIN3) | PIN_MODE_INPUT(GPIOC_PIN4) | PIN_MODE_INPUT(GPIOC_PIN5) | PIN_MODE_INPUT(GPIOC_PIN6) | PIN_MODE_INPUT(GPIOC_PIN7) | PIN_MODE_INPUT(GPIOC_PIN8) | PIN_MODE_INPUT(GPIOC_PIN9) | PIN_MODE_INPUT(GPIOC_PIN10) | PIN_MODE_INPUT(GPIOC_PIN11) | PIN_MODE_INPUT(GPIOC_PIN12) | PIN_MODE_INPUT(GPIOC_PIN13) | PIN_MODE_INPUT(GPIOC_PIN14) | PIN_MODE_INPUT(GPIOC_PIN15))
-
-/*
- * GPIOD setup:
- *
- * PD0 - PIN0 (input pullup).
- * PD1 - PIN1 (input pullup).
- * PD2 - PIN2 (input pullup).
- * PD3 - PIN3 (input pullup).
- * PD4 - PIN4 (input pullup).
- * PD5 - PIN5 (input pullup).
- * PD6 - PIN6 (input pullup).
- * PD7 - PIN7 (input pullup).
- * PD8 - PIN8 (input pullup).
- * PD9 - PIN9 (input pullup).
- * PD11 - PIN10 (input pullup).
- * PD11 - PIN11 (input pullup).
- * PD12 - PIN12 (input pullup).
- * PD13 - PIN13 (input pullup).
- * PD14 - PIN14 (input pullup).
- * PD15 - PIN15 (input pullup).
- */
-#define VAL_GPIOD_MODE (PIN_MODE_INPUT(GPIOD_PIN3) | PIN_MODE_INPUT(GPIOD_PIN4) | PIN_MODE_INPUT(GPIOD_PIN5) | PIN_MODE_INPUT(GPIOD_PIN6) | PIN_MODE_INPUT(GPIOD_PIN7) | PIN_MODE_INPUT(GPIOD_PIN8) | PIN_MODE_INPUT(GPIOD_PIN9) | PIN_MODE_INPUT(GPIOD_PIN10) | PIN_MODE_INPUT(GPIOD_PIN11))
-
-#if !defined(_FROM_ASM_)
-# ifdef __cplusplus
-extern "C" {
-# endif
-void boardInit(void);
-# ifdef __cplusplus
-}
-# endif
-#endif /* _FROM_ASM_ */
-
-#endif /* _BOARD_H_ */ \ No newline at end of file
diff --git a/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.mk b/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.mk
deleted file mode 100644
index e9bfc74b6..000000000
--- a/keyboards/sharkoon/sgk3/boards/SN_SN32F240/board.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# List of all the board related files.
-BOARDSRC = $(BOARD_PATH)/boards/SN_SN32F240/board.c
-
-# Required include directories
-BOARDINC = $(BOARD_PATH)/boards/SN_SN32F240 \ No newline at end of file
diff --git a/keyboards/sharkoon/sgk3/chconf.h b/keyboards/sharkoon/sgk3/chconf.h
deleted file mode 100644
index 2b863e582..000000000
--- a/keyboards/sharkoon/sgk3/chconf.h
+++ /dev/null
@@ -1,700 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file rt/templates/chconf.h
- * @brief Configuration file template.
- * @details A copy of this file must be placed in each project directory, it
- * contains the application specific kernel settings.
- *
- * @addtogroup config
- * @details Kernel related settings and hooks.
- * @{
- */
-
-#ifndef CHCONF_H
-# define CHCONF_H
-
-# define _CHIBIOS_RT_CONF_
-# define _CHIBIOS_RT_CONF_VER_6_0_
-
-/*===========================================================================*/
-/**
- * @name System timers settings
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System time counter resolution.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_ST_RESOLUTION)
-# define CH_CFG_ST_RESOLUTION 32
-# endif
-
-/**
- * @brief System tick frequency.
- * @details Frequency of the system timer that drives the system ticks. This
- * setting also defines the system tick time unit.
- */
-# if !defined(CH_CFG_ST_FREQUENCY)
-# define CH_CFG_ST_FREQUENCY 10000
-# endif
-
-/**
- * @brief Time intervals data size.
- * @note Allowed values are 16, 32 or 64 bits.
- */
-# if !defined(CH_CFG_INTERVALS_SIZE)
-# define CH_CFG_INTERVALS_SIZE 32
-# endif
-
-/**
- * @brief Time types data size.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_TIME_TYPES_SIZE)
-# define CH_CFG_TIME_TYPES_SIZE 32
-# endif
-
-/**
- * @brief Time delta constant for the tick-less mode.
- * @note If this value is zero then the system uses the classic
- * periodic tick. This value represents the minimum number
- * of ticks that is safe to specify in a timeout directive.
- * The value one is not valid, timeouts are rounded up to
- * this value.
- */
-# if !defined(CH_CFG_ST_TIMEDELTA)
-# define CH_CFG_ST_TIMEDELTA 0
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel parameters and options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Round robin interval.
- * @details This constant is the number of system ticks allowed for the
- * threads before preemption occurs. Setting this value to zero
- * disables the preemption for threads with equal priority and the
- * round robin becomes cooperative. Note that higher priority
- * threads can still preempt, the kernel is always preemptive.
- * @note Disabling the round robin preemption makes the kernel more compact
- * and generally faster.
- * @note The round robin preemption is not supported in tickless mode and
- * must be set to zero in that case.
- */
-# if !defined(CH_CFG_TIME_QUANTUM)
-# define CH_CFG_TIME_QUANTUM 0
-# endif
-
-/**
- * @brief Managed RAM size.
- * @details Size of the RAM area to be managed by the OS. If set to zero
- * then the whole available RAM is used. The core memory is made
- * available to the heap allocator and/or can be used directly through
- * the simplified core memory allocator.
- *
- * @note In order to let the OS manage the whole RAM the linker script must
- * provide the @p __heap_base__ and @p __heap_end__ symbols.
- * @note Requires @p CH_CFG_USE_MEMCORE.
- */
-# if !defined(CH_CFG_MEMCORE_SIZE)
-# define CH_CFG_MEMCORE_SIZE 0
-# endif
-
-/**
- * @brief Idle thread automatic spawn suppression.
- * @details When this option is activated the function @p chSysInit()
- * does not spawn the idle thread. The application @p main()
- * function becomes the idle thread and must implement an
- * infinite loop.
- */
-# if !defined(CH_CFG_NO_IDLE_THREAD)
-# define CH_CFG_NO_IDLE_THREAD FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Performance options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief OS optimization.
- * @details If enabled then time efficient rather than space efficient code
- * is used when two possible implementations exist.
- *
- * @note This is not related to the compiler optimization options.
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_OPTIMIZE_SPEED)
-# define CH_CFG_OPTIMIZE_SPEED FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Subsystem options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Time Measurement APIs.
- * @details If enabled then the time measurement APIs are included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_TM)
-# define CH_CFG_USE_TM FALSE
-# endif
-
-/**
- * @brief Threads registry APIs.
- * @details If enabled then the registry APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_REGISTRY)
-# define CH_CFG_USE_REGISTRY TRUE
-# endif
-
-/**
- * @brief Threads synchronization APIs.
- * @details If enabled then the @p chThdWait() function is included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_WAITEXIT)
-# define CH_CFG_USE_WAITEXIT TRUE
-# endif
-
-/**
- * @brief Semaphores APIs.
- * @details If enabled then the Semaphores APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES)
-# define CH_CFG_USE_SEMAPHORES TRUE
-# endif
-
-/**
- * @brief Semaphores queuing mode.
- * @details If enabled then the threads are enqueued on semaphores by
- * priority rather than in FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY)
-# define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mutexes APIs.
- * @details If enabled then the mutexes APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MUTEXES)
-# define CH_CFG_USE_MUTEXES TRUE
-# endif
-
-/**
- * @brief Enables recursive behavior on mutexes.
- * @note Recursive mutexes are heavier and have an increased
- * memory footprint.
- *
- * @note The default is @p FALSE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_MUTEXES_RECURSIVE)
-# define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
-# endif
-
-/**
- * @brief Conditional Variables APIs.
- * @details If enabled then the conditional variables APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_CONDVARS)
-# define CH_CFG_USE_CONDVARS TRUE
-# endif
-
-/**
- * @brief Conditional Variables APIs with timeout.
- * @details If enabled then the conditional variables APIs with timeout
- * specification are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_CONDVARS.
- */
-# if !defined(CH_CFG_USE_CONDVARS_TIMEOUT)
-# define CH_CFG_USE_CONDVARS_TIMEOUT FALSE
-# endif
-
-/**
- * @brief Events Flags APIs.
- * @details If enabled then the event flags APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_EVENTS)
-# define CH_CFG_USE_EVENTS TRUE
-# endif
-
-/**
- * @brief Events Flags APIs with timeout.
- * @details If enabled then the events APIs with timeout specification
- * are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_EVENTS.
- */
-# if !defined(CH_CFG_USE_EVENTS_TIMEOUT)
-# define CH_CFG_USE_EVENTS_TIMEOUT TRUE
-# endif
-
-/**
- * @brief Synchronous Messages APIs.
- * @details If enabled then the synchronous messages APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MESSAGES)
-# define CH_CFG_USE_MESSAGES TRUE
-# endif
-
-/**
- * @brief Synchronous Messages queuing mode.
- * @details If enabled then messages are served by priority rather than in
- * FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_MESSAGES.
- */
-# if !defined(CH_CFG_USE_MESSAGES_PRIORITY)
-# define CH_CFG_USE_MESSAGES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mailboxes APIs.
- * @details If enabled then the asynchronous messages (mailboxes) APIs are
- * included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_MAILBOXES)
-# define CH_CFG_USE_MAILBOXES TRUE
-# endif
-
-/**
- * @brief Core Memory Manager APIs.
- * @details If enabled then the core memory manager APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMCORE)
-# define CH_CFG_USE_MEMCORE FALSE
-# endif
-
-/**
- * @brief Heap Allocator APIs.
- * @details If enabled then the memory heap allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or
- * @p CH_CFG_USE_SEMAPHORES.
- * @note Mutexes are recommended.
- */
-# if !defined(CH_CFG_USE_HEAP)
-# define CH_CFG_USE_HEAP FALSE
-# endif
-
-/**
- * @brief Memory Pools Allocator APIs.
- * @details If enabled then the memory pools allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMPOOLS)
-# define CH_CFG_USE_MEMPOOLS FALSE
-# endif
-
-/**
- * @brief Objects FIFOs APIs.
- * @details If enabled then the objects FIFOs APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_OBJ_FIFOS)
-# define CH_CFG_USE_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Pipes APIs.
- * @details If enabled then the pipes APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_PIPES)
-# define CH_CFG_USE_PIPES FALSE
-# endif
-
-/**
- * @brief Dynamic Threads APIs.
- * @details If enabled then the dynamic threads creation APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_WAITEXIT.
- * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
- */
-# if !defined(CH_CFG_USE_DYNAMIC)
-# define CH_CFG_USE_DYNAMIC FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Objects factory options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Objects Factory APIs.
- * @details If enabled then the objects factory APIs are included in the
- * kernel.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_CFG_USE_FACTORY)
-# define CH_CFG_USE_FACTORY FALSE
-# endif
-
-/**
- * @brief Maximum length for object names.
- * @details If the specified length is zero then the name is stored by
- * pointer but this could have unintended side effects.
- */
-# if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
-# define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8
-# endif
-
-/**
- * @brief Enables the registry of generic objects.
- */
-# if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
-# define CH_CFG_FACTORY_OBJECTS_REGISTRY FALSE
-# endif
-
-/**
- * @brief Enables factory for generic buffers.
- */
-# if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
-# define CH_CFG_FACTORY_GENERIC_BUFFERS FALSE
-# endif
-
-/**
- * @brief Enables factory for semaphores.
- */
-# if !defined(CH_CFG_FACTORY_SEMAPHORES)
-# define CH_CFG_FACTORY_SEMAPHORES FALSE
-# endif
-
-/**
- * @brief Enables factory for mailboxes.
- */
-# if !defined(CH_CFG_FACTORY_MAILBOXES)
-# define CH_CFG_FACTORY_MAILBOXES FALSE
-# endif
-
-/**
- * @brief Enables factory for objects FIFOs.
- */
-# if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
-# define CH_CFG_FACTORY_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Enables factory for Pipes.
- */
-# if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__)
-# define CH_CFG_FACTORY_PIPES FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Debug options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Debug option, kernel statistics.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_STATISTICS)
-# define CH_DBG_STATISTICS FALSE
-# endif
-
-/**
- * @brief Debug option, system state check.
- * @details If enabled the correct call protocol for system APIs is checked
- * at runtime.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_SYSTEM_STATE_CHECK)
-# define CH_DBG_SYSTEM_STATE_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, parameters checks.
- * @details If enabled then the checks on the API functions input
- * parameters are activated.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_CHECKS)
-# define CH_DBG_ENABLE_CHECKS FALSE
-# endif
-
-/**
- * @brief Debug option, consistency checks.
- * @details If enabled then all the assertions in the kernel code are
- * activated. This includes consistency checks inside the kernel,
- * runtime anomalies and port-defined checks.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_ASSERTS)
-# define CH_DBG_ENABLE_ASSERTS FALSE
-# endif
-
-/**
- * @brief Debug option, trace buffer.
- * @details If enabled then the trace buffer is activated.
- *
- * @note The default is @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_MASK)
-# define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
-# endif
-
-/**
- * @brief Trace buffer entries.
- * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is
- * different from @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_BUFFER_SIZE)
-# define CH_DBG_TRACE_BUFFER_SIZE 128
-# endif
-
-/**
- * @brief Debug option, stack checks.
- * @details If enabled then a runtime stack check is performed.
- *
- * @note The default is @p FALSE.
- * @note The stack check is performed in a architecture/port dependent way.
- * It may not be implemented or some ports.
- * @note The default failure mode is to halt the system with the global
- * @p panic_msg variable set to @p NULL.
- */
-# if !defined(CH_DBG_ENABLE_STACK_CHECK)
-# define CH_DBG_ENABLE_STACK_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, stacks initialization.
- * @details If enabled then the threads working area is filled with a byte
- * value when a thread is created. This can be useful for the
- * runtime measurement of the used stack.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_FILL_THREADS)
-# define CH_DBG_FILL_THREADS FALSE
-# endif
-
-/**
- * @brief Debug option, threads profiling.
- * @details If enabled then a field is added to the @p thread_t structure that
- * counts the system ticks occurred while executing the thread.
- *
- * @note The default is @p FALSE.
- * @note This debug option is not currently compatible with the
- * tickless mode.
- */
-# if !defined(CH_DBG_THREADS_PROFILING)
-# define CH_DBG_THREADS_PROFILING FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel hooks
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System structure extension.
- * @details User fields added to the end of the @p ch_system_t structure.
- */
-# define CH_CFG_SYSTEM_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief System initialization hook.
- * @details User initialization code added to the @p chSysInit() function
- * just before interrupts are enabled globally.
- */
-# define CH_CFG_SYSTEM_INIT_HOOK() \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads descriptor structure extension.
- * @details User fields added to the end of the @p thread_t structure.
- */
-# define CH_CFG_THREAD_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief Threads initialization hook.
- * @details User initialization code added to the @p _thread_init() function.
- *
- * @note It is invoked from within @p _thread_init() and implicitly from all
- * the threads creation APIs.
- */
-# define CH_CFG_THREAD_INIT_HOOK(tp) \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads finalization hook.
- * @details User finalization code added to the @p chThdExit() API.
- */
-# define CH_CFG_THREAD_EXIT_HOOK(tp) \
- { /* Add threads finalization code here.*/ }
-
-/**
- * @brief Context switch hook.
- * @details This hook is invoked just before switching between threads.
- */
-# define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) \
- { /* Context switch code here.*/ }
-
-/**
- * @brief ISR enter hook.
- */
-# define CH_CFG_IRQ_PROLOGUE_HOOK() \
- { /* IRQ prologue code here.*/ }
-
-/**
- * @brief ISR exit hook.
- */
-# define CH_CFG_IRQ_EPILOGUE_HOOK() \
- { /* IRQ epilogue code here.*/ }
-
-/**
- * @brief Idle thread enter hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to activate a power saving mode.
- */
-# define CH_CFG_IDLE_ENTER_HOOK() \
- { /* Idle-enter code here.*/ }
-
-/**
- * @brief Idle thread leave hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to deactivate a power saving mode.
- */
-# define CH_CFG_IDLE_LEAVE_HOOK() \
- { /* Idle-leave code here.*/ }
-
-/**
- * @brief Idle Loop hook.
- * @details This hook is continuously invoked by the idle thread loop.
- */
-# define CH_CFG_IDLE_LOOP_HOOK() \
- { /* Idle loop code here.*/ }
-
-/**
- * @brief System tick event hook.
- * @details This hook is invoked in the system tick handler immediately
- * after processing the virtual timers queue.
- */
-# define CH_CFG_SYSTEM_TICK_HOOK() \
- { /* System tick event code here.*/ }
-
-/**
- * @brief System halt hook.
- * @details This hook is invoked in case to a system halting error before
- * the system is halted.
- */
-# define CH_CFG_SYSTEM_HALT_HOOK(reason) \
- { /* System halt code here.*/ }
-
-/**
- * @brief Trace hook.
- * @details This hook is invoked each time a new record is written in the
- * trace buffer.
- */
-# define CH_CFG_TRACE_HOOK(tep) \
- { /* Trace code here.*/ }
-
-/** @} */
-
-/*===========================================================================*/
-/* Port-specific settings (override port settings defaulted in chcore.h). */
-/*===========================================================================*/
-
-#endif /* CHCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/sharkoon/sgk3/halconf.h b/keyboards/sharkoon/sgk3/halconf.h
deleted file mode 100644
index 8c25963fc..000000000
--- a/keyboards/sharkoon/sgk3/halconf.h
+++ /dev/null
@@ -1,524 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file templates/halconf.h
- * @brief HAL configuration header.
- * @details HAL configuration file, this file allows to enable or disable the
- * various device drivers from your application. You may also use
- * this file in order to override the device drivers default settings.
- *
- * @addtogroup HAL_CONF
- * @{
- */
-
-#ifndef HALCONF_H
-# define HALCONF_H
-
-# define _CHIBIOS_HAL_CONF_
-# define _CHIBIOS_HAL_CONF_VER_7_0_
-
-# include "mcuconf.h"
-
-/**
- * @brief Enables the PAL subsystem.
- */
-# if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-# define HAL_USE_PAL TRUE
-# endif
-
-/**
- * @brief Enables the ADC subsystem.
- */
-# if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-# define HAL_USE_ADC FALSE
-# endif
-
-/**
- * @brief Enables the CAN subsystem.
- */
-# if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-# define HAL_USE_CAN FALSE
-# endif
-
-/**
- * @brief Enables the cryptographic subsystem.
- */
-# if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-# define HAL_USE_CRY FALSE
-# endif
-
-/**
- * @brief Enables the DAC subsystem.
- */
-# if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-# define HAL_USE_DAC FALSE
-# endif
-
-/**
- * @brief Enables the GPT subsystem.
- */
-# if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-# define HAL_USE_GPT FALSE
-# endif
-
-/**
- * @brief Enables the I2C subsystem.
- */
-# if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-# define HAL_USE_I2C FALSE
-# endif
-
-/**
- * @brief Enables the I2S subsystem.
- */
-# if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-# define HAL_USE_I2S FALSE
-# endif
-
-/**
- * @brief Enables the ICU subsystem.
- */
-# if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-# define HAL_USE_ICU FALSE
-# endif
-
-/**
- * @brief Enables the MAC subsystem.
- */
-# if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-# define HAL_USE_MAC FALSE
-# endif
-
-/**
- * @brief Enables the MMC_SPI subsystem.
- */
-# if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_MMC_SPI FALSE
-# endif
-
-/**
- * @brief Enables the PWM subsystem.
- */
-# if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-# define HAL_USE_PWM FALSE
-# endif
-
-/**
- * @brief Enables the RTC subsystem.
- */
-# if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-# define HAL_USE_RTC FALSE
-# endif
-
-/**
- * @brief Enables the SDC subsystem.
- */
-# if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-# define HAL_USE_SDC FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL subsystem.
- */
-# if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL over USB subsystem.
- */
-# if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL_USB TRUE
-# endif
-
-/**
- * @brief Enables the SIO subsystem.
- */
-# if !defined(HAL_USE_SIO) || defined(__DOXYGEN__)
-# define HAL_USE_SIO FALSE
-# endif
-
-/**
- * @brief Enables the SPI subsystem.
- */
-# if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_SPI FALSE
-# endif
-
-/**
- * @brief Enables the TRNG subsystem.
- */
-# if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__)
-# define HAL_USE_TRNG FALSE
-# endif
-
-/**
- * @brief Enables the UART subsystem.
- */
-# if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-# define HAL_USE_UART FALSE
-# endif
-
-/**
- * @brief Enables the USB subsystem.
- */
-# if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-# define HAL_USE_USB TRUE
-# endif
-
-/**
- * @brief Enables the WDG subsystem.
- */
-# if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-# define HAL_USE_WDG FALSE
-# endif
-
-/**
- * @brief Enables the WSPI subsystem.
- */
-# if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__)
-# define HAL_USE_WSPI FALSE
-# endif
-
-/*===========================================================================*/
-/* PAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define PAL_USE_CALLBACKS FALSE
-# endif
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-# define PAL_USE_WAIT FALSE
-# endif
-
-/*===========================================================================*/
-/* ADC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-# define ADC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define ADC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* CAN driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Sleep mode related APIs inclusion switch.
- */
-# if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-# define CAN_USE_SLEEP_MODE TRUE
-# endif
-
-/**
- * @brief Enforces the driver to use direct callbacks rather than OSAL events.
- */
-# if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define CAN_ENFORCE_USE_CALLBACKS FALSE
-# endif
-
-/*===========================================================================*/
-/* CRY driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the SW fall-back of the cryptographic driver.
- * @details When enabled, this option, activates a fall-back software
- * implementation for algorithms not supported by the underlying
- * hardware.
- * @note Fall-back implementations may not be present for all algorithms.
- */
-# if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_USE_FALLBACK FALSE
-# endif
-
-/**
- * @brief Makes the driver forcibly use the fall-back implementations.
- */
-# if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_ENFORCE_FALLBACK FALSE
-# endif
-
-/*===========================================================================*/
-/* DAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
-# define DAC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define DAC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* I2C driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the mutual exclusion APIs on the I2C bus.
- */
-# if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define I2C_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* MAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the zero-copy API.
- */
-# if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-# define MAC_USE_ZERO_COPY FALSE
-# endif
-
-/**
- * @brief Enables an event sources for incoming packets.
- */
-# if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-# define MAC_USE_EVENTS TRUE
-# endif
-
-/*===========================================================================*/
-/* MMC_SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- * This option is recommended also if the SPI driver does not
- * use a DMA channel and heavily loads the CPU.
- */
-# if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-# define MMC_NICE_WAITING TRUE
-# endif
-
-/*===========================================================================*/
-/* SDC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Number of initialization attempts before rejecting the card.
- * @note Attempts are performed at 10mS intervals.
- */
-# if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-# define SDC_INIT_RETRY 100
-# endif
-
-/**
- * @brief Include support for MMC cards.
- * @note MMC support is not yet implemented so this option must be kept
- * at @p FALSE.
- */
-# if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-# define SDC_MMC_SUPPORT FALSE
-# endif
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- */
-# if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-# define SDC_NICE_WAITING TRUE
-# endif
-
-/**
- * @brief OCR initialization constant for V20 cards.
- */
-# if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR_V20 0x50FF8000U
-# endif
-
-/**
- * @brief OCR initialization constant for non-V20 cards.
- */
-# if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR 0x80100000U
-# endif
-
-/*===========================================================================*/
-/* SERIAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Default bit rate.
- * @details Configuration parameter, this is the baud rate selected for the
- * default configuration.
- */
-# if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-# define SERIAL_DEFAULT_BITRATE 38400
-# endif
-
-/**
- * @brief Serial buffers size.
- * @details Configuration parameter, you can change the depth of the queue
- * buffers depending on the requirements of your application.
- * @note The default is 16 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_BUFFERS_SIZE 16
-# endif
-
-/*===========================================================================*/
-/* SERIAL_USB driver related setting. */
-/*===========================================================================*/
-
-/**
- * @brief Serial over USB buffers size.
- * @details Configuration parameter, the buffer size must be a multiple of
- * the USB data endpoint maximum packet size.
- * @note The default is 256 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_SIZE 1
-# endif
-
-/**
- * @brief Serial over USB number of buffers.
- * @note The default is 2 buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_NUMBER 2
-# endif
-
-/*===========================================================================*/
-/* SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-# define SPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables circular transfers APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
-# define SPI_USE_CIRCULAR FALSE
-# endif
-
-/**
- * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define SPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/**
- * @brief Handling method for SPI CS line.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
-# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
-# endif
-
-/*===========================================================================*/
-/* UART driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-# define UART_USE_WAIT FALSE
-# endif
-
-/**
- * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define UART_USE_MUTUAL_EXCLUSION FALSE
-# endif
-
-/*===========================================================================*/
-/* USB driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-# define USB_USE_WAIT TRUE
-# endif
-
-/*===========================================================================*/
-/* WSPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__)
-# define WSPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define WSPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-#endif /* HALCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/sharkoon/sgk3/keymaps/ansi/config.h b/keyboards/sharkoon/sgk3/keymaps/ansi/config.h
index ee4532d93..9ead5611b 100644
--- a/keyboards/sharkoon/sgk3/keymaps/ansi/config.h
+++ b/keyboards/sharkoon/sgk3/keymaps/ansi/config.h
@@ -25,8 +25,7 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER Sharkoon
-#define PRODUCT SGK3
-#define DESCRIPTION SKILLER MECH SGK3
+#define PRODUCT SKILLER MECH SGK3
/* Additional options */
#define RGB_MATRIX_ENABLE 1
@@ -50,4 +49,4 @@
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
//#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
-//#define LOCKING_RESYNC_ENABLE \ No newline at end of file
+//#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/sharkoon/sgk3/keymaps/iso/config.h b/keyboards/sharkoon/sgk3/keymaps/iso/config.h
index ee4532d93..9ead5611b 100644
--- a/keyboards/sharkoon/sgk3/keymaps/iso/config.h
+++ b/keyboards/sharkoon/sgk3/keymaps/iso/config.h
@@ -25,8 +25,7 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER Sharkoon
-#define PRODUCT SGK3
-#define DESCRIPTION SKILLER MECH SGK3
+#define PRODUCT SKILLER MECH SGK3
/* Additional options */
#define RGB_MATRIX_ENABLE 1
@@ -50,4 +49,4 @@
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
//#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
-//#define LOCKING_RESYNC_ENABLE \ No newline at end of file
+//#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/sharkoon/sgk3/led_matrix.c b/keyboards/sharkoon/sgk3/led_matrix.c
index daae2680f..55c859732 100644
--- a/keyboards/sharkoon/sgk3/led_matrix.c
+++ b/keyboards/sharkoon/sgk3/led_matrix.c
@@ -1,9 +1,4 @@
-#include <string.h>
-#include "rgb.h"
#include "rgb_matrix.h"
-#include "rgb_matrix_types.h"
-#include "color.h"
-
/*
COLS key / led
PWM PWM00A - PWM21A (PWM15A unused)
diff --git a/keyboards/sharkoon/sgk3/mcuconf.h b/keyboards/sharkoon/sgk3/mcuconf.h
deleted file mode 100644
index 2cb5fd2a1..000000000
--- a/keyboards/sharkoon/sgk3/mcuconf.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef MCUCONF_H
-#define MCUCONF_H
-
-/*
- * SN32F24xx drivers configuration.
- * The following settings override the default settings present in
- * the various device driver implementation headers.
- * Note that the settings for each driver only have effect if the whole
- * driver is enabled in halconf.h.
- *
- * IRQ priorities:
- * 3...0 Lowest...Highest.
- *
- * DMA priorities:
- * 0...3 Lowest...Highest.
- */
-
-#define SN32F24xx_MCUCONF
-
-/*
- * HAL driver system settings.
- */
-
-/*
- * SN driver system settings.
- */
-#define SN32_CT_IRQ_PRIORITY 2
-#define SN32_CT_USE_TIMER 2
-
-#define SN32_HAS_GPIOA TRUE
-#define SN32_HAS_GPIOB TRUE
-#define SN32_HAS_GPIOC TRUE
-#define SN32_HAS_GPIOD TRUE
-
-/*
- * USB driver system settings.
- */
-#define SN32_USB_USE_USB1 TRUE
-#define SN32_USB_LOW_POWER_ON_SUSPEND TRUE
-#define STM32_USB_USB1_HP_IRQ_PRIORITY 13
-#define STM32_USB_USB1_LP_IRQ_PRIORITY 14
-
-#define CRT1_AREAS_NUMBER 1
-
-#define PLATFORM_USB_USE_USB1 TRUE
-
-/*
- * Timer driver system settings.
- */
-#define SN32_PWM_USE_TIM1 FALSE
-#define SN32_PWM_USE_TIM2 TRUE
-#define SN32_PWM_TIM1_IRQ_PRIORITY 3
-#define SN32_PWM_TIM2_IRQ_PRIORITY 3
-
-#define SYS_CLOCK_SETUP 1
-#define SYS0_CLKCFG_VAL 0
-#define AHB_PRESCALAR 0x2
-#define CLKOUT_SEL_VAL 0x0
-#define CLKOUT_PRESCALAR 0x0
-
-/*----------------------------------------------------------------------------
- DEFINES
- *----------------------------------------------------------------------------*/
-#define IHRC 0
-#define ILRC 1
-#define EHSXTAL 2
-#define ELSXTAL 3
-#define PLL 4
-
-/*----------------------------------------------------------------------------
- Define clocks
- *----------------------------------------------------------------------------*/
-#define __IHRC_FREQ (12000000UL)
-#define __ILRC_FREQ (32000UL)
-#define __ELS_XTAL_FREQ (32768UL)
-
-#if (SYS_CLOCK_SETUP)
-#define SYS0_PLLCTRL_VAL (PLL_ENABLE<<15) | (PLL_CLKIN<<12) | (PLL_FSEL<<8) | (PLL_PSEL<<5) | PLL_MSEL
-#endif
-
-// #endif /* _MCUCONF_H_ */
-
-#define PLATFORM_MCUCONF
-
-#endif /* MCUCONF_H */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk530/boards/SN_SN32F240/board.c b/keyboards/spcgear/gk530/boards/SN_SN32F240/board.c
deleted file mode 100644
index a896aea21..000000000
--- a/keyboards/spcgear/gk530/boards/SN_SN32F240/board.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#include "hal.h"
-
-#if HAL_USE_PAL || defined(__DOXYGEN__)
-/**
- * @brief PAL setup.
- * @details Digital I/O ports static configuration as defined in @p board.h.
- * This variable is used by the HAL when initializing the PAL driver.
- */
-const PALConfig pal_default_config = {
- #if SN32_HAS_GPIOA
- {VAL_GPIOA_MODE},
- #endif
- #if SN32_HAS_GPIOB
- {VAL_GPIOB_MODE},
- #endif
- #if SN32_HAS_GPIOC
- {VAL_GPIOC_MODE},
- #endif
- #if SN32_HAS_GPIOD
- {VAL_GPIOD_MODE},
- #endif
-};
-#endif
-
-static int flag __attribute__((section(".flag"))) __attribute__((__used__)) = 0xAAAA5555;
-
-extern void enter_bootloader_mode_if_requested(void);
-
-/**
- * @brief Early initialization code.
- * @details This initialization must be performed just after stack setup
- * and before any other initialization.
- */
-void __early_init(void) {
- enter_bootloader_mode_if_requested();
- sn32_clock_init();
-}
-
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-// SN_GPIO0->MODE = 0xffff;
-// // setP0.0~P0.1, P0.6~P0.7, P0.10~P0.15 to input pull-up
-// SN_GPIO0->CFG = 0x000A0AA0;
-
-// // set P1.2~1.9, P1.12~P1.15 to input pull-up
-// SN_GPIO1->CFG = 0x00A0000A;
-
-// SN_GPIO2->MODE = 0xFFFF;
-// // set P2.4~P2.15 to input pull-up
-// SN_GPIO2->CFG = 0x000000AA;
-
-// // set P3.0~P3.1, P3.4~P3.8 to input pull-up
-// SN_GPIO3->CFG = 0xAAA800A0;
-
- // Set led pins to output
-// SN_GPIO2->CFG = 0xFFFF;
-// SN_GPIO2->DATA = 0x0; // Set low
-
- SN_SYS0->SWDCTRL_b.SWDDIS = 1; // Disable SWD
-} \ No newline at end of file
diff --git a/keyboards/spcgear/gk530/boards/SN_SN32F240/board.h b/keyboards/spcgear/gk530/boards/SN_SN32F240/board.h
deleted file mode 100644
index 99a5982ef..000000000
--- a/keyboards/spcgear/gk530/boards/SN_SN32F240/board.h
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef _BOARD_H_
-#define _BOARD_H_
-
-/*
- * Setup for Generic STM32_F303 Board
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_GENERIC_SN32_F240
-#define BOARD_NAME "SN32F240"
-
-/*
- * MCU type as defined in the ST header.
- */
-#define system_SN32F240
-
-/*
- * IO pins assignments.
- */
-#define GPIOA_PIN0 0U
-#define GPIOA_PIN1 1U
-#define GPIOA_PIN2 2U
-#define GPIOA_PIN3 3U
-#define GPIOA_PIN4 4U
-#define GPIOA_PIN5 5U
-#define GPIOA_PIN6 6U
-#define GPIOA_PIN7 7U
-#define GPIOA_PIN8 8U
-#define GPIOA_PIN9 9U
-#define GPIOA_PIN10 10U
-#define GPIOA_PIN11 11U
-#define GPIOA_PIN12 12U
-#define GPIOA_PIN13 13U
-#define GPIOA_PIN14 14U
-#define GPIOA_PIN15 15U
-
-#define GPIOB_PIN0 0U
-#define GPIOB_PIN1 1U
-#define GPIOB_PIN2 2U
-#define GPIOB_PIN3 3U
-#define GPIOB_PIN4 4U
-#define GPIOB_PIN5 5U
-#define GPIOB_PIN6 6U
-#define GPIOB_PIN7 7U
-#define GPIOB_PIN8 8U
-#define GPIOB_PIN9 9U
-#define GPIOB_PIN10 10U
-#define GPIOB_PIN11 11U
-#define GPIOB_PIN12 12U
-#define GPIOB_PIN13 13U
-#define GPIOB_PIN14 14U
-#define GPIOB_PIN15 15U
-
-#define GPIOC_PIN0 0U
-#define GPIOC_PIN1 1U
-#define GPIOC_PIN2 2U
-#define GPIOC_PIN3 3U
-#define GPIOC_PIN4 4U
-#define GPIOC_PIN5 5U
-#define GPIOC_PIN6 6U
-#define GPIOC_PIN7 7U
-#define GPIOC_PIN8 8U
-#define GPIOC_PIN9 9U
-#define GPIOC_PIN10 10U
-#define GPIOC_PIN11 11U
-#define GPIOC_PIN12 12U
-#define GPIOC_PIN13 13U
-#define GPIOC_PIN14 14U
-#define GPIOC_PIN15 15U
-
-// #define GPIOD_PIN0 0U
-// #define GPIOD_PIN1 1U
-// #define GPIOD_PIN2 2U
-#define GPIOD_PIN3 3U
-#define GPIOD_PIN4 4U
-#define GPIOD_PIN5 5U
-#define GPIOD_PIN6 6U
-#define GPIOD_PIN7 7U
-#define GPIOD_PIN8 8U
-#define GPIOD_PIN9 9U
-#define GPIOD_PIN10 10U
-#define GPIOD_PIN11 11U
-// #define GPIOD_PIN12 12U
-// #define GPIOD_PIN13 13U
-// #define GPIOD_PIN14 14U
-// #define GPIOD_PIN15 15U
-
-
-/*
- * IO lines assignments.
- */
-// #define LINE_L3GD20_SDI PAL_LINE(GPIOA, 7U)
-// #define LINE_USB_DM PAL_LINE(GPIOA, 11U)
-// #define LINE_USB_DP PAL_LINE(GPIOA, 12U)
-#define LINE_SWDIO PAL_LINE(GPIOD, 5U)
-#define LINE_SWCLK PAL_LINE(GPIOD, 6U)
-
-// #define LINE_PINB8 PAL_LINE(GPIOB, 8U)
-// #define LINE_PINB9 PAL_LINE(GPIOB, 9U)
-
-#define LINE_CAPS_LOCK PAL_LINE(GPIOC, 8U)
-
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the SN32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n)))
-#define PIN_MODE_OUTPUT(n) (1U << ((n)))
-#define PIN_MODE_PULLUP(n) (0U << ((n*2)))
-#define PIN_MODE_SCHMITT_EN(n) (10U << ((n*2)))
-#define PIN_MODE_SCHMITT_DIS(n) (11U << ((n*2)))
-
-/*
- * GPIOA setup:
- *
- * PA0 - PIN0 (input pullup).
- * PA1 - PIN1 (input pullup).
- * PA2 - PIN2 (input pullup).
- * PA3 - PIN3 (input pullup).
- * PA4 - PIN4 (input pullup).
- * PA5 - PIN5 (input pullup).
- * PA6 - PIN6 (input pullup).
- * PA7 - PIN7 (input pullup).
- * PA8 - PIN8 (input pullup).
- * PA9 - PIN9 (input pullup).
- * PA11 - PIN10 (input pullup).
- * PA11 - PIN11 (input pullup).
- * PA12 - PIN12 (input pullup).
- * PA13 - PIN13 (input pullup).
- * PA14 - PIN14 (input pullup).
- * PA15 - PIN15 (input pullup).
- */
-#define VAL_GPIOA_MODE (PIN_MODE_INPUT(GPIOA_PIN0) | PIN_MODE_INPUT(GPIOA_PIN1) | PIN_MODE_INPUT(GPIOA_PIN2) | PIN_MODE_INPUT(GPIOA_PIN3) | PIN_MODE_INPUT(GPIOA_PIN4) | PIN_MODE_INPUT(GPIOA_PIN5) | PIN_MODE_INPUT(GPIOA_PIN6) | PIN_MODE_INPUT(GPIOA_PIN7) | PIN_MODE_INPUT(GPIOA_PIN8) | PIN_MODE_INPUT(GPIOA_PIN9) | PIN_MODE_INPUT(GPIOA_PIN10) | PIN_MODE_INPUT(GPIOA_PIN11) | PIN_MODE_INPUT(GPIOA_PIN12) | PIN_MODE_INPUT(GPIOA_PIN13) | PIN_MODE_INPUT(GPIOA_PIN14) | PIN_MODE_INPUT(GPIOA_PIN15))
-
-/*
- * GPIOB setup:
- *
- * PB0 - PIN0 (input pullup).
- * PB1 - PIN1 (input pullup).
- * PB2 - PIN2 (input pullup).
- * PB3 - PIN3 (input pullup).
- * PB4 - PIN4 (input pullup).
- * PB5 - PIN5 (input pullup).
- * PB6 - PIN6 (input pullup).
- * PB7 - PIN7 (input pullup).
- * PB8 - PIN8 (input pullup).
- * PB9 - PIN9 (input pullup).
- * PB10 - PIN10 (input pullup).
- * PB11 - PIN11 (input pullup).
- * PB12 - PIN12 (input pullup).
- * PB13 - PIN13 (input pullup).
- * PB14 - PIN14 (input pullup).
- * PB15 - PIN15 (input pullup).
- */
-#define VAL_GPIOB_MODE (PIN_MODE_INPUT(GPIOB_PIN0) | PIN_MODE_INPUT(GPIOB_PIN1) | PIN_MODE_INPUT(GPIOB_PIN2) | PIN_MODE_INPUT(GPIOB_PIN3) | PIN_MODE_INPUT(GPIOB_PIN4) | PIN_MODE_INPUT(GPIOB_PIN5) | PIN_MODE_INPUT(GPIOB_PIN6) | PIN_MODE_OUTPUT(GPIOB_PIN7) | PIN_MODE_INPUT(GPIOB_PIN8) | PIN_MODE_INPUT(GPIOB_PIN9) | PIN_MODE_INPUT(GPIOB_PIN10) | PIN_MODE_INPUT(GPIOB_PIN11) | PIN_MODE_INPUT(GPIOB_PIN12) | PIN_MODE_INPUT(GPIOB_PIN13) | PIN_MODE_INPUT(GPIOB_PIN14) | PIN_MODE_INPUT(GPIOB_PIN15))
-/*
- * GPIOC setup:
- *
- * PC0 - PIN0 (input pullup).
- * PC1 - PIN1 (input pullup).
- * PC2 - PIN2 (input pullup).
- * PC3 - PIN3 (input pullup).
- * PC4 - PIN4 (input pullup).
- * PC5 - PIN5 (input pullup).
- * PC6 - PIN6 (input pullup).
- * PC7 - PIN7 (input pullup).
- * PC8 - PIN8 (input pullup).
- * PC9 - PIN9 (input pullup).
- * PC10 - PIN10 (input pullup).
- * PC11 - PIN11 (input pullup).
- * PC12 - PIN12 (input pullup).
- * PC13 - PIN13 (input pullup).
- * PC14 - PIN14 (input pullup).
- * PC15 - PIN15 (input pullup).
- */
-#define VAL_GPIOC_MODE (PIN_MODE_INPUT(GPIOC_PIN0) | PIN_MODE_INPUT(GPIOC_PIN1) | PIN_MODE_INPUT(GPIOC_PIN2) | PIN_MODE_INPUT(GPIOC_PIN3) | PIN_MODE_INPUT(GPIOC_PIN4) | PIN_MODE_INPUT(GPIOC_PIN5) | PIN_MODE_INPUT(GPIOC_PIN6) | PIN_MODE_INPUT(GPIOC_PIN7) | PIN_MODE_INPUT(GPIOC_PIN8) | PIN_MODE_INPUT(GPIOC_PIN9) | PIN_MODE_INPUT(GPIOC_PIN10) | PIN_MODE_INPUT(GPIOC_PIN11) | PIN_MODE_INPUT(GPIOC_PIN12) | PIN_MODE_INPUT(GPIOC_PIN13) | PIN_MODE_INPUT(GPIOC_PIN14) | PIN_MODE_INPUT(GPIOC_PIN15))
-
-/*
- * GPIOD setup:
- *
- * PD0 - PIN0 (input pullup).
- * PD1 - PIN1 (input pullup).
- * PD2 - PIN2 (input pullup).
- * PD3 - PIN3 (input pullup).
- * PD4 - PIN4 (input pullup).
- * PD5 - PIN5 (input pullup).
- * PD6 - PIN6 (input pullup).
- * PD7 - PIN7 (input pullup).
- * PD8 - PIN8 (input pullup).
- * PD9 - PIN9 (input pullup).
- * PD11 - PIN10 (input pullup).
- * PD11 - PIN11 (input pullup).
- * PD12 - PIN12 (input pullup).
- * PD13 - PIN13 (input pullup).
- * PD14 - PIN14 (input pullup).
- * PD15 - PIN15 (input pullup).
- */
-#define VAL_GPIOD_MODE (PIN_MODE_INPUT(GPIOD_PIN3) | PIN_MODE_INPUT(GPIOD_PIN4) | PIN_MODE_INPUT(GPIOD_PIN5) | PIN_MODE_INPUT(GPIOD_PIN6) | PIN_MODE_INPUT(GPIOD_PIN7) | PIN_MODE_INPUT(GPIOD_PIN8) | PIN_MODE_INPUT(GPIOD_PIN9) | PIN_MODE_INPUT(GPIOD_PIN10) | PIN_MODE_INPUT(GPIOD_PIN11))
-
-#if !defined(_FROM_ASM_)
-# ifdef __cplusplus
-extern "C" {
-# endif
-void boardInit(void);
-# ifdef __cplusplus
-}
-# endif
-#endif /* _FROM_ASM_ */
-
-#endif /* _BOARD_H_ */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk530/boards/SN_SN32F240/board.mk b/keyboards/spcgear/gk530/boards/SN_SN32F240/board.mk
deleted file mode 100644
index e9bfc74b6..000000000
--- a/keyboards/spcgear/gk530/boards/SN_SN32F240/board.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# List of all the board related files.
-BOARDSRC = $(BOARD_PATH)/boards/SN_SN32F240/board.c
-
-# Required include directories
-BOARDINC = $(BOARD_PATH)/boards/SN_SN32F240 \ No newline at end of file
diff --git a/keyboards/spcgear/gk530/chconf.h b/keyboards/spcgear/gk530/chconf.h
deleted file mode 100644
index 2b863e582..000000000
--- a/keyboards/spcgear/gk530/chconf.h
+++ /dev/null
@@ -1,700 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file rt/templates/chconf.h
- * @brief Configuration file template.
- * @details A copy of this file must be placed in each project directory, it
- * contains the application specific kernel settings.
- *
- * @addtogroup config
- * @details Kernel related settings and hooks.
- * @{
- */
-
-#ifndef CHCONF_H
-# define CHCONF_H
-
-# define _CHIBIOS_RT_CONF_
-# define _CHIBIOS_RT_CONF_VER_6_0_
-
-/*===========================================================================*/
-/**
- * @name System timers settings
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System time counter resolution.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_ST_RESOLUTION)
-# define CH_CFG_ST_RESOLUTION 32
-# endif
-
-/**
- * @brief System tick frequency.
- * @details Frequency of the system timer that drives the system ticks. This
- * setting also defines the system tick time unit.
- */
-# if !defined(CH_CFG_ST_FREQUENCY)
-# define CH_CFG_ST_FREQUENCY 10000
-# endif
-
-/**
- * @brief Time intervals data size.
- * @note Allowed values are 16, 32 or 64 bits.
- */
-# if !defined(CH_CFG_INTERVALS_SIZE)
-# define CH_CFG_INTERVALS_SIZE 32
-# endif
-
-/**
- * @brief Time types data size.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_TIME_TYPES_SIZE)
-# define CH_CFG_TIME_TYPES_SIZE 32
-# endif
-
-/**
- * @brief Time delta constant for the tick-less mode.
- * @note If this value is zero then the system uses the classic
- * periodic tick. This value represents the minimum number
- * of ticks that is safe to specify in a timeout directive.
- * The value one is not valid, timeouts are rounded up to
- * this value.
- */
-# if !defined(CH_CFG_ST_TIMEDELTA)
-# define CH_CFG_ST_TIMEDELTA 0
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel parameters and options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Round robin interval.
- * @details This constant is the number of system ticks allowed for the
- * threads before preemption occurs. Setting this value to zero
- * disables the preemption for threads with equal priority and the
- * round robin becomes cooperative. Note that higher priority
- * threads can still preempt, the kernel is always preemptive.
- * @note Disabling the round robin preemption makes the kernel more compact
- * and generally faster.
- * @note The round robin preemption is not supported in tickless mode and
- * must be set to zero in that case.
- */
-# if !defined(CH_CFG_TIME_QUANTUM)
-# define CH_CFG_TIME_QUANTUM 0
-# endif
-
-/**
- * @brief Managed RAM size.
- * @details Size of the RAM area to be managed by the OS. If set to zero
- * then the whole available RAM is used. The core memory is made
- * available to the heap allocator and/or can be used directly through
- * the simplified core memory allocator.
- *
- * @note In order to let the OS manage the whole RAM the linker script must
- * provide the @p __heap_base__ and @p __heap_end__ symbols.
- * @note Requires @p CH_CFG_USE_MEMCORE.
- */
-# if !defined(CH_CFG_MEMCORE_SIZE)
-# define CH_CFG_MEMCORE_SIZE 0
-# endif
-
-/**
- * @brief Idle thread automatic spawn suppression.
- * @details When this option is activated the function @p chSysInit()
- * does not spawn the idle thread. The application @p main()
- * function becomes the idle thread and must implement an
- * infinite loop.
- */
-# if !defined(CH_CFG_NO_IDLE_THREAD)
-# define CH_CFG_NO_IDLE_THREAD FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Performance options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief OS optimization.
- * @details If enabled then time efficient rather than space efficient code
- * is used when two possible implementations exist.
- *
- * @note This is not related to the compiler optimization options.
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_OPTIMIZE_SPEED)
-# define CH_CFG_OPTIMIZE_SPEED FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Subsystem options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Time Measurement APIs.
- * @details If enabled then the time measurement APIs are included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_TM)
-# define CH_CFG_USE_TM FALSE
-# endif
-
-/**
- * @brief Threads registry APIs.
- * @details If enabled then the registry APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_REGISTRY)
-# define CH_CFG_USE_REGISTRY TRUE
-# endif
-
-/**
- * @brief Threads synchronization APIs.
- * @details If enabled then the @p chThdWait() function is included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_WAITEXIT)
-# define CH_CFG_USE_WAITEXIT TRUE
-# endif
-
-/**
- * @brief Semaphores APIs.
- * @details If enabled then the Semaphores APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES)
-# define CH_CFG_USE_SEMAPHORES TRUE
-# endif
-
-/**
- * @brief Semaphores queuing mode.
- * @details If enabled then the threads are enqueued on semaphores by
- * priority rather than in FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY)
-# define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mutexes APIs.
- * @details If enabled then the mutexes APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MUTEXES)
-# define CH_CFG_USE_MUTEXES TRUE
-# endif
-
-/**
- * @brief Enables recursive behavior on mutexes.
- * @note Recursive mutexes are heavier and have an increased
- * memory footprint.
- *
- * @note The default is @p FALSE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_MUTEXES_RECURSIVE)
-# define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
-# endif
-
-/**
- * @brief Conditional Variables APIs.
- * @details If enabled then the conditional variables APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_CONDVARS)
-# define CH_CFG_USE_CONDVARS TRUE
-# endif
-
-/**
- * @brief Conditional Variables APIs with timeout.
- * @details If enabled then the conditional variables APIs with timeout
- * specification are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_CONDVARS.
- */
-# if !defined(CH_CFG_USE_CONDVARS_TIMEOUT)
-# define CH_CFG_USE_CONDVARS_TIMEOUT FALSE
-# endif
-
-/**
- * @brief Events Flags APIs.
- * @details If enabled then the event flags APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_EVENTS)
-# define CH_CFG_USE_EVENTS TRUE
-# endif
-
-/**
- * @brief Events Flags APIs with timeout.
- * @details If enabled then the events APIs with timeout specification
- * are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_EVENTS.
- */
-# if !defined(CH_CFG_USE_EVENTS_TIMEOUT)
-# define CH_CFG_USE_EVENTS_TIMEOUT TRUE
-# endif
-
-/**
- * @brief Synchronous Messages APIs.
- * @details If enabled then the synchronous messages APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MESSAGES)
-# define CH_CFG_USE_MESSAGES TRUE
-# endif
-
-/**
- * @brief Synchronous Messages queuing mode.
- * @details If enabled then messages are served by priority rather than in
- * FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_MESSAGES.
- */
-# if !defined(CH_CFG_USE_MESSAGES_PRIORITY)
-# define CH_CFG_USE_MESSAGES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mailboxes APIs.
- * @details If enabled then the asynchronous messages (mailboxes) APIs are
- * included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_MAILBOXES)
-# define CH_CFG_USE_MAILBOXES TRUE
-# endif
-
-/**
- * @brief Core Memory Manager APIs.
- * @details If enabled then the core memory manager APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMCORE)
-# define CH_CFG_USE_MEMCORE FALSE
-# endif
-
-/**
- * @brief Heap Allocator APIs.
- * @details If enabled then the memory heap allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or
- * @p CH_CFG_USE_SEMAPHORES.
- * @note Mutexes are recommended.
- */
-# if !defined(CH_CFG_USE_HEAP)
-# define CH_CFG_USE_HEAP FALSE
-# endif
-
-/**
- * @brief Memory Pools Allocator APIs.
- * @details If enabled then the memory pools allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMPOOLS)
-# define CH_CFG_USE_MEMPOOLS FALSE
-# endif
-
-/**
- * @brief Objects FIFOs APIs.
- * @details If enabled then the objects FIFOs APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_OBJ_FIFOS)
-# define CH_CFG_USE_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Pipes APIs.
- * @details If enabled then the pipes APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_PIPES)
-# define CH_CFG_USE_PIPES FALSE
-# endif
-
-/**
- * @brief Dynamic Threads APIs.
- * @details If enabled then the dynamic threads creation APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_WAITEXIT.
- * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
- */
-# if !defined(CH_CFG_USE_DYNAMIC)
-# define CH_CFG_USE_DYNAMIC FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Objects factory options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Objects Factory APIs.
- * @details If enabled then the objects factory APIs are included in the
- * kernel.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_CFG_USE_FACTORY)
-# define CH_CFG_USE_FACTORY FALSE
-# endif
-
-/**
- * @brief Maximum length for object names.
- * @details If the specified length is zero then the name is stored by
- * pointer but this could have unintended side effects.
- */
-# if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
-# define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8
-# endif
-
-/**
- * @brief Enables the registry of generic objects.
- */
-# if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
-# define CH_CFG_FACTORY_OBJECTS_REGISTRY FALSE
-# endif
-
-/**
- * @brief Enables factory for generic buffers.
- */
-# if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
-# define CH_CFG_FACTORY_GENERIC_BUFFERS FALSE
-# endif
-
-/**
- * @brief Enables factory for semaphores.
- */
-# if !defined(CH_CFG_FACTORY_SEMAPHORES)
-# define CH_CFG_FACTORY_SEMAPHORES FALSE
-# endif
-
-/**
- * @brief Enables factory for mailboxes.
- */
-# if !defined(CH_CFG_FACTORY_MAILBOXES)
-# define CH_CFG_FACTORY_MAILBOXES FALSE
-# endif
-
-/**
- * @brief Enables factory for objects FIFOs.
- */
-# if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
-# define CH_CFG_FACTORY_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Enables factory for Pipes.
- */
-# if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__)
-# define CH_CFG_FACTORY_PIPES FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Debug options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Debug option, kernel statistics.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_STATISTICS)
-# define CH_DBG_STATISTICS FALSE
-# endif
-
-/**
- * @brief Debug option, system state check.
- * @details If enabled the correct call protocol for system APIs is checked
- * at runtime.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_SYSTEM_STATE_CHECK)
-# define CH_DBG_SYSTEM_STATE_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, parameters checks.
- * @details If enabled then the checks on the API functions input
- * parameters are activated.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_CHECKS)
-# define CH_DBG_ENABLE_CHECKS FALSE
-# endif
-
-/**
- * @brief Debug option, consistency checks.
- * @details If enabled then all the assertions in the kernel code are
- * activated. This includes consistency checks inside the kernel,
- * runtime anomalies and port-defined checks.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_ASSERTS)
-# define CH_DBG_ENABLE_ASSERTS FALSE
-# endif
-
-/**
- * @brief Debug option, trace buffer.
- * @details If enabled then the trace buffer is activated.
- *
- * @note The default is @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_MASK)
-# define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
-# endif
-
-/**
- * @brief Trace buffer entries.
- * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is
- * different from @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_BUFFER_SIZE)
-# define CH_DBG_TRACE_BUFFER_SIZE 128
-# endif
-
-/**
- * @brief Debug option, stack checks.
- * @details If enabled then a runtime stack check is performed.
- *
- * @note The default is @p FALSE.
- * @note The stack check is performed in a architecture/port dependent way.
- * It may not be implemented or some ports.
- * @note The default failure mode is to halt the system with the global
- * @p panic_msg variable set to @p NULL.
- */
-# if !defined(CH_DBG_ENABLE_STACK_CHECK)
-# define CH_DBG_ENABLE_STACK_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, stacks initialization.
- * @details If enabled then the threads working area is filled with a byte
- * value when a thread is created. This can be useful for the
- * runtime measurement of the used stack.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_FILL_THREADS)
-# define CH_DBG_FILL_THREADS FALSE
-# endif
-
-/**
- * @brief Debug option, threads profiling.
- * @details If enabled then a field is added to the @p thread_t structure that
- * counts the system ticks occurred while executing the thread.
- *
- * @note The default is @p FALSE.
- * @note This debug option is not currently compatible with the
- * tickless mode.
- */
-# if !defined(CH_DBG_THREADS_PROFILING)
-# define CH_DBG_THREADS_PROFILING FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel hooks
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System structure extension.
- * @details User fields added to the end of the @p ch_system_t structure.
- */
-# define CH_CFG_SYSTEM_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief System initialization hook.
- * @details User initialization code added to the @p chSysInit() function
- * just before interrupts are enabled globally.
- */
-# define CH_CFG_SYSTEM_INIT_HOOK() \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads descriptor structure extension.
- * @details User fields added to the end of the @p thread_t structure.
- */
-# define CH_CFG_THREAD_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief Threads initialization hook.
- * @details User initialization code added to the @p _thread_init() function.
- *
- * @note It is invoked from within @p _thread_init() and implicitly from all
- * the threads creation APIs.
- */
-# define CH_CFG_THREAD_INIT_HOOK(tp) \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads finalization hook.
- * @details User finalization code added to the @p chThdExit() API.
- */
-# define CH_CFG_THREAD_EXIT_HOOK(tp) \
- { /* Add threads finalization code here.*/ }
-
-/**
- * @brief Context switch hook.
- * @details This hook is invoked just before switching between threads.
- */
-# define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) \
- { /* Context switch code here.*/ }
-
-/**
- * @brief ISR enter hook.
- */
-# define CH_CFG_IRQ_PROLOGUE_HOOK() \
- { /* IRQ prologue code here.*/ }
-
-/**
- * @brief ISR exit hook.
- */
-# define CH_CFG_IRQ_EPILOGUE_HOOK() \
- { /* IRQ epilogue code here.*/ }
-
-/**
- * @brief Idle thread enter hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to activate a power saving mode.
- */
-# define CH_CFG_IDLE_ENTER_HOOK() \
- { /* Idle-enter code here.*/ }
-
-/**
- * @brief Idle thread leave hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to deactivate a power saving mode.
- */
-# define CH_CFG_IDLE_LEAVE_HOOK() \
- { /* Idle-leave code here.*/ }
-
-/**
- * @brief Idle Loop hook.
- * @details This hook is continuously invoked by the idle thread loop.
- */
-# define CH_CFG_IDLE_LOOP_HOOK() \
- { /* Idle loop code here.*/ }
-
-/**
- * @brief System tick event hook.
- * @details This hook is invoked in the system tick handler immediately
- * after processing the virtual timers queue.
- */
-# define CH_CFG_SYSTEM_TICK_HOOK() \
- { /* System tick event code here.*/ }
-
-/**
- * @brief System halt hook.
- * @details This hook is invoked in case to a system halting error before
- * the system is halted.
- */
-# define CH_CFG_SYSTEM_HALT_HOOK(reason) \
- { /* System halt code here.*/ }
-
-/**
- * @brief Trace hook.
- * @details This hook is invoked each time a new record is written in the
- * trace buffer.
- */
-# define CH_CFG_TRACE_HOOK(tep) \
- { /* Trace code here.*/ }
-
-/** @} */
-
-/*===========================================================================*/
-/* Port-specific settings (override port settings defaulted in chcore.h). */
-/*===========================================================================*/
-
-#endif /* CHCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk530/halconf.h b/keyboards/spcgear/gk530/halconf.h
deleted file mode 100644
index 8c25963fc..000000000
--- a/keyboards/spcgear/gk530/halconf.h
+++ /dev/null
@@ -1,524 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file templates/halconf.h
- * @brief HAL configuration header.
- * @details HAL configuration file, this file allows to enable or disable the
- * various device drivers from your application. You may also use
- * this file in order to override the device drivers default settings.
- *
- * @addtogroup HAL_CONF
- * @{
- */
-
-#ifndef HALCONF_H
-# define HALCONF_H
-
-# define _CHIBIOS_HAL_CONF_
-# define _CHIBIOS_HAL_CONF_VER_7_0_
-
-# include "mcuconf.h"
-
-/**
- * @brief Enables the PAL subsystem.
- */
-# if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-# define HAL_USE_PAL TRUE
-# endif
-
-/**
- * @brief Enables the ADC subsystem.
- */
-# if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-# define HAL_USE_ADC FALSE
-# endif
-
-/**
- * @brief Enables the CAN subsystem.
- */
-# if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-# define HAL_USE_CAN FALSE
-# endif
-
-/**
- * @brief Enables the cryptographic subsystem.
- */
-# if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-# define HAL_USE_CRY FALSE
-# endif
-
-/**
- * @brief Enables the DAC subsystem.
- */
-# if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-# define HAL_USE_DAC FALSE
-# endif
-
-/**
- * @brief Enables the GPT subsystem.
- */
-# if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-# define HAL_USE_GPT FALSE
-# endif
-
-/**
- * @brief Enables the I2C subsystem.
- */
-# if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-# define HAL_USE_I2C FALSE
-# endif
-
-/**
- * @brief Enables the I2S subsystem.
- */
-# if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-# define HAL_USE_I2S FALSE
-# endif
-
-/**
- * @brief Enables the ICU subsystem.
- */
-# if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-# define HAL_USE_ICU FALSE
-# endif
-
-/**
- * @brief Enables the MAC subsystem.
- */
-# if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-# define HAL_USE_MAC FALSE
-# endif
-
-/**
- * @brief Enables the MMC_SPI subsystem.
- */
-# if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_MMC_SPI FALSE
-# endif
-
-/**
- * @brief Enables the PWM subsystem.
- */
-# if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-# define HAL_USE_PWM FALSE
-# endif
-
-/**
- * @brief Enables the RTC subsystem.
- */
-# if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-# define HAL_USE_RTC FALSE
-# endif
-
-/**
- * @brief Enables the SDC subsystem.
- */
-# if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-# define HAL_USE_SDC FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL subsystem.
- */
-# if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL over USB subsystem.
- */
-# if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL_USB TRUE
-# endif
-
-/**
- * @brief Enables the SIO subsystem.
- */
-# if !defined(HAL_USE_SIO) || defined(__DOXYGEN__)
-# define HAL_USE_SIO FALSE
-# endif
-
-/**
- * @brief Enables the SPI subsystem.
- */
-# if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_SPI FALSE
-# endif
-
-/**
- * @brief Enables the TRNG subsystem.
- */
-# if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__)
-# define HAL_USE_TRNG FALSE
-# endif
-
-/**
- * @brief Enables the UART subsystem.
- */
-# if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-# define HAL_USE_UART FALSE
-# endif
-
-/**
- * @brief Enables the USB subsystem.
- */
-# if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-# define HAL_USE_USB TRUE
-# endif
-
-/**
- * @brief Enables the WDG subsystem.
- */
-# if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-# define HAL_USE_WDG FALSE
-# endif
-
-/**
- * @brief Enables the WSPI subsystem.
- */
-# if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__)
-# define HAL_USE_WSPI FALSE
-# endif
-
-/*===========================================================================*/
-/* PAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define PAL_USE_CALLBACKS FALSE
-# endif
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-# define PAL_USE_WAIT FALSE
-# endif
-
-/*===========================================================================*/
-/* ADC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-# define ADC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define ADC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* CAN driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Sleep mode related APIs inclusion switch.
- */
-# if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-# define CAN_USE_SLEEP_MODE TRUE
-# endif
-
-/**
- * @brief Enforces the driver to use direct callbacks rather than OSAL events.
- */
-# if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define CAN_ENFORCE_USE_CALLBACKS FALSE
-# endif
-
-/*===========================================================================*/
-/* CRY driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the SW fall-back of the cryptographic driver.
- * @details When enabled, this option, activates a fall-back software
- * implementation for algorithms not supported by the underlying
- * hardware.
- * @note Fall-back implementations may not be present for all algorithms.
- */
-# if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_USE_FALLBACK FALSE
-# endif
-
-/**
- * @brief Makes the driver forcibly use the fall-back implementations.
- */
-# if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_ENFORCE_FALLBACK FALSE
-# endif
-
-/*===========================================================================*/
-/* DAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
-# define DAC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define DAC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* I2C driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the mutual exclusion APIs on the I2C bus.
- */
-# if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define I2C_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* MAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the zero-copy API.
- */
-# if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-# define MAC_USE_ZERO_COPY FALSE
-# endif
-
-/**
- * @brief Enables an event sources for incoming packets.
- */
-# if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-# define MAC_USE_EVENTS TRUE
-# endif
-
-/*===========================================================================*/
-/* MMC_SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- * This option is recommended also if the SPI driver does not
- * use a DMA channel and heavily loads the CPU.
- */
-# if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-# define MMC_NICE_WAITING TRUE
-# endif
-
-/*===========================================================================*/
-/* SDC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Number of initialization attempts before rejecting the card.
- * @note Attempts are performed at 10mS intervals.
- */
-# if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-# define SDC_INIT_RETRY 100
-# endif
-
-/**
- * @brief Include support for MMC cards.
- * @note MMC support is not yet implemented so this option must be kept
- * at @p FALSE.
- */
-# if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-# define SDC_MMC_SUPPORT FALSE
-# endif
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- */
-# if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-# define SDC_NICE_WAITING TRUE
-# endif
-
-/**
- * @brief OCR initialization constant for V20 cards.
- */
-# if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR_V20 0x50FF8000U
-# endif
-
-/**
- * @brief OCR initialization constant for non-V20 cards.
- */
-# if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR 0x80100000U
-# endif
-
-/*===========================================================================*/
-/* SERIAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Default bit rate.
- * @details Configuration parameter, this is the baud rate selected for the
- * default configuration.
- */
-# if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-# define SERIAL_DEFAULT_BITRATE 38400
-# endif
-
-/**
- * @brief Serial buffers size.
- * @details Configuration parameter, you can change the depth of the queue
- * buffers depending on the requirements of your application.
- * @note The default is 16 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_BUFFERS_SIZE 16
-# endif
-
-/*===========================================================================*/
-/* SERIAL_USB driver related setting. */
-/*===========================================================================*/
-
-/**
- * @brief Serial over USB buffers size.
- * @details Configuration parameter, the buffer size must be a multiple of
- * the USB data endpoint maximum packet size.
- * @note The default is 256 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_SIZE 1
-# endif
-
-/**
- * @brief Serial over USB number of buffers.
- * @note The default is 2 buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_NUMBER 2
-# endif
-
-/*===========================================================================*/
-/* SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-# define SPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables circular transfers APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
-# define SPI_USE_CIRCULAR FALSE
-# endif
-
-/**
- * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define SPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/**
- * @brief Handling method for SPI CS line.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
-# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
-# endif
-
-/*===========================================================================*/
-/* UART driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-# define UART_USE_WAIT FALSE
-# endif
-
-/**
- * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define UART_USE_MUTUAL_EXCLUSION FALSE
-# endif
-
-/*===========================================================================*/
-/* USB driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-# define USB_USE_WAIT TRUE
-# endif
-
-/*===========================================================================*/
-/* WSPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__)
-# define WSPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define WSPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-#endif /* HALCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk530/led_matrix.c b/keyboards/spcgear/gk530/led_matrix.c
index 62d5d9650..7081aebea 100644
--- a/keyboards/spcgear/gk530/led_matrix.c
+++ b/keyboards/spcgear/gk530/led_matrix.c
@@ -1,9 +1,4 @@
-#include <string.h>
-#include "rgb.h"
#include "rgb_matrix.h"
-#include "rgb_matrix_types.h"
-#include "color.h"
-
/*
COLS key / led
PWM PWM00A - PWM21A (PWM15A unused)
diff --git a/keyboards/spcgear/gk530/mcuconf.h b/keyboards/spcgear/gk530/mcuconf.h
deleted file mode 100644
index 2cb5fd2a1..000000000
--- a/keyboards/spcgear/gk530/mcuconf.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef MCUCONF_H
-#define MCUCONF_H
-
-/*
- * SN32F24xx drivers configuration.
- * The following settings override the default settings present in
- * the various device driver implementation headers.
- * Note that the settings for each driver only have effect if the whole
- * driver is enabled in halconf.h.
- *
- * IRQ priorities:
- * 3...0 Lowest...Highest.
- *
- * DMA priorities:
- * 0...3 Lowest...Highest.
- */
-
-#define SN32F24xx_MCUCONF
-
-/*
- * HAL driver system settings.
- */
-
-/*
- * SN driver system settings.
- */
-#define SN32_CT_IRQ_PRIORITY 2
-#define SN32_CT_USE_TIMER 2
-
-#define SN32_HAS_GPIOA TRUE
-#define SN32_HAS_GPIOB TRUE
-#define SN32_HAS_GPIOC TRUE
-#define SN32_HAS_GPIOD TRUE
-
-/*
- * USB driver system settings.
- */
-#define SN32_USB_USE_USB1 TRUE
-#define SN32_USB_LOW_POWER_ON_SUSPEND TRUE
-#define STM32_USB_USB1_HP_IRQ_PRIORITY 13
-#define STM32_USB_USB1_LP_IRQ_PRIORITY 14
-
-#define CRT1_AREAS_NUMBER 1
-
-#define PLATFORM_USB_USE_USB1 TRUE
-
-/*
- * Timer driver system settings.
- */
-#define SN32_PWM_USE_TIM1 FALSE
-#define SN32_PWM_USE_TIM2 TRUE
-#define SN32_PWM_TIM1_IRQ_PRIORITY 3
-#define SN32_PWM_TIM2_IRQ_PRIORITY 3
-
-#define SYS_CLOCK_SETUP 1
-#define SYS0_CLKCFG_VAL 0
-#define AHB_PRESCALAR 0x2
-#define CLKOUT_SEL_VAL 0x0
-#define CLKOUT_PRESCALAR 0x0
-
-/*----------------------------------------------------------------------------
- DEFINES
- *----------------------------------------------------------------------------*/
-#define IHRC 0
-#define ILRC 1
-#define EHSXTAL 2
-#define ELSXTAL 3
-#define PLL 4
-
-/*----------------------------------------------------------------------------
- Define clocks
- *----------------------------------------------------------------------------*/
-#define __IHRC_FREQ (12000000UL)
-#define __ILRC_FREQ (32000UL)
-#define __ELS_XTAL_FREQ (32768UL)
-
-#if (SYS_CLOCK_SETUP)
-#define SYS0_PLLCTRL_VAL (PLL_ENABLE<<15) | (PLL_CLKIN<<12) | (PLL_FSEL<<8) | (PLL_PSEL<<5) | PLL_MSEL
-#endif
-
-// #endif /* _MCUCONF_H_ */
-
-#define PLATFORM_MCUCONF
-
-#endif /* MCUCONF_H */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk530/rules.mk b/keyboards/spcgear/gk530/rules.mk
index 8956036d9..821319258 100644
--- a/keyboards/spcgear/gk530/rules.mk
+++ b/keyboards/spcgear/gk530/rules.mk
@@ -3,39 +3,8 @@ SRC = matrix.c
SRC += led_matrix.c
SRC += config_led.c
-## chip/board settings
-# - the next two should match the directories in
-# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
-MCU_FAMILY = SN32
-MCU_SERIES = SN32F240
-
-# Linker script to use
-# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
-# or <this_dir>/ld/
-MCU_LDSCRIPT = SN32F240
-
-# Startup code to use
-# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
-MCU_STARTUP = sn32f24x
-
-# Board: it should exist either in <chibios>/os/hal/boards/
-# or <this_dir>/boards
-BOARD = SN_SN32F240
-
-# Cortex version
-MCU = cortex-m0
-
-# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
-ARMV = 6
-
-# BOOTLOADER = flash
-SN32_BOOTLOADER_ADDRESS = 0x1FFF0301
-
-OPT_DEFS = -O2
-
-# Options to pass to dfu-util when flashing
-# DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
-# DFU_SUFFIX_ARGS = -p DF11 -v 0483
+# MCU name
+MCU = SN32F248F
# Build Options
# comment out to disable the options.
diff --git a/keyboards/spcgear/gk540/boards/SN_SN32F240/board.c b/keyboards/spcgear/gk540/boards/SN_SN32F240/board.c
deleted file mode 100644
index a896aea21..000000000
--- a/keyboards/spcgear/gk540/boards/SN_SN32F240/board.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#include "hal.h"
-
-#if HAL_USE_PAL || defined(__DOXYGEN__)
-/**
- * @brief PAL setup.
- * @details Digital I/O ports static configuration as defined in @p board.h.
- * This variable is used by the HAL when initializing the PAL driver.
- */
-const PALConfig pal_default_config = {
- #if SN32_HAS_GPIOA
- {VAL_GPIOA_MODE},
- #endif
- #if SN32_HAS_GPIOB
- {VAL_GPIOB_MODE},
- #endif
- #if SN32_HAS_GPIOC
- {VAL_GPIOC_MODE},
- #endif
- #if SN32_HAS_GPIOD
- {VAL_GPIOD_MODE},
- #endif
-};
-#endif
-
-static int flag __attribute__((section(".flag"))) __attribute__((__used__)) = 0xAAAA5555;
-
-extern void enter_bootloader_mode_if_requested(void);
-
-/**
- * @brief Early initialization code.
- * @details This initialization must be performed just after stack setup
- * and before any other initialization.
- */
-void __early_init(void) {
- enter_bootloader_mode_if_requested();
- sn32_clock_init();
-}
-
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-// SN_GPIO0->MODE = 0xffff;
-// // setP0.0~P0.1, P0.6~P0.7, P0.10~P0.15 to input pull-up
-// SN_GPIO0->CFG = 0x000A0AA0;
-
-// // set P1.2~1.9, P1.12~P1.15 to input pull-up
-// SN_GPIO1->CFG = 0x00A0000A;
-
-// SN_GPIO2->MODE = 0xFFFF;
-// // set P2.4~P2.15 to input pull-up
-// SN_GPIO2->CFG = 0x000000AA;
-
-// // set P3.0~P3.1, P3.4~P3.8 to input pull-up
-// SN_GPIO3->CFG = 0xAAA800A0;
-
- // Set led pins to output
-// SN_GPIO2->CFG = 0xFFFF;
-// SN_GPIO2->DATA = 0x0; // Set low
-
- SN_SYS0->SWDCTRL_b.SWDDIS = 1; // Disable SWD
-} \ No newline at end of file
diff --git a/keyboards/spcgear/gk540/boards/SN_SN32F240/board.h b/keyboards/spcgear/gk540/boards/SN_SN32F240/board.h
deleted file mode 100644
index 99a5982ef..000000000
--- a/keyboards/spcgear/gk540/boards/SN_SN32F240/board.h
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef _BOARD_H_
-#define _BOARD_H_
-
-/*
- * Setup for Generic STM32_F303 Board
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_GENERIC_SN32_F240
-#define BOARD_NAME "SN32F240"
-
-/*
- * MCU type as defined in the ST header.
- */
-#define system_SN32F240
-
-/*
- * IO pins assignments.
- */
-#define GPIOA_PIN0 0U
-#define GPIOA_PIN1 1U
-#define GPIOA_PIN2 2U
-#define GPIOA_PIN3 3U
-#define GPIOA_PIN4 4U
-#define GPIOA_PIN5 5U
-#define GPIOA_PIN6 6U
-#define GPIOA_PIN7 7U
-#define GPIOA_PIN8 8U
-#define GPIOA_PIN9 9U
-#define GPIOA_PIN10 10U
-#define GPIOA_PIN11 11U
-#define GPIOA_PIN12 12U
-#define GPIOA_PIN13 13U
-#define GPIOA_PIN14 14U
-#define GPIOA_PIN15 15U
-
-#define GPIOB_PIN0 0U
-#define GPIOB_PIN1 1U
-#define GPIOB_PIN2 2U
-#define GPIOB_PIN3 3U
-#define GPIOB_PIN4 4U
-#define GPIOB_PIN5 5U
-#define GPIOB_PIN6 6U
-#define GPIOB_PIN7 7U
-#define GPIOB_PIN8 8U
-#define GPIOB_PIN9 9U
-#define GPIOB_PIN10 10U
-#define GPIOB_PIN11 11U
-#define GPIOB_PIN12 12U
-#define GPIOB_PIN13 13U
-#define GPIOB_PIN14 14U
-#define GPIOB_PIN15 15U
-
-#define GPIOC_PIN0 0U
-#define GPIOC_PIN1 1U
-#define GPIOC_PIN2 2U
-#define GPIOC_PIN3 3U
-#define GPIOC_PIN4 4U
-#define GPIOC_PIN5 5U
-#define GPIOC_PIN6 6U
-#define GPIOC_PIN7 7U
-#define GPIOC_PIN8 8U
-#define GPIOC_PIN9 9U
-#define GPIOC_PIN10 10U
-#define GPIOC_PIN11 11U
-#define GPIOC_PIN12 12U
-#define GPIOC_PIN13 13U
-#define GPIOC_PIN14 14U
-#define GPIOC_PIN15 15U
-
-// #define GPIOD_PIN0 0U
-// #define GPIOD_PIN1 1U
-// #define GPIOD_PIN2 2U
-#define GPIOD_PIN3 3U
-#define GPIOD_PIN4 4U
-#define GPIOD_PIN5 5U
-#define GPIOD_PIN6 6U
-#define GPIOD_PIN7 7U
-#define GPIOD_PIN8 8U
-#define GPIOD_PIN9 9U
-#define GPIOD_PIN10 10U
-#define GPIOD_PIN11 11U
-// #define GPIOD_PIN12 12U
-// #define GPIOD_PIN13 13U
-// #define GPIOD_PIN14 14U
-// #define GPIOD_PIN15 15U
-
-
-/*
- * IO lines assignments.
- */
-// #define LINE_L3GD20_SDI PAL_LINE(GPIOA, 7U)
-// #define LINE_USB_DM PAL_LINE(GPIOA, 11U)
-// #define LINE_USB_DP PAL_LINE(GPIOA, 12U)
-#define LINE_SWDIO PAL_LINE(GPIOD, 5U)
-#define LINE_SWCLK PAL_LINE(GPIOD, 6U)
-
-// #define LINE_PINB8 PAL_LINE(GPIOB, 8U)
-// #define LINE_PINB9 PAL_LINE(GPIOB, 9U)
-
-#define LINE_CAPS_LOCK PAL_LINE(GPIOC, 8U)
-
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the SN32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n)))
-#define PIN_MODE_OUTPUT(n) (1U << ((n)))
-#define PIN_MODE_PULLUP(n) (0U << ((n*2)))
-#define PIN_MODE_SCHMITT_EN(n) (10U << ((n*2)))
-#define PIN_MODE_SCHMITT_DIS(n) (11U << ((n*2)))
-
-/*
- * GPIOA setup:
- *
- * PA0 - PIN0 (input pullup).
- * PA1 - PIN1 (input pullup).
- * PA2 - PIN2 (input pullup).
- * PA3 - PIN3 (input pullup).
- * PA4 - PIN4 (input pullup).
- * PA5 - PIN5 (input pullup).
- * PA6 - PIN6 (input pullup).
- * PA7 - PIN7 (input pullup).
- * PA8 - PIN8 (input pullup).
- * PA9 - PIN9 (input pullup).
- * PA11 - PIN10 (input pullup).
- * PA11 - PIN11 (input pullup).
- * PA12 - PIN12 (input pullup).
- * PA13 - PIN13 (input pullup).
- * PA14 - PIN14 (input pullup).
- * PA15 - PIN15 (input pullup).
- */
-#define VAL_GPIOA_MODE (PIN_MODE_INPUT(GPIOA_PIN0) | PIN_MODE_INPUT(GPIOA_PIN1) | PIN_MODE_INPUT(GPIOA_PIN2) | PIN_MODE_INPUT(GPIOA_PIN3) | PIN_MODE_INPUT(GPIOA_PIN4) | PIN_MODE_INPUT(GPIOA_PIN5) | PIN_MODE_INPUT(GPIOA_PIN6) | PIN_MODE_INPUT(GPIOA_PIN7) | PIN_MODE_INPUT(GPIOA_PIN8) | PIN_MODE_INPUT(GPIOA_PIN9) | PIN_MODE_INPUT(GPIOA_PIN10) | PIN_MODE_INPUT(GPIOA_PIN11) | PIN_MODE_INPUT(GPIOA_PIN12) | PIN_MODE_INPUT(GPIOA_PIN13) | PIN_MODE_INPUT(GPIOA_PIN14) | PIN_MODE_INPUT(GPIOA_PIN15))
-
-/*
- * GPIOB setup:
- *
- * PB0 - PIN0 (input pullup).
- * PB1 - PIN1 (input pullup).
- * PB2 - PIN2 (input pullup).
- * PB3 - PIN3 (input pullup).
- * PB4 - PIN4 (input pullup).
- * PB5 - PIN5 (input pullup).
- * PB6 - PIN6 (input pullup).
- * PB7 - PIN7 (input pullup).
- * PB8 - PIN8 (input pullup).
- * PB9 - PIN9 (input pullup).
- * PB10 - PIN10 (input pullup).
- * PB11 - PIN11 (input pullup).
- * PB12 - PIN12 (input pullup).
- * PB13 - PIN13 (input pullup).
- * PB14 - PIN14 (input pullup).
- * PB15 - PIN15 (input pullup).
- */
-#define VAL_GPIOB_MODE (PIN_MODE_INPUT(GPIOB_PIN0) | PIN_MODE_INPUT(GPIOB_PIN1) | PIN_MODE_INPUT(GPIOB_PIN2) | PIN_MODE_INPUT(GPIOB_PIN3) | PIN_MODE_INPUT(GPIOB_PIN4) | PIN_MODE_INPUT(GPIOB_PIN5) | PIN_MODE_INPUT(GPIOB_PIN6) | PIN_MODE_OUTPUT(GPIOB_PIN7) | PIN_MODE_INPUT(GPIOB_PIN8) | PIN_MODE_INPUT(GPIOB_PIN9) | PIN_MODE_INPUT(GPIOB_PIN10) | PIN_MODE_INPUT(GPIOB_PIN11) | PIN_MODE_INPUT(GPIOB_PIN12) | PIN_MODE_INPUT(GPIOB_PIN13) | PIN_MODE_INPUT(GPIOB_PIN14) | PIN_MODE_INPUT(GPIOB_PIN15))
-/*
- * GPIOC setup:
- *
- * PC0 - PIN0 (input pullup).
- * PC1 - PIN1 (input pullup).
- * PC2 - PIN2 (input pullup).
- * PC3 - PIN3 (input pullup).
- * PC4 - PIN4 (input pullup).
- * PC5 - PIN5 (input pullup).
- * PC6 - PIN6 (input pullup).
- * PC7 - PIN7 (input pullup).
- * PC8 - PIN8 (input pullup).
- * PC9 - PIN9 (input pullup).
- * PC10 - PIN10 (input pullup).
- * PC11 - PIN11 (input pullup).
- * PC12 - PIN12 (input pullup).
- * PC13 - PIN13 (input pullup).
- * PC14 - PIN14 (input pullup).
- * PC15 - PIN15 (input pullup).
- */
-#define VAL_GPIOC_MODE (PIN_MODE_INPUT(GPIOC_PIN0) | PIN_MODE_INPUT(GPIOC_PIN1) | PIN_MODE_INPUT(GPIOC_PIN2) | PIN_MODE_INPUT(GPIOC_PIN3) | PIN_MODE_INPUT(GPIOC_PIN4) | PIN_MODE_INPUT(GPIOC_PIN5) | PIN_MODE_INPUT(GPIOC_PIN6) | PIN_MODE_INPUT(GPIOC_PIN7) | PIN_MODE_INPUT(GPIOC_PIN8) | PIN_MODE_INPUT(GPIOC_PIN9) | PIN_MODE_INPUT(GPIOC_PIN10) | PIN_MODE_INPUT(GPIOC_PIN11) | PIN_MODE_INPUT(GPIOC_PIN12) | PIN_MODE_INPUT(GPIOC_PIN13) | PIN_MODE_INPUT(GPIOC_PIN14) | PIN_MODE_INPUT(GPIOC_PIN15))
-
-/*
- * GPIOD setup:
- *
- * PD0 - PIN0 (input pullup).
- * PD1 - PIN1 (input pullup).
- * PD2 - PIN2 (input pullup).
- * PD3 - PIN3 (input pullup).
- * PD4 - PIN4 (input pullup).
- * PD5 - PIN5 (input pullup).
- * PD6 - PIN6 (input pullup).
- * PD7 - PIN7 (input pullup).
- * PD8 - PIN8 (input pullup).
- * PD9 - PIN9 (input pullup).
- * PD11 - PIN10 (input pullup).
- * PD11 - PIN11 (input pullup).
- * PD12 - PIN12 (input pullup).
- * PD13 - PIN13 (input pullup).
- * PD14 - PIN14 (input pullup).
- * PD15 - PIN15 (input pullup).
- */
-#define VAL_GPIOD_MODE (PIN_MODE_INPUT(GPIOD_PIN3) | PIN_MODE_INPUT(GPIOD_PIN4) | PIN_MODE_INPUT(GPIOD_PIN5) | PIN_MODE_INPUT(GPIOD_PIN6) | PIN_MODE_INPUT(GPIOD_PIN7) | PIN_MODE_INPUT(GPIOD_PIN8) | PIN_MODE_INPUT(GPIOD_PIN9) | PIN_MODE_INPUT(GPIOD_PIN10) | PIN_MODE_INPUT(GPIOD_PIN11))
-
-#if !defined(_FROM_ASM_)
-# ifdef __cplusplus
-extern "C" {
-# endif
-void boardInit(void);
-# ifdef __cplusplus
-}
-# endif
-#endif /* _FROM_ASM_ */
-
-#endif /* _BOARD_H_ */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk540/boards/SN_SN32F240/board.mk b/keyboards/spcgear/gk540/boards/SN_SN32F240/board.mk
deleted file mode 100644
index e9bfc74b6..000000000
--- a/keyboards/spcgear/gk540/boards/SN_SN32F240/board.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# List of all the board related files.
-BOARDSRC = $(BOARD_PATH)/boards/SN_SN32F240/board.c
-
-# Required include directories
-BOARDINC = $(BOARD_PATH)/boards/SN_SN32F240 \ No newline at end of file
diff --git a/keyboards/spcgear/gk540/chconf.h b/keyboards/spcgear/gk540/chconf.h
deleted file mode 100644
index 2b863e582..000000000
--- a/keyboards/spcgear/gk540/chconf.h
+++ /dev/null
@@ -1,700 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file rt/templates/chconf.h
- * @brief Configuration file template.
- * @details A copy of this file must be placed in each project directory, it
- * contains the application specific kernel settings.
- *
- * @addtogroup config
- * @details Kernel related settings and hooks.
- * @{
- */
-
-#ifndef CHCONF_H
-# define CHCONF_H
-
-# define _CHIBIOS_RT_CONF_
-# define _CHIBIOS_RT_CONF_VER_6_0_
-
-/*===========================================================================*/
-/**
- * @name System timers settings
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System time counter resolution.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_ST_RESOLUTION)
-# define CH_CFG_ST_RESOLUTION 32
-# endif
-
-/**
- * @brief System tick frequency.
- * @details Frequency of the system timer that drives the system ticks. This
- * setting also defines the system tick time unit.
- */
-# if !defined(CH_CFG_ST_FREQUENCY)
-# define CH_CFG_ST_FREQUENCY 10000
-# endif
-
-/**
- * @brief Time intervals data size.
- * @note Allowed values are 16, 32 or 64 bits.
- */
-# if !defined(CH_CFG_INTERVALS_SIZE)
-# define CH_CFG_INTERVALS_SIZE 32
-# endif
-
-/**
- * @brief Time types data size.
- * @note Allowed values are 16 or 32 bits.
- */
-# if !defined(CH_CFG_TIME_TYPES_SIZE)
-# define CH_CFG_TIME_TYPES_SIZE 32
-# endif
-
-/**
- * @brief Time delta constant for the tick-less mode.
- * @note If this value is zero then the system uses the classic
- * periodic tick. This value represents the minimum number
- * of ticks that is safe to specify in a timeout directive.
- * The value one is not valid, timeouts are rounded up to
- * this value.
- */
-# if !defined(CH_CFG_ST_TIMEDELTA)
-# define CH_CFG_ST_TIMEDELTA 0
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel parameters and options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Round robin interval.
- * @details This constant is the number of system ticks allowed for the
- * threads before preemption occurs. Setting this value to zero
- * disables the preemption for threads with equal priority and the
- * round robin becomes cooperative. Note that higher priority
- * threads can still preempt, the kernel is always preemptive.
- * @note Disabling the round robin preemption makes the kernel more compact
- * and generally faster.
- * @note The round robin preemption is not supported in tickless mode and
- * must be set to zero in that case.
- */
-# if !defined(CH_CFG_TIME_QUANTUM)
-# define CH_CFG_TIME_QUANTUM 0
-# endif
-
-/**
- * @brief Managed RAM size.
- * @details Size of the RAM area to be managed by the OS. If set to zero
- * then the whole available RAM is used. The core memory is made
- * available to the heap allocator and/or can be used directly through
- * the simplified core memory allocator.
- *
- * @note In order to let the OS manage the whole RAM the linker script must
- * provide the @p __heap_base__ and @p __heap_end__ symbols.
- * @note Requires @p CH_CFG_USE_MEMCORE.
- */
-# if !defined(CH_CFG_MEMCORE_SIZE)
-# define CH_CFG_MEMCORE_SIZE 0
-# endif
-
-/**
- * @brief Idle thread automatic spawn suppression.
- * @details When this option is activated the function @p chSysInit()
- * does not spawn the idle thread. The application @p main()
- * function becomes the idle thread and must implement an
- * infinite loop.
- */
-# if !defined(CH_CFG_NO_IDLE_THREAD)
-# define CH_CFG_NO_IDLE_THREAD FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Performance options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief OS optimization.
- * @details If enabled then time efficient rather than space efficient code
- * is used when two possible implementations exist.
- *
- * @note This is not related to the compiler optimization options.
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_OPTIMIZE_SPEED)
-# define CH_CFG_OPTIMIZE_SPEED FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Subsystem options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Time Measurement APIs.
- * @details If enabled then the time measurement APIs are included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_TM)
-# define CH_CFG_USE_TM FALSE
-# endif
-
-/**
- * @brief Threads registry APIs.
- * @details If enabled then the registry APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_REGISTRY)
-# define CH_CFG_USE_REGISTRY TRUE
-# endif
-
-/**
- * @brief Threads synchronization APIs.
- * @details If enabled then the @p chThdWait() function is included in
- * the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_WAITEXIT)
-# define CH_CFG_USE_WAITEXIT TRUE
-# endif
-
-/**
- * @brief Semaphores APIs.
- * @details If enabled then the Semaphores APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES)
-# define CH_CFG_USE_SEMAPHORES TRUE
-# endif
-
-/**
- * @brief Semaphores queuing mode.
- * @details If enabled then the threads are enqueued on semaphores by
- * priority rather than in FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY)
-# define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mutexes APIs.
- * @details If enabled then the mutexes APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MUTEXES)
-# define CH_CFG_USE_MUTEXES TRUE
-# endif
-
-/**
- * @brief Enables recursive behavior on mutexes.
- * @note Recursive mutexes are heavier and have an increased
- * memory footprint.
- *
- * @note The default is @p FALSE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_MUTEXES_RECURSIVE)
-# define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
-# endif
-
-/**
- * @brief Conditional Variables APIs.
- * @details If enabled then the conditional variables APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MUTEXES.
- */
-# if !defined(CH_CFG_USE_CONDVARS)
-# define CH_CFG_USE_CONDVARS TRUE
-# endif
-
-/**
- * @brief Conditional Variables APIs with timeout.
- * @details If enabled then the conditional variables APIs with timeout
- * specification are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_CONDVARS.
- */
-# if !defined(CH_CFG_USE_CONDVARS_TIMEOUT)
-# define CH_CFG_USE_CONDVARS_TIMEOUT FALSE
-# endif
-
-/**
- * @brief Events Flags APIs.
- * @details If enabled then the event flags APIs are included in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_EVENTS)
-# define CH_CFG_USE_EVENTS TRUE
-# endif
-
-/**
- * @brief Events Flags APIs with timeout.
- * @details If enabled then the events APIs with timeout specification
- * are included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_EVENTS.
- */
-# if !defined(CH_CFG_USE_EVENTS_TIMEOUT)
-# define CH_CFG_USE_EVENTS_TIMEOUT TRUE
-# endif
-
-/**
- * @brief Synchronous Messages APIs.
- * @details If enabled then the synchronous messages APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MESSAGES)
-# define CH_CFG_USE_MESSAGES TRUE
-# endif
-
-/**
- * @brief Synchronous Messages queuing mode.
- * @details If enabled then messages are served by priority rather than in
- * FIFO order.
- *
- * @note The default is @p FALSE. Enable this if you have special
- * requirements.
- * @note Requires @p CH_CFG_USE_MESSAGES.
- */
-# if !defined(CH_CFG_USE_MESSAGES_PRIORITY)
-# define CH_CFG_USE_MESSAGES_PRIORITY FALSE
-# endif
-
-/**
- * @brief Mailboxes APIs.
- * @details If enabled then the asynchronous messages (mailboxes) APIs are
- * included in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_SEMAPHORES.
- */
-# if !defined(CH_CFG_USE_MAILBOXES)
-# define CH_CFG_USE_MAILBOXES TRUE
-# endif
-
-/**
- * @brief Core Memory Manager APIs.
- * @details If enabled then the core memory manager APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMCORE)
-# define CH_CFG_USE_MEMCORE FALSE
-# endif
-
-/**
- * @brief Heap Allocator APIs.
- * @details If enabled then the memory heap allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or
- * @p CH_CFG_USE_SEMAPHORES.
- * @note Mutexes are recommended.
- */
-# if !defined(CH_CFG_USE_HEAP)
-# define CH_CFG_USE_HEAP FALSE
-# endif
-
-/**
- * @brief Memory Pools Allocator APIs.
- * @details If enabled then the memory pools allocator APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_MEMPOOLS)
-# define CH_CFG_USE_MEMPOOLS FALSE
-# endif
-
-/**
- * @brief Objects FIFOs APIs.
- * @details If enabled then the objects FIFOs APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_OBJ_FIFOS)
-# define CH_CFG_USE_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Pipes APIs.
- * @details If enabled then the pipes APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- */
-# if !defined(CH_CFG_USE_PIPES)
-# define CH_CFG_USE_PIPES FALSE
-# endif
-
-/**
- * @brief Dynamic Threads APIs.
- * @details If enabled then the dynamic threads creation APIs are included
- * in the kernel.
- *
- * @note The default is @p TRUE.
- * @note Requires @p CH_CFG_USE_WAITEXIT.
- * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
- */
-# if !defined(CH_CFG_USE_DYNAMIC)
-# define CH_CFG_USE_DYNAMIC FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Objects factory options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Objects Factory APIs.
- * @details If enabled then the objects factory APIs are included in the
- * kernel.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_CFG_USE_FACTORY)
-# define CH_CFG_USE_FACTORY FALSE
-# endif
-
-/**
- * @brief Maximum length for object names.
- * @details If the specified length is zero then the name is stored by
- * pointer but this could have unintended side effects.
- */
-# if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
-# define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8
-# endif
-
-/**
- * @brief Enables the registry of generic objects.
- */
-# if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
-# define CH_CFG_FACTORY_OBJECTS_REGISTRY FALSE
-# endif
-
-/**
- * @brief Enables factory for generic buffers.
- */
-# if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
-# define CH_CFG_FACTORY_GENERIC_BUFFERS FALSE
-# endif
-
-/**
- * @brief Enables factory for semaphores.
- */
-# if !defined(CH_CFG_FACTORY_SEMAPHORES)
-# define CH_CFG_FACTORY_SEMAPHORES FALSE
-# endif
-
-/**
- * @brief Enables factory for mailboxes.
- */
-# if !defined(CH_CFG_FACTORY_MAILBOXES)
-# define CH_CFG_FACTORY_MAILBOXES FALSE
-# endif
-
-/**
- * @brief Enables factory for objects FIFOs.
- */
-# if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
-# define CH_CFG_FACTORY_OBJ_FIFOS FALSE
-# endif
-
-/**
- * @brief Enables factory for Pipes.
- */
-# if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__)
-# define CH_CFG_FACTORY_PIPES FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Debug options
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief Debug option, kernel statistics.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_STATISTICS)
-# define CH_DBG_STATISTICS FALSE
-# endif
-
-/**
- * @brief Debug option, system state check.
- * @details If enabled the correct call protocol for system APIs is checked
- * at runtime.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_SYSTEM_STATE_CHECK)
-# define CH_DBG_SYSTEM_STATE_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, parameters checks.
- * @details If enabled then the checks on the API functions input
- * parameters are activated.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_CHECKS)
-# define CH_DBG_ENABLE_CHECKS FALSE
-# endif
-
-/**
- * @brief Debug option, consistency checks.
- * @details If enabled then all the assertions in the kernel code are
- * activated. This includes consistency checks inside the kernel,
- * runtime anomalies and port-defined checks.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_ENABLE_ASSERTS)
-# define CH_DBG_ENABLE_ASSERTS FALSE
-# endif
-
-/**
- * @brief Debug option, trace buffer.
- * @details If enabled then the trace buffer is activated.
- *
- * @note The default is @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_MASK)
-# define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
-# endif
-
-/**
- * @brief Trace buffer entries.
- * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is
- * different from @p CH_DBG_TRACE_MASK_DISABLED.
- */
-# if !defined(CH_DBG_TRACE_BUFFER_SIZE)
-# define CH_DBG_TRACE_BUFFER_SIZE 128
-# endif
-
-/**
- * @brief Debug option, stack checks.
- * @details If enabled then a runtime stack check is performed.
- *
- * @note The default is @p FALSE.
- * @note The stack check is performed in a architecture/port dependent way.
- * It may not be implemented or some ports.
- * @note The default failure mode is to halt the system with the global
- * @p panic_msg variable set to @p NULL.
- */
-# if !defined(CH_DBG_ENABLE_STACK_CHECK)
-# define CH_DBG_ENABLE_STACK_CHECK FALSE
-# endif
-
-/**
- * @brief Debug option, stacks initialization.
- * @details If enabled then the threads working area is filled with a byte
- * value when a thread is created. This can be useful for the
- * runtime measurement of the used stack.
- *
- * @note The default is @p FALSE.
- */
-# if !defined(CH_DBG_FILL_THREADS)
-# define CH_DBG_FILL_THREADS FALSE
-# endif
-
-/**
- * @brief Debug option, threads profiling.
- * @details If enabled then a field is added to the @p thread_t structure that
- * counts the system ticks occurred while executing the thread.
- *
- * @note The default is @p FALSE.
- * @note This debug option is not currently compatible with the
- * tickless mode.
- */
-# if !defined(CH_DBG_THREADS_PROFILING)
-# define CH_DBG_THREADS_PROFILING FALSE
-# endif
-
-/** @} */
-
-/*===========================================================================*/
-/**
- * @name Kernel hooks
- * @{
- */
-/*===========================================================================*/
-
-/**
- * @brief System structure extension.
- * @details User fields added to the end of the @p ch_system_t structure.
- */
-# define CH_CFG_SYSTEM_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief System initialization hook.
- * @details User initialization code added to the @p chSysInit() function
- * just before interrupts are enabled globally.
- */
-# define CH_CFG_SYSTEM_INIT_HOOK() \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads descriptor structure extension.
- * @details User fields added to the end of the @p thread_t structure.
- */
-# define CH_CFG_THREAD_EXTRA_FIELDS /* Add threads custom fields here.*/
-
-/**
- * @brief Threads initialization hook.
- * @details User initialization code added to the @p _thread_init() function.
- *
- * @note It is invoked from within @p _thread_init() and implicitly from all
- * the threads creation APIs.
- */
-# define CH_CFG_THREAD_INIT_HOOK(tp) \
- { /* Add threads initialization code here.*/ }
-
-/**
- * @brief Threads finalization hook.
- * @details User finalization code added to the @p chThdExit() API.
- */
-# define CH_CFG_THREAD_EXIT_HOOK(tp) \
- { /* Add threads finalization code here.*/ }
-
-/**
- * @brief Context switch hook.
- * @details This hook is invoked just before switching between threads.
- */
-# define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) \
- { /* Context switch code here.*/ }
-
-/**
- * @brief ISR enter hook.
- */
-# define CH_CFG_IRQ_PROLOGUE_HOOK() \
- { /* IRQ prologue code here.*/ }
-
-/**
- * @brief ISR exit hook.
- */
-# define CH_CFG_IRQ_EPILOGUE_HOOK() \
- { /* IRQ epilogue code here.*/ }
-
-/**
- * @brief Idle thread enter hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to activate a power saving mode.
- */
-# define CH_CFG_IDLE_ENTER_HOOK() \
- { /* Idle-enter code here.*/ }
-
-/**
- * @brief Idle thread leave hook.
- * @note This hook is invoked within a critical zone, no OS functions
- * should be invoked from here.
- * @note This macro can be used to deactivate a power saving mode.
- */
-# define CH_CFG_IDLE_LEAVE_HOOK() \
- { /* Idle-leave code here.*/ }
-
-/**
- * @brief Idle Loop hook.
- * @details This hook is continuously invoked by the idle thread loop.
- */
-# define CH_CFG_IDLE_LOOP_HOOK() \
- { /* Idle loop code here.*/ }
-
-/**
- * @brief System tick event hook.
- * @details This hook is invoked in the system tick handler immediately
- * after processing the virtual timers queue.
- */
-# define CH_CFG_SYSTEM_TICK_HOOK() \
- { /* System tick event code here.*/ }
-
-/**
- * @brief System halt hook.
- * @details This hook is invoked in case to a system halting error before
- * the system is halted.
- */
-# define CH_CFG_SYSTEM_HALT_HOOK(reason) \
- { /* System halt code here.*/ }
-
-/**
- * @brief Trace hook.
- * @details This hook is invoked each time a new record is written in the
- * trace buffer.
- */
-# define CH_CFG_TRACE_HOOK(tep) \
- { /* Trace code here.*/ }
-
-/** @} */
-
-/*===========================================================================*/
-/* Port-specific settings (override port settings defaulted in chcore.h). */
-/*===========================================================================*/
-
-#endif /* CHCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk540/halconf.h b/keyboards/spcgear/gk540/halconf.h
deleted file mode 100644
index 8c25963fc..000000000
--- a/keyboards/spcgear/gk540/halconf.h
+++ /dev/null
@@ -1,524 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file templates/halconf.h
- * @brief HAL configuration header.
- * @details HAL configuration file, this file allows to enable or disable the
- * various device drivers from your application. You may also use
- * this file in order to override the device drivers default settings.
- *
- * @addtogroup HAL_CONF
- * @{
- */
-
-#ifndef HALCONF_H
-# define HALCONF_H
-
-# define _CHIBIOS_HAL_CONF_
-# define _CHIBIOS_HAL_CONF_VER_7_0_
-
-# include "mcuconf.h"
-
-/**
- * @brief Enables the PAL subsystem.
- */
-# if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-# define HAL_USE_PAL TRUE
-# endif
-
-/**
- * @brief Enables the ADC subsystem.
- */
-# if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-# define HAL_USE_ADC FALSE
-# endif
-
-/**
- * @brief Enables the CAN subsystem.
- */
-# if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-# define HAL_USE_CAN FALSE
-# endif
-
-/**
- * @brief Enables the cryptographic subsystem.
- */
-# if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-# define HAL_USE_CRY FALSE
-# endif
-
-/**
- * @brief Enables the DAC subsystem.
- */
-# if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-# define HAL_USE_DAC FALSE
-# endif
-
-/**
- * @brief Enables the GPT subsystem.
- */
-# if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-# define HAL_USE_GPT FALSE
-# endif
-
-/**
- * @brief Enables the I2C subsystem.
- */
-# if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-# define HAL_USE_I2C FALSE
-# endif
-
-/**
- * @brief Enables the I2S subsystem.
- */
-# if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-# define HAL_USE_I2S FALSE
-# endif
-
-/**
- * @brief Enables the ICU subsystem.
- */
-# if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-# define HAL_USE_ICU FALSE
-# endif
-
-/**
- * @brief Enables the MAC subsystem.
- */
-# if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-# define HAL_USE_MAC FALSE
-# endif
-
-/**
- * @brief Enables the MMC_SPI subsystem.
- */
-# if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_MMC_SPI FALSE
-# endif
-
-/**
- * @brief Enables the PWM subsystem.
- */
-# if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-# define HAL_USE_PWM FALSE
-# endif
-
-/**
- * @brief Enables the RTC subsystem.
- */
-# if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-# define HAL_USE_RTC FALSE
-# endif
-
-/**
- * @brief Enables the SDC subsystem.
- */
-# if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-# define HAL_USE_SDC FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL subsystem.
- */
-# if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL FALSE
-# endif
-
-/**
- * @brief Enables the SERIAL over USB subsystem.
- */
-# if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-# define HAL_USE_SERIAL_USB TRUE
-# endif
-
-/**
- * @brief Enables the SIO subsystem.
- */
-# if !defined(HAL_USE_SIO) || defined(__DOXYGEN__)
-# define HAL_USE_SIO FALSE
-# endif
-
-/**
- * @brief Enables the SPI subsystem.
- */
-# if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-# define HAL_USE_SPI FALSE
-# endif
-
-/**
- * @brief Enables the TRNG subsystem.
- */
-# if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__)
-# define HAL_USE_TRNG FALSE
-# endif
-
-/**
- * @brief Enables the UART subsystem.
- */
-# if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-# define HAL_USE_UART FALSE
-# endif
-
-/**
- * @brief Enables the USB subsystem.
- */
-# if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-# define HAL_USE_USB TRUE
-# endif
-
-/**
- * @brief Enables the WDG subsystem.
- */
-# if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-# define HAL_USE_WDG FALSE
-# endif
-
-/**
- * @brief Enables the WSPI subsystem.
- */
-# if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__)
-# define HAL_USE_WSPI FALSE
-# endif
-
-/*===========================================================================*/
-/* PAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define PAL_USE_CALLBACKS FALSE
-# endif
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-# define PAL_USE_WAIT FALSE
-# endif
-
-/*===========================================================================*/
-/* ADC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-# define ADC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define ADC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* CAN driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Sleep mode related APIs inclusion switch.
- */
-# if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-# define CAN_USE_SLEEP_MODE TRUE
-# endif
-
-/**
- * @brief Enforces the driver to use direct callbacks rather than OSAL events.
- */
-# if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
-# define CAN_ENFORCE_USE_CALLBACKS FALSE
-# endif
-
-/*===========================================================================*/
-/* CRY driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the SW fall-back of the cryptographic driver.
- * @details When enabled, this option, activates a fall-back software
- * implementation for algorithms not supported by the underlying
- * hardware.
- * @note Fall-back implementations may not be present for all algorithms.
- */
-# if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_USE_FALLBACK FALSE
-# endif
-
-/**
- * @brief Makes the driver forcibly use the fall-back implementations.
- */
-# if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
-# define HAL_CRY_ENFORCE_FALLBACK FALSE
-# endif
-
-/*===========================================================================*/
-/* DAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
-# define DAC_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define DAC_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* I2C driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the mutual exclusion APIs on the I2C bus.
- */
-# if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define I2C_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/*===========================================================================*/
-/* MAC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables the zero-copy API.
- */
-# if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-# define MAC_USE_ZERO_COPY FALSE
-# endif
-
-/**
- * @brief Enables an event sources for incoming packets.
- */
-# if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-# define MAC_USE_EVENTS TRUE
-# endif
-
-/*===========================================================================*/
-/* MMC_SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- * This option is recommended also if the SPI driver does not
- * use a DMA channel and heavily loads the CPU.
- */
-# if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-# define MMC_NICE_WAITING TRUE
-# endif
-
-/*===========================================================================*/
-/* SDC driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Number of initialization attempts before rejecting the card.
- * @note Attempts are performed at 10mS intervals.
- */
-# if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-# define SDC_INIT_RETRY 100
-# endif
-
-/**
- * @brief Include support for MMC cards.
- * @note MMC support is not yet implemented so this option must be kept
- * at @p FALSE.
- */
-# if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-# define SDC_MMC_SUPPORT FALSE
-# endif
-
-/**
- * @brief Delays insertions.
- * @details If enabled this options inserts delays into the MMC waiting
- * routines releasing some extra CPU time for the threads with
- * lower priority, this may slow down the driver a bit however.
- */
-# if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-# define SDC_NICE_WAITING TRUE
-# endif
-
-/**
- * @brief OCR initialization constant for V20 cards.
- */
-# if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR_V20 0x50FF8000U
-# endif
-
-/**
- * @brief OCR initialization constant for non-V20 cards.
- */
-# if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
-# define SDC_INIT_OCR 0x80100000U
-# endif
-
-/*===========================================================================*/
-/* SERIAL driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Default bit rate.
- * @details Configuration parameter, this is the baud rate selected for the
- * default configuration.
- */
-# if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-# define SERIAL_DEFAULT_BITRATE 38400
-# endif
-
-/**
- * @brief Serial buffers size.
- * @details Configuration parameter, you can change the depth of the queue
- * buffers depending on the requirements of your application.
- * @note The default is 16 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_BUFFERS_SIZE 16
-# endif
-
-/*===========================================================================*/
-/* SERIAL_USB driver related setting. */
-/*===========================================================================*/
-
-/**
- * @brief Serial over USB buffers size.
- * @details Configuration parameter, the buffer size must be a multiple of
- * the USB data endpoint maximum packet size.
- * @note The default is 256 bytes for both the transmission and receive
- * buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_SIZE 1
-# endif
-
-/**
- * @brief Serial over USB number of buffers.
- * @note The default is 2 buffers.
- */
-# if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-# define SERIAL_USB_BUFFERS_NUMBER 2
-# endif
-
-/*===========================================================================*/
-/* SPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-# define SPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables circular transfers APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
-# define SPI_USE_CIRCULAR FALSE
-# endif
-
-/**
- * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define SPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-/**
- * @brief Handling method for SPI CS line.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
-# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
-# endif
-
-/*===========================================================================*/
-/* UART driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-# define UART_USE_WAIT FALSE
-# endif
-
-/**
- * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define UART_USE_MUTUAL_EXCLUSION FALSE
-# endif
-
-/*===========================================================================*/
-/* USB driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-# define USB_USE_WAIT TRUE
-# endif
-
-/*===========================================================================*/
-/* WSPI driver related settings. */
-/*===========================================================================*/
-
-/**
- * @brief Enables synchronous APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__)
-# define WSPI_USE_WAIT TRUE
-# endif
-
-/**
- * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs.
- * @note Disabling this option saves both code and data space.
- */
-# if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-# define WSPI_USE_MUTUAL_EXCLUSION TRUE
-# endif
-
-#endif /* HALCONF_H */
-
-/** @} */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk540/led_matrix.c b/keyboards/spcgear/gk540/led_matrix.c
index daae2680f..55c859732 100644
--- a/keyboards/spcgear/gk540/led_matrix.c
+++ b/keyboards/spcgear/gk540/led_matrix.c
@@ -1,9 +1,4 @@
-#include <string.h>
-#include "rgb.h"
#include "rgb_matrix.h"
-#include "rgb_matrix_types.h"
-#include "color.h"
-
/*
COLS key / led
PWM PWM00A - PWM21A (PWM15A unused)
diff --git a/keyboards/spcgear/gk540/mcuconf.h b/keyboards/spcgear/gk540/mcuconf.h
deleted file mode 100644
index 2cb5fd2a1..000000000
--- a/keyboards/spcgear/gk540/mcuconf.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#ifndef MCUCONF_H
-#define MCUCONF_H
-
-/*
- * SN32F24xx drivers configuration.
- * The following settings override the default settings present in
- * the various device driver implementation headers.
- * Note that the settings for each driver only have effect if the whole
- * driver is enabled in halconf.h.
- *
- * IRQ priorities:
- * 3...0 Lowest...Highest.
- *
- * DMA priorities:
- * 0...3 Lowest...Highest.
- */
-
-#define SN32F24xx_MCUCONF
-
-/*
- * HAL driver system settings.
- */
-
-/*
- * SN driver system settings.
- */
-#define SN32_CT_IRQ_PRIORITY 2
-#define SN32_CT_USE_TIMER 2
-
-#define SN32_HAS_GPIOA TRUE
-#define SN32_HAS_GPIOB TRUE
-#define SN32_HAS_GPIOC TRUE
-#define SN32_HAS_GPIOD TRUE
-
-/*
- * USB driver system settings.
- */
-#define SN32_USB_USE_USB1 TRUE
-#define SN32_USB_LOW_POWER_ON_SUSPEND TRUE
-#define STM32_USB_USB1_HP_IRQ_PRIORITY 13
-#define STM32_USB_USB1_LP_IRQ_PRIORITY 14
-
-#define CRT1_AREAS_NUMBER 1
-
-#define PLATFORM_USB_USE_USB1 TRUE
-
-/*
- * Timer driver system settings.
- */
-#define SN32_PWM_USE_TIM1 FALSE
-#define SN32_PWM_USE_TIM2 TRUE
-#define SN32_PWM_TIM1_IRQ_PRIORITY 3
-#define SN32_PWM_TIM2_IRQ_PRIORITY 3
-
-#define SYS_CLOCK_SETUP 1
-#define SYS0_CLKCFG_VAL 0
-#define AHB_PRESCALAR 0x2
-#define CLKOUT_SEL_VAL 0x0
-#define CLKOUT_PRESCALAR 0x0
-
-/*----------------------------------------------------------------------------
- DEFINES
- *----------------------------------------------------------------------------*/
-#define IHRC 0
-#define ILRC 1
-#define EHSXTAL 2
-#define ELSXTAL 3
-#define PLL 4
-
-/*----------------------------------------------------------------------------
- Define clocks
- *----------------------------------------------------------------------------*/
-#define __IHRC_FREQ (12000000UL)
-#define __ILRC_FREQ (32000UL)
-#define __ELS_XTAL_FREQ (32768UL)
-
-#if (SYS_CLOCK_SETUP)
-#define SYS0_PLLCTRL_VAL (PLL_ENABLE<<15) | (PLL_CLKIN<<12) | (PLL_FSEL<<8) | (PLL_PSEL<<5) | PLL_MSEL
-#endif
-
-// #endif /* _MCUCONF_H_ */
-
-#define PLATFORM_MCUCONF
-
-#endif /* MCUCONF_H */ \ No newline at end of file
diff --git a/keyboards/spcgear/gk540/rules.mk b/keyboards/spcgear/gk540/rules.mk
index 8956036d9..821319258 100644
--- a/keyboards/spcgear/gk540/rules.mk
+++ b/keyboards/spcgear/gk540/rules.mk
@@ -3,39 +3,8 @@ SRC = matrix.c
SRC += led_matrix.c
SRC += config_led.c
-## chip/board settings
-# - the next two should match the directories in
-# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
-MCU_FAMILY = SN32
-MCU_SERIES = SN32F240
-
-# Linker script to use
-# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
-# or <this_dir>/ld/
-MCU_LDSCRIPT = SN32F240
-
-# Startup code to use
-# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
-MCU_STARTUP = sn32f24x
-
-# Board: it should exist either in <chibios>/os/hal/boards/
-# or <this_dir>/boards
-BOARD = SN_SN32F240
-
-# Cortex version
-MCU = cortex-m0
-
-# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
-ARMV = 6
-
-# BOOTLOADER = flash
-SN32_BOOTLOADER_ADDRESS = 0x1FFF0301
-
-OPT_DEFS = -O2
-
-# Options to pass to dfu-util when flashing
-# DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
-# DFU_SUFFIX_ARGS = -p DF11 -v 0483
+# MCU name
+MCU = SN32F248F
# Build Options
# comment out to disable the options.