bughelp wanted
倉庫指標
- Star
- (20,368 star)
- PR 合併指標
- (平均合併 20天 9小時) (30 天內合併 27 個 PR)
描述
Describe the Bug
All the eeprom function signatures provided by avr-libc accept a void* address parameter for the EEPROM offset. This causes problems with AVR when attempting to address 32kB (using signed offsets) or 64kB (when using unsigned).
ChibiOS/ARM reuse the same function signatures to ensure compatibility across the rest of QMK -- these have no issue with addressing as the pointer size is 32-bit.
Suggested fix
- Rework the persistent storage as a separate subsystem, perhaps called
nvram_read_byte()and similar, which provides the same set of functions, but withuint32_toffsets. - Relocate things like the Teensy SmartEEPROM to match the current
drivers/eeprom/structure. - Relocate the emulated flash to the same location.