mongoose/examples/nxp/rt1060-evk-make-baremetal-builtin/link.ld

25 lines
1.0 KiB
Plaintext
Raw Normal View History

2023-10-28 03:19:12 +08:00
ENTRY(Reset_Handler);
MEMORY {
flash_hdr(rx) : ORIGIN = 0x60000000, LENGTH = 8k
2023-10-28 03:19:12 +08:00
flash_irq(rx) : ORIGIN = 0x60002000, LENGTH = 1k
flash_code(rx) : ORIGIN = 0x60002400, LENGTH = 8183k
itcram(rx) : ORIGIN = 0x00000000, LENGTH = 128k
dtcram(rw) : ORIGIN = 0x20000000, LENGTH = 128k
ocram(rw) : ORIGIN = 0x20200000, LENGTH = 256k /* Is this cached ? */
2023-10-28 03:19:12 +08:00
}
__StackTop = ORIGIN(dtcram) + LENGTH(dtcram);
2023-10-28 03:19:12 +08:00
2023-11-24 23:47:37 +08:00
/* TODO(): separate itcram and go back to using dtcram for data and bss when ota is finished */
2023-10-28 03:19:12 +08:00
SECTIONS {
.hdr : { FILL(0xff) ; KEEP(*(.cfg)) . = 0x1000 ; KEEP(*(.ivt)) . = 0x1020 ;
KEEP(*(.dat)) . = 0x1030 ; KEEP(*(.dcd)) . = 0x2000 ;} >flash_hdr
2023-10-28 03:19:12 +08:00
.irq : { KEEP(*(.isr_vector)) } > flash_irq
.text : { *(.text* .text.*) *(.rodata*) ; } > flash_code
2023-11-24 23:47:37 +08:00
.data : { __data_start__ = .; *(.data SORT(.data.*)) *(.iram) __data_end__ = .; } > itcram AT > flash_code
__etext = LOADADDR(.data);
2023-11-24 23:47:37 +08:00
.bss : { __bss_start__ = .; *(.bss SORT(.bss.*) COMMON) __bss_end__ = .; } > itcram
2023-10-28 03:19:12 +08:00
_end = .;
}