aboutsummaryrefslogtreecommitdiff
path: root/platforms
diff options
context:
space:
mode:
authorQMK Bot <[email protected]>2024-06-10 00:24:00 +0000
committerQMK Bot <[email protected]>2024-06-10 00:24:00 +0000
commite381f91c6e69d2e73a978e4ce8a838db3bc40e23 (patch)
tree64ae5c80a0af8162622edcf4665284992d35714c /platforms
parentd4f8b478aaf18cd2f81ae1b3c9d2dd910a0b2dfa (diff)
parent8b5cdfabf5d05958a607efa174e64377d36e4b64 (diff)
downloadqmk_firmware-e381f91c6e69d2e73a978e4ce8a838db3bc40e23.tar.gz
qmk_firmware-e381f91c6e69d2e73a978e4ce8a838db3bc40e23.zip
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'platforms')
-rw-r--r--platforms/eeprom.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/platforms/eeprom.h b/platforms/eeprom.h
index 8e69eecc4c..067fa01616 100644
--- a/platforms/eeprom.h
+++ b/platforms/eeprom.h
@@ -22,9 +22,14 @@ void eeprom_update_dword(uint32_t *__p, uint32_t __value);
void eeprom_update_block(const void *__src, void *__dst, size_t __n);
#endif
-static inline void eeprom_write_qword(uint64_t *__p, uint64_t __value) {
- eeprom_update_block(&__value, __p, sizeof(uint64_t));
-}
+// While newer avr-libc versions may have an implementation
+// use preprocessor as to not cause conflicts
+#undef eeprom_write_qword
+#define eeprom_write_qword(__p, __value) \
+ do { \
+ uint64_t tmp = __value; \
+ eeprom_update_block(&tmp, __p, sizeof(uint64_t)); \
+ } while (0)
#if defined(EEPROM_CUSTOM)
# ifndef EEPROM_SIZE