summaryrefslogtreecommitdiffstats
path: root/keyboards
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/rgbkb/common/common_oled.c3
-rw-r--r--keyboards/rgbkb/mun/matrix.c76
-rw-r--r--keyboards/rgbkb/mun/rules.mk5
-rw-r--r--keyboards/rgbkb/sol3/rules.mk6
4 files changed, 4 insertions, 86 deletions
diff --git a/keyboards/rgbkb/common/common_oled.c b/keyboards/rgbkb/common/common_oled.c
index b6ea6b20af..b6873123b0 100644
--- a/keyboards/rgbkb/common/common_oled.c
+++ b/keyboards/rgbkb/common/common_oled.c
@@ -11,7 +11,8 @@
#include "oled_driver.h"
#include "rgb_matrix.h"
-// for memcpy
+// for memcpy & snprintf
+#include <stdio.h>
#include <string.h>
#include <transactions.h>
diff --git a/keyboards/rgbkb/mun/matrix.c b/keyboards/rgbkb/mun/matrix.c
deleted file mode 100644
index 2472d217c7..0000000000
--- a/keyboards/rgbkb/mun/matrix.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * ----------------------------------------------------------------------------
- * "THE BEER-WARE LICENSE" (Revision 42):
- * <https://github.com/KarlK90> wrote this file. As long as you retain this
- * notice you can do whatever you want with this stuff. If we meet some day, and
- * you think this stuff is worth it, you can buy me a beer in return. KarlK90
- * ----------------------------------------------------------------------------
- */
-
-#include "matrix.h"
-#include "atomic_util.h"
-#include "gpio.h"
-
-#define ROWS_PER_HAND (MATRIX_ROWS / 2)
-static const pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS;
-static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
-
-void matrix_init_pins(void) {
- for (size_t i = 0; i < MATRIX_COLS; i++) {
- setPinInputHigh(col_pins[i]);
- }
- for (size_t i = 0; i < ROWS_PER_HAND; i++) {
- setPinOutput(row_pins[i]);
- writePinHigh(row_pins[i]);
- }
-}
-
-void matrix_read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) {
- /* Drive row pin low. */
- ATOMIC_BLOCK_FORCEON { writePinLow(row_pins[current_row]); }
- matrix_output_select_delay();
-
- /* Read all columns in one go, aka port scanning. */
- uint16_t porta = palReadPort(GPIOA);
- uint16_t portb = palReadPort(GPIOB);
-
-// clang-format off
- /* Order of pins on the mun is: A0, B11, B0, B10, B12, B2, A8
- Pin is active low, therefore we have to invert the result. */
- matrix_row_t cols = ~(((porta & (0x1 << 0)) >> 0) // A0 (0)
- | ((portb & (0x1 << 11)) >> 10) // B11 (1)
- | ((portb & (0x1 << 0)) << 2) // B0 (2)
- | ((portb & (0x1 << 10)) >> 7) // B10 (3)
- | ((portb & (0x1 << 12)) >> 8) // B12 (4)
- | ((portb & (0x1 << 2)) << 3) // B2 (5)
- | ((porta & (0x1 << 8)) >> 2)); // A8 (6)
-// clang-format on
-
- /* Reverse the order of columns for left hand as the board is flipped. */
- // if (isLeftHand) {
- // #if defined(__arm__)
- // /* rbit assembly reverses bit order of 32bit registers. */
- // uint32_t temp = cols;
- // __asm__("rbit %0, %1" : "=r"(temp) : "r"(temp));
- // cols = temp >> 24;
- // #else
- // /* RISC-V bit manipulation extension not present. Use bit-hack.
- // https://graphics.stanford.edu/~seander/bithacks.html#ReverseByteWith32Bits */
- // cols = (matrix_row_t)(((cols * 0x0802LU & 0x22110LU) | (cols * 0x8020LU & 0x88440LU)) * 0x10101LU >> 16);
- // #endif
- // }
-
- current_matrix[current_row] = cols;
-
- /* Drive row pin high again. */
- ATOMIC_BLOCK_FORCEON { writePinHigh(row_pins[current_row]); }
- matrix_output_unselect_delay(current_row, cols != 0);
-}
-
-#if defined(BUSY_WAIT)
-void matrix_output_unselect_delay(uint8_t line, bool key_pressed) {
- for (int32_t i = 0; i < BUSY_WAIT_INSTRUCTIONS; i++) {
- __asm__ volatile("nop" ::: "memory");
- }
-}
-#endif
diff --git a/keyboards/rgbkb/mun/rules.mk b/keyboards/rgbkb/mun/rules.mk
index a682f3aa04..7670e0ee45 100644
--- a/keyboards/rgbkb/mun/rules.mk
+++ b/keyboards/rgbkb/mun/rules.mk
@@ -16,7 +16,7 @@ QUANTUM_LIB_SRC += i2c_master.c
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
+CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
AUDIO_ENABLE = no # Audio output
@@ -38,7 +38,4 @@ OPT = 3
OPT_DEFS += -DOLED_FONT_H=\"keyboards/rgbkb/common/glcdfont.c\"
-# matrix optimisations
-SRC += matrix.c
-
DEFAULT_FOLDER = rgbkb/mun/rev1
diff --git a/keyboards/rgbkb/sol3/rules.mk b/keyboards/rgbkb/sol3/rules.mk
index 6f04c5ec96..de9f7185cf 100644
--- a/keyboards/rgbkb/sol3/rules.mk
+++ b/keyboards/rgbkb/sol3/rules.mk
@@ -16,7 +16,7 @@ QUANTUM_LIB_SRC += i2c_master.c
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
+CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
AUDIO_ENABLE = yes # Audio output
@@ -42,8 +42,4 @@ OPT = 3
OPT_DEFS += -DOLED_FONT_H=\"keyboards/rgbkb/common/glcdfont.c\"
-# TODO: Implement fast matrix scanning
-# matrix optimisations
-# SRC += matrix.c
-
DEFAULT_FOLDER = rgbkb/sol3/rev1