Fix linker error on newer compilers by just declaring the two usb sections after the .bss section
See: https://community.nxp.com/thread/449264
This commit is contained in:
@@ -196,21 +196,27 @@ SECTIONS
|
|||||||
text_end = ORIGIN(m_text) + LENGTH(m_text);
|
text_end = ORIGIN(m_text) + LENGTH(m_text);
|
||||||
ASSERT(__DATA_END <= text_end, "region m_text overflowed with text and data")
|
ASSERT(__DATA_END <= text_end, "region m_text overflowed with text and data")
|
||||||
|
|
||||||
USB_RAM_GAP = DEFINED(__usb_ram_size__) ? __usb_ram_size__ : 0x800;
|
|
||||||
/* Uninitialized data section */
|
/* Uninitialized data section */
|
||||||
.bss :
|
.bss : ALIGN(4)
|
||||||
{
|
{
|
||||||
/* This is used by the startup in order to initialize the .bss section */
|
/* This is used by the startup in order to initialize the .bss section */
|
||||||
. = ALIGN(4);
|
|
||||||
__START_BSS = .;
|
__START_BSS = .;
|
||||||
__bss_start__ = .;
|
__bss_start__ = .;
|
||||||
*(.bss)
|
*(.bss)
|
||||||
*(.bss*)
|
*(.bss*)
|
||||||
. = ALIGN(512);
|
|
||||||
USB_RAM_START = .;
|
|
||||||
. += USB_RAM_GAP;
|
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
|
} > m_data
|
||||||
|
|
||||||
|
.m_usb_bdt (NOLOAD) :
|
||||||
|
{
|
||||||
|
. = ALIGN(512);
|
||||||
|
*(m_usb_bdt)
|
||||||
|
} > m_data
|
||||||
|
|
||||||
|
.m_usb_global (NOLOAD) :
|
||||||
|
{
|
||||||
|
*(m_usb_global)
|
||||||
__bss_end__ = .;
|
__bss_end__ = .;
|
||||||
__END_BSS = .;
|
__END_BSS = .;
|
||||||
} > m_data
|
} > m_data
|
||||||
@@ -239,17 +245,6 @@ SECTIONS
|
|||||||
. += STACK_SIZE;
|
. += STACK_SIZE;
|
||||||
} > m_data_2
|
} > m_data_2
|
||||||
|
|
||||||
m_usb_bdt USB_RAM_START (NOLOAD) :
|
|
||||||
{
|
|
||||||
*(m_usb_bdt)
|
|
||||||
USB_RAM_BDT_END = .;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_usb_global USB_RAM_BDT_END (NOLOAD) :
|
|
||||||
{
|
|
||||||
*(m_usb_global)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Initializes stack on the end of block */
|
/* Initializes stack on the end of block */
|
||||||
__StackTop = ORIGIN(m_data_2) + LENGTH(m_data_2);
|
__StackTop = ORIGIN(m_data_2) + LENGTH(m_data_2);
|
||||||
__StackLimit = __StackTop - STACK_SIZE;
|
__StackLimit = __StackTop - STACK_SIZE;
|
||||||
|
|||||||
Reference in New Issue
Block a user