qmk_firmware/tmk_core/common
Nick Brassel 172e6a7030
Extensible split data sync (#11930)
* Extensible split data sync capability through transactions.

- Split common transport has been split up between the transport layer
  and data layer.
- Split "transactions" model used, with convergence between I2C and
  serial data definitions.
- Slave matrix "generation count" is used to determine if the full slave
  matrix needs to be retrieved.
- Encoders get the same "generation count" treatment.
- All other blocks of data are synchronised when a change is detected.
- All transmissions have a globally-configurable deadline before a
  transmission is forced (`FORCED_SYNC_THROTTLE_MS`, default 100ms).
- Added atomicity for all core-synced data, preventing partial updates
- Added retries to AVR i2c_master's i2c_start, to minimise the number of
  failed transactions when interrupts are disabled on the slave due to
  atomicity checks.
- Some keyboards have had slight modifications made in order to ensure
  that they still build due to firmware size restrictions.

* Fixup LED_MATRIX compile.

* Parameterise ERROR_DISCONNECT_COUNT.
2021-06-18 09:10:06 +10:00
..
arm_atsam Avoid 8-bit timer overflows in debounce algorithms (#12240) 2021-06-09 17:23:21 +10:00
avr Avoid 8-bit timer overflows in debounce algorithms (#12240) 2021-06-09 17:23:21 +10:00
chibios core: make RESET key work with Teensy 4.x (#13076) 2021-06-15 21:53:27 -07:00
test
action.c run: qmk cformat --core-only 2021-05-29 13:53:10 -07:00
action.h run: qmk cformat --core-only 2021-05-29 13:53:10 -07:00
action_code.h
action_layer.c
action_layer.h
action_macro.c
action_macro.h
action_tapping.c Format code according to conventions (#12380) 2021-03-25 23:18:59 +11:00
action_tapping.h
action_util.c
action_util.h
atomic_util.h
bootloader.h
debug.c
debug.h
eeconfig.c Backlight: add defines for default level and breathing state (#12560) 2021-05-26 22:21:15 -07:00
eeconfig.h Backlight: add defines for default level and breathing state (#12560) 2021-05-26 22:21:15 -07:00
eeprom.h
gpio.h
host.c Extensible split data sync (#11930) 2021-06-18 09:10:06 +10:00
host.h
host_driver.h
keyboard.c Add CRC8 calculation subsystem to quantum (#12641) 2021-06-18 00:09:43 +01:00
keyboard.h run: qmk cformat --core-only 2021-05-29 13:53:10 -07:00
keycode.h Format code according to conventions (#12244) 2021-03-15 12:21:14 +11:00
lib_printf.mk
nodebug.h
pin_defs.h
print.h
printf.c
progmem.h
raw_hid.h
report.c
report.h Add a handful of consumer/gendesk page usages (#12811) 2021-05-06 17:16:07 +01:00
sendchar.h
sendchar_null.c
sendchar_uart.c
sleep_led.h
suspend.h
sync_timer.c
sync_timer.h
timer.h Avoid 8-bit timer overflows in debounce algorithms (#12240) 2021-06-09 17:23:21 +10:00
usb_util.c
usb_util.h
virtser.h
wait.h