bughelp wanted
Metriche repository
- Star
- (20.368 star)
- Metriche merge PR
- (Merge medio 20g 9h) (27 PR mergiate in 30 g)
Descrizione
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.