Fix errors with matrix_output_unselect_delay function calls (#13645)
This commit is contained in:
@@ -19,7 +19,7 @@
|
||||
#include "transactions.h"
|
||||
|
||||
#define ERROR_DISCONNECT_COUNT 5
|
||||
#define ROWS_PER_HAND (MATRIX_ROWS / 2)
|
||||
#define ROWS_PER_HAND (MATRIX_ROWS / 2)
|
||||
|
||||
static const pin_t row_pins[ROWS_PER_HAND] = MATRIX_ROW_PINS;
|
||||
static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
||||
@@ -141,7 +141,7 @@ uint8_t matrix_scan(void) {
|
||||
|
||||
/* Drive row pin high again. */
|
||||
ATOMIC_BLOCK_FORCEON { writePinHigh(row_pins[row_idx]); }
|
||||
matrix_output_unselect_delay();
|
||||
matrix_output_unselect_delay(row_idx, row_pins[row_idx] != 0);
|
||||
}
|
||||
|
||||
if (memcmp(raw_matrix, current_matrix, sizeof(current_matrix)) != 0) {
|
||||
@@ -153,4 +153,4 @@ uint8_t matrix_scan(void) {
|
||||
|
||||
bool remote_changed = matrix_post_scan();
|
||||
return (uint8_t)(local_changed || remote_changed);
|
||||
}
|
||||
}
|
||||
|
@@ -12,24 +12,22 @@
|
||||
#include "common_oled.h"
|
||||
#include <transactions.h>
|
||||
|
||||
void keyboard_post_init_kb(void)
|
||||
{
|
||||
void keyboard_post_init_kb(void) {
|
||||
touch_encoder_init();
|
||||
transaction_register_rpc(TOUCH_ENCODER_SYNC, touch_encoder_slave_sync);
|
||||
transaction_register_rpc(RGB_MENU_SYNC, rgb_menu_slave_sync);
|
||||
keyboard_post_init_user();
|
||||
}
|
||||
|
||||
void housekeeping_task_kb(void)
|
||||
{
|
||||
void housekeeping_task_kb(void) {
|
||||
touch_encoder_update(TOUCH_ENCODER_SYNC);
|
||||
rgb_menu_update(RGB_MENU_SYNC);
|
||||
}
|
||||
|
||||
#if defined(BUSY_WAIT)
|
||||
void matrix_output_unselect_delay(void) {
|
||||
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
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user