2021-08-21 23:49:36 +01:00
|
|
|
MEMORY
|
|
|
|
{
|
|
|
|
NULL : ORIGIN = 0, LENGTH = 4K
|
|
|
|
main : ORIGIN = 0x40001000, LENGTH = 0x2B000
|
|
|
|
ovl : ORIGIN = 0x4002C000, LENGTH = 0x14000
|
2021-08-23 22:18:59 +01:00
|
|
|
|
|
|
|
glob : ORIGIN = ORIGIN(main), LENGTH = LENGTH(main) + LENGTH(ovl) * 3
|
2021-08-21 23:49:36 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
SECTIONS {
|
|
|
|
OVERLAY : NOCROSSREFS {
|
|
|
|
.ovl_sein {
|
|
|
|
fusee_secure_initialize.o(.text*);
|
2021-08-22 10:32:05 +01:00
|
|
|
fusee_sdram.o(.text*);
|
2021-08-21 23:49:36 +01:00
|
|
|
fusee_secure_initialize.o(.rodata*);
|
2021-08-22 10:32:05 +01:00
|
|
|
fusee_sdram.o(.rodata*);
|
2021-08-21 23:49:36 +01:00
|
|
|
fusee_secure_initialize.o(.data*);
|
2021-08-22 10:32:05 +01:00
|
|
|
fusee_sdram.o(.data*);
|
2021-08-21 23:49:36 +01:00
|
|
|
fusee_secure_initialize.o(.bss*);
|
2021-08-22 10:32:05 +01:00
|
|
|
fusee_sdram.o(.bss*);
|
2021-08-21 23:49:36 +01:00
|
|
|
FILL(0x00000000)
|
|
|
|
. = ORIGIN(ovl) + LENGTH(ovl) - 1;
|
|
|
|
BYTE(0x00);
|
|
|
|
}
|
2021-08-23 22:18:59 +01:00
|
|
|
.ovl_mtc_erista {
|
2021-09-02 07:51:51 +01:00
|
|
|
KEEP(*(.text._ZN3ams6nxboot22DoMemoryTrainingEristaEiPv))
|
|
|
|
fusee_mtc_erista.o(.text*);
|
2021-09-02 02:25:36 +01:00
|
|
|
fusee_mtc_erista.o(SORT(.rodata*));
|
2021-08-23 22:18:59 +01:00
|
|
|
FILL(0x00000000)
|
|
|
|
. = ORIGIN(ovl) + LENGTH(ovl) - 1;
|
|
|
|
BYTE(0x00);
|
|
|
|
}
|
|
|
|
.ovl_mtc_mariko {
|
2021-09-02 07:51:51 +01:00
|
|
|
KEEP(*(.text._ZN3ams6nxboot22DoMemoryTrainingMarikoEPbiPv))
|
|
|
|
fusee_mtc_mariko.o(.text*);
|
2021-09-02 02:25:36 +01:00
|
|
|
fusee_mtc_mariko.o(SORT(.rodata*));
|
2021-08-23 22:18:59 +01:00
|
|
|
FILL(0x00000000)
|
|
|
|
. = ORIGIN(ovl) + LENGTH(ovl) - 1;
|
|
|
|
BYTE(0x00);
|
|
|
|
}
|
2021-08-21 23:49:36 +01:00
|
|
|
} >ovl AT>glob
|
|
|
|
}
|
|
|
|
INSERT AFTER .main.fill
|