rtl8195am - cleanup gcc linker script

Signed-off-by: Tony Wu <tonywu@realtek.com>
pull/11330/head
Tony Wu 2019-08-23 15:09:51 +08:00
parent 020cf85cf0
commit 885b4ccbef
1 changed files with 12 additions and 13 deletions

View File

@ -107,20 +107,20 @@ SECTIONS
} > SRAM2 } > SRAM2
__etext = .; __etext = .;
__data_start__ = .;
.data.sram1 : .data.sram1 :
{ {
. = ALIGN(8); . = ALIGN(4);
__data_start__ = .;
__sram_data_start__ = .; __sram_data_start__ = .;
*rtl8195a_crypto*.o (.data*) *rtl8195a_crypto*.o (.data*)
*mbedtls*.o (.data*) *mbedtls*.o (.data*)
__data_end__ = .;
__sram_data_end__ = .; __sram_data_end__ = .;
} > SRAM1 } > SRAM1
.data.sram2 : .data.sram2 :
{ {
__sdram_data_start__ = .; __dram_data_start__ = .;
*(vtable) *(vtable)
*(.data*) *(.data*)
*(.sdram.data*) *(.sdram.data*)
@ -145,12 +145,8 @@ SECTIONS
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(8); __dram_data_end__ = .;
__sdram_data_end__ = .;
/* All data end */
} > SRAM2 } > SRAM2
__data_end__ = .;
__image2_end__ = .; __image2_end__ = .;
.ARM.extab : .ARM.extab :
@ -167,6 +163,7 @@ SECTIONS
.bss.sram1 (NOLOAD) : .bss.sram1 (NOLOAD) :
{ {
__bss_start__ = .;
__bss_sram_start__ = .; __bss_sram_start__ = .;
*rtl8195a_crypto*.o (.bss* COMMON) *rtl8195a_crypto*.o (.bss* COMMON)
*mbedtls*.o (.bss* COMMON) *mbedtls*.o (.bss* COMMON)
@ -174,17 +171,16 @@ SECTIONS
*lib_peripheral_mbed_gcc.a: (.bss* COMMON) *lib_peripheral_mbed_gcc.a: (.bss* COMMON)
*mbed_boot*.o (.bss* COMMON) *mbed_boot*.o (.bss* COMMON)
__bss_sram_end__ = .; __bss_sram_end__ = .;
__bss_end__ = .;
} > SRAM1 } > SRAM1
.bss.sram2 (NOLOAD) : .bss.sram2 (NOLOAD) :
{ {
__bss_start__ = .;
__bss_dram_start__ = .; __bss_dram_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
*(.bdsram.data*) *(.bdsram.data*)
__bss_dram_end__ = .; __bss_dram_end__ = .;
__bss_end__ = .;
} > SRAM2 } > SRAM2
.bf_data : .bf_data :
@ -228,6 +224,9 @@ SECTIONS
__StackLimit = __StackTop - StackSize; __StackLimit = __StackTop - StackSize;
PROVIDE(__stack = __StackTop); PROVIDE(__stack = __StackTop);
/* Check if reserved stack size is too small */
ASSERT(StackSize >= SIZEOF(.stack_dummy), "reserved stack size is too small")
/* Check if data + heap + stack exceeds RAM limit */ /* Check if data + heap + stack exceeds RAM limit */
ASSERT(__StackLimit >= __HeapLimit, "region RAM exceeds ram limit") ASSERT(__StackLimit >= __HeapLimit, "region RAM exceeds ram limit")
} }