Merge remote-tracking branch 'qmk/master' into merge-2022-03-06

This commit is contained in:
Ilya Zhuravlev
2022-03-06 20:07:17 -06:00
7966 changed files with 179284 additions and 62738 deletions
+13 -9
View File
@@ -45,7 +45,7 @@
#include "raw_hid.h"
#include "dynamic_keymap.h"
#include "eeprom.h"
#include "version.h" // for QMK_BUILDDATE used in EEPROM magic
#include "version.h" // for QMK_BUILDDATE used in EEPROM magic
#include "via_ensure_keycode.h"
#ifdef VIAL_ENABLE
@@ -75,7 +75,7 @@ bool via_eeprom_is_valid(void) {
uint8_t magic1 = (BUILD_ID >> 8) & 0xFF;
uint8_t magic2 = (BUILD_ID >> 16) & 0xFF;
#else
char * p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54"
char * p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54"
uint8_t magic0 = ((p[2] & 0x0F) << 4) | (p[3] & 0x0F);
uint8_t magic1 = ((p[5] & 0x0F) << 4) | (p[6] & 0x0F);
uint8_t magic2 = ((p[8] & 0x0F) << 4) | (p[9] & 0x0F);
@@ -92,7 +92,7 @@ void via_eeprom_set_valid(bool valid) {
uint8_t magic1 = (BUILD_ID >> 8) & 0xFF;
uint8_t magic2 = (BUILD_ID >> 16) & 0xFF;
#else
char * p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54"
char * p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54"
uint8_t magic0 = ((p[2] & 0x0F) << 4) | (p[3] & 0x0F);
uint8_t magic1 = ((p[5] & 0x0F) << 4) | (p[6] & 0x0F);
uint8_t magic2 = ((p[8] & 0x0F) << 4) | (p[9] & 0x0F);
@@ -116,6 +116,7 @@ void via_init(void) {
// Let keyboard level test EEPROM valid state,
// but not set it valid, it is done here.
via_init_kb();
via_set_layout_options_kb(via_get_layout_options());
// If the EEPROM has the magic, the data is good.
// OK to load from EEPROM.
@@ -151,7 +152,10 @@ uint32_t via_get_layout_options(void) {
return value;
}
__attribute__((weak)) void via_set_layout_options_kb(uint32_t value) {}
void via_set_layout_options(uint32_t value) {
via_set_layout_options_kb(value);
// Start at the least significant byte
void *target = (void *)(VIA_EEPROM_LAYOUT_OPTIONS_ADDR + VIA_EEPROM_LAYOUT_OPTIONS_SIZE - 1);
for (uint8_t i = 0; i < VIA_EEPROM_LAYOUT_OPTIONS_SIZE; i++) {
@@ -390,7 +394,7 @@ void raw_hid_receive(uint8_t *data, uint8_t length) {
}
case id_dynamic_keymap_macro_get_buffer: {
uint16_t offset = (command_data[0] << 8) | command_data[1];
uint16_t size = command_data[2]; // size <= 28
uint16_t size = command_data[2]; // size <= 28
if (size <= 28)
dynamic_keymap_macro_get_buffer(offset, size, &command_data[3]);
break;
@@ -402,7 +406,7 @@ void raw_hid_receive(uint8_t *data, uint8_t length) {
goto skip;
#endif
uint16_t offset = (command_data[0] << 8) | command_data[1];
uint16_t size = command_data[2]; // size <= 28
uint16_t size = command_data[2]; // size <= 28
if (size <= 28)
dynamic_keymap_macro_set_buffer(offset, size, &command_data[3]);
break;
@@ -417,14 +421,14 @@ void raw_hid_receive(uint8_t *data, uint8_t length) {
}
case id_dynamic_keymap_get_buffer: {
uint16_t offset = (command_data[0] << 8) | command_data[1];
uint16_t size = command_data[2]; // size <= 28
uint16_t size = command_data[2]; // size <= 28
if (size <= 28)
dynamic_keymap_get_buffer(offset, size, &command_data[3]);
break;
}
case id_dynamic_keymap_set_buffer: {
uint16_t offset = (command_data[0] << 8) | command_data[1];
uint16_t size = command_data[2]; // size <= 28
uint16_t size = command_data[2]; // size <= 28
if (size <= 28)
dynamic_keymap_set_buffer(offset, size, &command_data[3]);
break;
@@ -512,7 +516,7 @@ void via_qmk_backlight_set_value(uint8_t *data) {
}
}
#endif // #if defined(VIA_QMK_BACKLIGHT_ENABLE)
#endif // #if defined(VIA_QMK_BACKLIGHT_ENABLE)
#if defined(VIA_QMK_RGBLIGHT_ENABLE)
@@ -568,4 +572,4 @@ void via_qmk_rgblight_set_value(uint8_t *data) {
}
}
#endif // #if defined(VIA_QMK_RGBLIGHT_ENABLE)
#endif // #if defined(VIA_QMK_RGBLIGHT_ENABLE)