diff options
author | Joel Challis <git@zvecr.com> | 2022-03-03 22:35:51 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-03 22:35:51 +0000 |
commit | 7fb312ccd7d62a151a35ba70decb722aa9193115 (patch) | |
tree | f91712b8d54eda77035a4a44cafee877de63d608 /tmk_core | |
parent | 4a66bdf29443607ae01c1a6c87b657f89d3a1769 (diff) | |
download | qmk_firmware-7fb312ccd7d62a151a35ba70decb722aa9193115.tar.gz qmk_firmware-7fb312ccd7d62a151a35ba70decb722aa9193115.zip |
Fix use of ISSI driver config before init (#16493)
Diffstat (limited to 'tmk_core')
-rw-r--r-- | tmk_core/protocol/arm_atsam/i2c_master.c | 3 | ||||
-rw-r--r-- | tmk_core/protocol/arm_atsam/main_arm_atsam.c | 2 | ||||
-rw-r--r-- | tmk_core/protocol/arm_atsam/md_rgb_matrix.c | 6 |
3 files changed, 9 insertions, 2 deletions
diff --git a/tmk_core/protocol/arm_atsam/i2c_master.c b/tmk_core/protocol/arm_atsam/i2c_master.c index 6b0b9a703b..07ffcc8172 100644 --- a/tmk_core/protocol/arm_atsam/i2c_master.c +++ b/tmk_core/protocol/arm_atsam/i2c_master.c @@ -297,6 +297,9 @@ uint8_t I2C3733_Init_Drivers(void) { if (gcr_actual > LED_GCR_MAX) gcr_actual = LED_GCR_MAX; gcr_desired = gcr_actual; + void issi3733_prepare_arrays(void); + issi3733_prepare_arrays(); + // Set up master device i2c_led_send_CRWL(0); i2c_led_select_page(0, 3); diff --git a/tmk_core/protocol/arm_atsam/main_arm_atsam.c b/tmk_core/protocol/arm_atsam/main_arm_atsam.c index d092da8682..8ee9e042e7 100644 --- a/tmk_core/protocol/arm_atsam/main_arm_atsam.c +++ b/tmk_core/protocol/arm_atsam/main_arm_atsam.c @@ -300,8 +300,6 @@ int main(void) { i2c1_init(); #endif // RGB_MATRIX_ENABLE - matrix_init(); - USB_Hub_init(); DBGC(DC_MAIN_UDC_START_BEGIN); diff --git a/tmk_core/protocol/arm_atsam/md_rgb_matrix.c b/tmk_core/protocol/arm_atsam/md_rgb_matrix.c index 84ce3ee24b..3ed83a44a6 100644 --- a/tmk_core/protocol/arm_atsam/md_rgb_matrix.c +++ b/tmk_core/protocol/arm_atsam/md_rgb_matrix.c @@ -206,6 +206,12 @@ void gcr_compute(void) { } void issi3733_prepare_arrays(void) { + static bool s_init = false; + if (s_init) { + return; + } + s_init = true; + memset(issidrv, 0, sizeof(issi3733_driver_t) * ISSI3733_DRIVER_COUNT); int i; |