~ruther/qmk_firmware

6aae926b5f90f9e05e4dd022a5b94f0ab52c8614 — Drashna Jaelre 4 years ago 49dd1ed
Fix issues with suspend code for ZSA split boards (#10640)

2 files changed, 44 insertions(+), 0 deletions(-)

M keyboards/ergodox_ez/matrix.c
M keyboards/moonlander/matrix.c
M keyboards/ergodox_ez/matrix.c => keyboards/ergodox_ez/matrix.c +15 -0
@@ 237,3 237,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;
    }

}

M keyboards/moonlander/matrix.c => keyboards/moonlander/matrix.c +29 -0
@@ 268,3 268,32 @@ 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);

    // initialize matrix state: all keys off
    for (uint8_t i=0; i < MATRIX_ROWS; i++) {
        matrix[i] = 0;
    }

}