diff options
author | Florian Didron <0x6664@hey.com> | 2020-10-14 10:48:06 +0900 |
---|---|---|
committer | Florian Didron <0x6664@hey.com> | 2020-10-14 10:48:06 +0900 |
commit | a270d67f9f7a3d5ccbe354007775ac3f1033376f (patch) | |
tree | c64b384abef89a8c47c22c7c8a4549085e7e034b /keyboards | |
parent | ded395e45d815cef58b454345bc536fa188d6280 (diff) | |
parent | a4b6fe0b23bb73bb7b4f58f5a74bb8e470f08b99 (diff) |
Merge branch 'firmware19' of github.com:zsa/qmk_firmware into firmware19
Diffstat (limited to 'keyboards')
-rw-r--r-- | keyboards/ergodox_ez/matrix.c | 15 | ||||
-rw-r--r-- | keyboards/moonlander/matrix.c | 35 |
2 files changed, 50 insertions, 0 deletions
diff --git a/keyboards/ergodox_ez/matrix.c b/keyboards/ergodox_ez/matrix.c index d18800f19b..88aeb61722 100644 --- a/keyboards/ergodox_ez/matrix.c +++ b/keyboards/ergodox_ez/matrix.c @@ -242,3 +242,18 @@ static void select_row(uint8_t row) { } } } + +// DO NOT REMOVE +// Needed for proper wake/sleep +void matrix_power_up(void) { + mcp23018_status = init_mcp23018(); + + unselect_rows(); + init_cols(); + + // initialize matrix state: all keys off + for (uint8_t i=0; i < MATRIX_ROWS; i++) { + matrix[i] = 0; + } + +} diff --git a/keyboards/moonlander/matrix.c b/keyboards/moonlander/matrix.c index e5b9b81a2e..a67a091705 100644 --- a/keyboards/moonlander/matrix.c +++ b/keyboards/moonlander/matrix.c @@ -259,3 +259,38 @@ void matrix_print(void) { printf("\n"); } } + +// DO NOT REMOVE +// Needed for proper wake/sleep + +void matrix_power_up(void) { + mcp23018_init(); + + // outputs + setPinOutput(B10); + setPinOutput(B11); + setPinOutput(B12); + setPinOutput(B13); + setPinOutput(B14); + setPinOutput(B15); + + // inputs + setPinInputLow(A0); + setPinInputLow(A1); + setPinInputLow(A2); + setPinInputLow(A3); + setPinInputLow(A6); + setPinInputLow(A7); + setPinInputLow(B0); + + memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t)); + memset(matrix_debouncing, 0, MATRIX_ROWS * sizeof(matrix_row_t)); + memset(matrix_debouncing_right, 0, MATRIX_COLS * sizeof(matrix_row_t)); + + + // initialize matrix state: all keys off + for (uint8_t i=0; i < MATRIX_ROWS; i++) { + matrix[i] = 0; + } + +} |