diff --git a/drivers/oled/oled_driver.c b/drivers/oled/oled_driver.c index cb50c38c4..ce5c23cc4 100644 --- a/drivers/oled/oled_driver.c +++ b/drivers/oled/oled_driver.c @@ -23,9 +23,6 @@ along with this program. If not, see . #include #include "progmem.h" -#ifndef __AVR__ -# define memcpy_P(des, src, len) memcpy(des, src, len) -#endif // Used commands from spec sheet: https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf // for SH1106: https://www.velleman.eu/downloads/29/infosheets/sh1106_datasheet.pdf diff --git a/tmk_core/common/progmem.h b/tmk_core/common/progmem.h index a06d0f940..be8485117 100644 --- a/tmk_core/common/progmem.h +++ b/tmk_core/common/progmem.h @@ -4,7 +4,12 @@ # include #else # define PROGMEM -# define pgm_read_byte(p) *((unsigned char*)(p)) -# define pgm_read_word(p) *((uint16_t*)(p)) -# define pgm_read_dword(p) *((uint32_t*)(p)) +# define memcpy_P(dest, src, n) memcpy(dest, src, n) +# define pgm_read_byte(address_short) *((uint8_t*)(address_short)) +# define pgm_read_word(address_short) *((uint16_t*)(address_short)) +# define pgm_read_dword(address_short) *((uint32_t*)(address_short)) +# define pgm_read_ptr(address_short) *((void*)(address_short)) +# define strcmp_P(s1, s2) strcmp(s1, s2) +# define strcpy_P(dest, src) strcpy(dest, src) +# define strlen_P(src) strlen(src) #endif