1
0
Fork 0

Update atomic GPIO macros in keyboard custom matrix (#23796)

This commit is contained in:
Ryan 2024-07-13 18:41:05 +10:00 committed by GitHub
parent 5c43a9bed1
commit 1552cf2ddc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
20 changed files with 270 additions and 270 deletions

View file

@ -19,21 +19,21 @@ static const pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS;
static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
#define MATRIX_ROW_SHIFTER ((matrix_row_t)1)
static inline void setPinOutput_writeLow(pin_t pin) {
static inline void gpio_atomic_set_pin_output_low(pin_t pin) {
ATOMIC_BLOCK_FORCEON {
gpio_set_pin_output(pin);
gpio_write_pin_low(pin);
}
}
static inline void setPinOutput_writeHigh(pin_t pin) {
static inline void gpio_atomic_set_pin_output_high(pin_t pin) {
ATOMIC_BLOCK_FORCEON {
gpio_set_pin_output(pin);
gpio_write_pin_high(pin);
}
}
static inline void setPinInputHigh_atomic(pin_t pin) {
static inline void gpio_atomic_set_pin_input_high(pin_t pin) {
ATOMIC_BLOCK_FORCEON {
gpio_set_pin_input_high(pin);
}
@ -50,7 +50,7 @@ static inline uint8_t readMatrixPin(pin_t pin) {
static bool select_col(uint8_t col) {
pin_t pin = col_pins[col];
if (pin != NO_PIN) {
setPinOutput_writeLow(pin);
gpio_atomic_set_pin_output_low(pin);
return true;
}
return false;
@ -60,9 +60,9 @@ static void unselect_col(uint8_t col) {
pin_t pin = col_pins[col];
if (pin != NO_PIN) {
# ifdef MATRIX_UNSELECT_DRIVE_HIGH
setPinOutput_writeHigh(pin);
gpio_atomic_set_pin_output_high(pin);
# else
setPinInputHigh_atomic(pin);
gpio_atomic_set_pin_input_high(pin);
# endif
}
}
@ -78,10 +78,10 @@ __attribute__((weak)) void matrix_init_custom(void) {
unselect_cols();
for (uint8_t x = 0; x < MATRIX_ROWS; x++) {
if (row_pins[x] != NO_PIN) {
setPinInputHigh_atomic(row_pins[x]);
gpio_atomic_set_pin_input_high(row_pins[x]);
}
}
setPinInputHigh_atomic(B8);
gpio_atomic_set_pin_input_high(B8);
}
__attribute__((weak)) void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { // Start with a clear matrix row