summaryrefslogtreecommitdiffstats
path: root/quantum/matrix.c
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2019-02-15 05:36:20 +0100
committerGitHub <noreply@github.com>2019-02-15 05:36:20 +0100
commitc22f3ba3a2605280b81829a764c29c9e01ae674f (patch)
treef7aba084d7aa8d1f60058cd409eefb5a0d7ebb34 /quantum/matrix.c
parentcc5c6b449a4a36fc56fa5896b2b8f120e4bb0b31 (diff)
parent7d8c62993921383a35f9cd172fe0a1d2e893b2f3 (diff)
downloadqmk_firmware-c22f3ba3a2605280b81829a764c29c9e01ae674f.tar.gz
qmk_firmware-c22f3ba3a2605280b81829a764c29c9e01ae674f.tar.xz
Debounce refactor / API (#3720)
* Added xeal60 via clone of lets split * Delete removed other keymaps * Basic keymap (no FN). Compiles. * Removed NP_STAR and NP_SLSH. * Removed "debounce_algo = manual" in all keyboards with CUSTOM_MATRIX = yes. * Changed order of rules in TMK. Documented feature. * Fixed missing whitespace in debounce documentation Table wasn't working due to missing newline. * Added bold in a few areas. * DO NOT USE - Removed debounce from TMK. * Remove accidental xeal60 commit * DO NOT USE - debounce successfully compiled. * DO NOT USE Revert back to original API to support split_keyboards. * Working eager_pk * Whitespace cleanup. * Restored debounce.h since there wasnt any real change. * Moved debouncing_time variable to inside #if debounce * Removed check for custom_matrix. We can safely include the debounce file for compilation when custom_matrix is used. * Removed #include "matrix.h" from debounce.h * Bug fix - was using MATRIX_ROWS instead of num_rows * Fixed compilation error with debounce_sym_g * Renamed DEBOUNCE_ALGO to DEBOUNCE_TYPE * Malloc array in debounce_eager_pk, since split keyboards only use MATRIX_ROWS/2. * Fix compile error in debounce_eager_pk * Stricter, leaner DEBOUNCE_TYPE section in common_features.mk. Cleanup debounce_type.mk
Diffstat (limited to 'quantum/matrix.c')
-rw-r--r--quantum/matrix.c31
1 files changed, 3 insertions, 28 deletions
diff --git a/quantum/matrix.c b/quantum/matrix.c
index d2b805d7f..f7cad1a0f 100644
--- a/quantum/matrix.c
+++ b/quantum/matrix.c
@@ -51,10 +51,8 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
#endif
/* matrix state(1:on, 0:off) */
-static matrix_row_t raw_matrix[MATRIX_ROWS];
-
-static matrix_row_t matrix[MATRIX_ROWS];
-
+static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
+static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
#if (DIODE_DIRECTION == COL2ROW)
static void init_cols(void);
@@ -108,30 +106,6 @@ uint8_t matrix_cols(void) {
return MATRIX_COLS;
}
-// void matrix_power_up(void) {
-// #if (DIODE_DIRECTION == COL2ROW)
-// for (int8_t r = MATRIX_ROWS - 1; r >= 0; --r) {
-// /* DDRxn */
-// _SFR_IO8((row_pins[r] >> 4) + 1) |= _BV(row_pins[r] & 0xF);
-// toggle_row(r);
-// }
-// for (int8_t c = MATRIX_COLS - 1; c >= 0; --c) {
-// /* PORTxn */
-// _SFR_IO8((col_pins[c] >> 4) + 2) |= _BV(col_pins[c] & 0xF);
-// }
-// #elif (DIODE_DIRECTION == ROW2COL)
-// for (int8_t c = MATRIX_COLS - 1; c >= 0; --c) {
-// /* DDRxn */
-// _SFR_IO8((col_pins[c] >> 4) + 1) |= _BV(col_pins[c] & 0xF);
-// toggle_col(c);
-// }
-// for (int8_t r = MATRIX_ROWS - 1; r >= 0; --r) {
-// /* PORTxn */
-// _SFR_IO8((row_pins[r] >> 4) + 2) |= _BV(row_pins[r] & 0xF);
-// }
-// #endif
-// }
-
void matrix_init(void) {
// initialize row and col
@@ -175,6 +149,7 @@ uint8_t matrix_scan(void)
return 1;
}
+//Deprecated.
bool matrix_is_modified(void)
{
if (debounce_active()) return false;