Browse Source

Add FLASHMEM, for assigning functions (not variables) to flash

teensy4-core
PaulStoffregen 5 years ago
parent
commit
5aeeb9ad58
3 changed files with 3 additions and 0 deletions
  1. +1
    -0
      keywords.txt
  2. +1
    -0
      teensy4/avr/pgmspace.h
  3. +1
    -0
      teensy4/imxrt1062.ld

+ 1
- 0
keywords.txt View File

attachRts KEYWORD2 attachRts KEYWORD2
attachCts KEYWORD2 attachCts KEYWORD2
PROGMEM LITERAL1 PROGMEM LITERAL1
FLASHMEM LITERAL1
DMAMEM LITERAL1 DMAMEM LITERAL1
FASTRUN LITERAL1 FASTRUN LITERAL1
Serial4 KEYWORD1 Serial4 KEYWORD1

+ 1
- 0
teensy4/avr/pgmspace.h View File

#define DMAMEM __attribute__ ((section(".dmabuffers"), used)) #define DMAMEM __attribute__ ((section(".dmabuffers"), used))
#define FASTRUN __attribute__ ((section(".fastrun") )) #define FASTRUN __attribute__ ((section(".fastrun") ))
#define PROGMEM __attribute__((section(".progmem"))) #define PROGMEM __attribute__((section(".progmem")))
#define FLASHMEM __attribute__((section(".flashmem")))


#define PGM_P const char * #define PGM_P const char *
#define PSTR(str) ({static const char data[] PROGMEM = (str); &data[0];}) #define PSTR(str) ({static const char data[] PROGMEM = (str); &data[0];})

+ 1
- 0
teensy4/imxrt1062.ld View File

KEEP(*(.bootdata)) KEEP(*(.bootdata))
KEEP(*(.vectors)) KEEP(*(.vectors))
KEEP(*(.startup)) KEEP(*(.startup))
*(.flashmem*)
*(.progmem*) *(.progmem*)
. = ALIGN(4); . = ALIGN(4);
KEEP(*(.init)) KEEP(*(.init))

Loading…
Cancel
Save