mirror of https://github.com/ARMmbed/mbed-os.git
Simplify CRP placement.
parent
1c5c0adbac
commit
2b0ff329d6
|
@ -51,10 +51,4 @@ performed on the device.
|
|||
#define CRP CRP_NONE
|
||||
#endif
|
||||
|
||||
#if defined (__ICCARM__)
|
||||
__root const long CRP_Key@APPLICATION_ADDR + 0x000002FC = CRP;
|
||||
#elif defined (__ARMCC_VERSION)
|
||||
const long CRP_Key __attribute__((used)) __attribute__((at(APPLICATION_ADDR+0x000002FC))) = CRP;
|
||||
#elif defined (__GNUC__)
|
||||
const long CRP_Key __attribute__((used)) __attribute__((section(".CRPSection"))) = CRP;
|
||||
#endif
|
||||
MBED_SECTION(".CRPSection") MBED_USED const long CRP_Key = CRP;
|
||||
|
|
|
@ -9,10 +9,16 @@
|
|||
#endif
|
||||
|
||||
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
|
||||
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
|
||||
*.o (RESET, +First)
|
||||
*(InRoot$$Sections)
|
||||
.ANY (+RO)
|
||||
ER_IROM0 MBED_APP_START 0x2FC { ; load address = execution address
|
||||
*.o (RESET, +First)
|
||||
.ANY (+RO)
|
||||
}
|
||||
ER_CRP (MBED_APP_START + 0x2FC) FIXED 4 {
|
||||
*.o (.CRPSection)
|
||||
}
|
||||
ER_IROM1 (MBED_APP_START + (0x2FC + 4)) FIXED (MBED_APP_SIZE - (0x2FC + 4)) {
|
||||
*(InRoot$$Sections)
|
||||
.ANY (+RO)
|
||||
}
|
||||
; 8_byte_aligned(49 vect * 4 bytes) = 8_byte_aligned(0xC4) = 0xC8
|
||||
; 32KB (RAM size) - 0xC8 (NIVT) - 32 (topmost 32 bytes used by IAP functions) = 0x7F18
|
||||
|
|
|
@ -9,10 +9,16 @@
|
|||
#endif
|
||||
|
||||
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
|
||||
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
|
||||
*.o (RESET, +First)
|
||||
*(InRoot$$Sections)
|
||||
.ANY (+RO)
|
||||
ER_IROM0 MBED_APP_START 0x2FC { ; load address = execution address
|
||||
*.o (RESET, +First)
|
||||
.ANY (+RO)
|
||||
}
|
||||
ER_CRP (MBED_APP_START + 0x2FC) FIXED 4 {
|
||||
*.o (.CRPSection)
|
||||
}
|
||||
ER_IROM1 (MBED_APP_START + (0x2FC + 4)) FIXED (MBED_APP_SIZE - (0x2FC + 4)) {
|
||||
*(InRoot$$Sections)
|
||||
.ANY (+RO)
|
||||
}
|
||||
; 8_byte_aligned(49 vect * 4 bytes) = 8_byte_aligned(0xC4) = 0xC8
|
||||
; 32KB (RAM size) - 0xC8 (NIVT) - 32 (topmost 32 bytes used by IAP functions) = 0x7F18
|
||||
|
|
|
@ -19,8 +19,8 @@ define symbol __ICFEDIT_size_cstack__ = 0x1000;
|
|||
define symbol __ICFEDIT_size_heap__ = 0x2000;
|
||||
/**** End of ICF editor section. ###ICF###*/
|
||||
|
||||
define symbol __CRP_start__ = 0x000002FC;
|
||||
define symbol __CRP_end__ = 0x000002FF;
|
||||
define symbol __CRP_start__ = MBED_APP_START + 0x000002FC;
|
||||
define symbol __CRP_end__ = MBED_APP_START + 0x000002FF;
|
||||
|
||||
define symbol __RAM1_start__ = 0x2007C000;
|
||||
define symbol __RAM1_end__ = 0x20083FFF;
|
||||
|
@ -43,5 +43,5 @@ place in ROM_region { readonly };
|
|||
place in RAM_region { readwrite,
|
||||
block HEAP, block CSTACK };
|
||||
|
||||
place in CRP_region { section .crp };
|
||||
place in CRP_region { section .CRPSection };
|
||||
place in RAM1_region { section .ethusbram };
|
||||
|
|
Loading…
Reference in New Issue