diff --git a/quantum/via.c b/quantum/via.c index 9446811af69..f294d664aa5 100644 --- a/quantum/via.c +++ b/quantum/via.c @@ -37,6 +37,10 @@ #include "version.h" // for QMK_BUILDDATE used in EEPROM magic #include "nvm_via.h" +#if defined(SECURE_ENABLE) +# include "secure.h" +#endif + #if defined(AUDIO_ENABLE) # include "audio.h" #endif @@ -322,8 +326,13 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { uint8_t rows = 28 / ((MATRIX_COLS + 7) / 8); uint8_t i = 2; for (uint8_t row = 0; row < rows && row + offset < MATRIX_ROWS; row++) { -#ifdef VIA_INSECURE +#if defined(VIA_INSECURE) && !defined(SECURE_ENABLE) matrix_row_t value = matrix_get_row(row + offset); +#elif !defined(VIA_INSECURE) && defined(SECURE_ENABLE) + matrix_row_t value = 0; + if (secure_is_unlocked()) { + value = matrix_get_row(row + offset); + } #else matrix_row_t value = 0; #endif