diff options
Diffstat (limited to 'quantum/split_common/matrix.c')
| -rw-r--r-- | quantum/split_common/matrix.c | 11 | 
1 files changed, 4 insertions, 7 deletions
| diff --git a/quantum/split_common/matrix.c b/quantum/split_common/matrix.c index d6636b886a..039e7d9773 100644 --- a/quantum/split_common/matrix.c +++ b/quantum/split_common/matrix.c @@ -43,6 +43,7 @@ extern matrix_row_t matrix[MATRIX_ROWS];      // debounced values  uint8_t thisHand, thatHand;  // user-defined overridable functions +__attribute__((weak)) void matrix_slave_scan_kb(void) { matrix_slave_scan_user(); }  __attribute__((weak)) void matrix_slave_scan_user(void) {}  static inline void setPinOutput_writeLow(pin_t pin) { @@ -129,9 +130,7 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)      // Unselect row      unselect_row(current_row); -    if (current_row + 1 < MATRIX_ROWS) { -        matrix_output_unselect_delay();  // wait for row signal to go HIGH -    } +    matrix_output_unselect_delay();  // wait for all Col signals to go HIGH      // If the row has changed, store the row and return the changed flag.      if (current_matrix[current_row] != current_row_value) { @@ -191,9 +190,7 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col)      // Unselect col      unselect_col(current_col); -    if (current_col + 1 < MATRIX_COLS) { -        matrix_output_unselect_delay();  // wait for col signal to go HIGH -    } +    matrix_output_unselect_delay();  // wait for all Row signals to go HIGH      return matrix_changed;  } @@ -284,7 +281,7 @@ bool matrix_post_scan(void) {      } else {          transport_slave(matrix + thatHand, matrix + thisHand); -        matrix_slave_scan_user(); +        matrix_slave_scan_kb();      }      return changed; | 
