Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Loading

LPC2368 gcc eclipse demo lpc2368ld error?

Posted by Gea on December 12, 2007
A question regarding Freertos version 4.6.1 and ARM7 gcc eclipse:

In the lpc2368.ld the __bss_end__ is set to the beginning of ETH Ram. Is this correct?
The boot.S file states that the bss region shall be cleared and with __bss_end__ set to to beginning of ETH RAM it tries to clear a lot of RAM? The bss region ranges from ~0x40000000 to 0x7FE00000 according to the lpc2368.ld file.
I changed my lpc2368.ld so that __bss_end__ pointed to the end of the bss statement in the lpc2368.ld file.

MEMORY
{
flash: ORIGIN = 0x00000000, LENGTH = 500K
ram: ORIGIN = 0x40000000, LENGTH = 32K
usbram : ORIGIN = 0x7FD00000, LENGTH = 8K
ethram : ORIGIN = 0x7FE00000, LENGTH = 16K
}

__stack_end__ = 0x40000000 + 32K - 4;

SECTIONS
{
. = 0;
startup : { KEEP(*(.startup))} >flash

prog :
{
*(.text)
*(.rodata)
*(.rodata*)
*(.glue_7)
*(.glue_7t)
} >flash

__end_of_text__ = .;

.data :
{
__data_beg__ = .;
__data_beg_src__ = __end_of_text__;
*(.data)
__data_end__ = .;
} >ram AT>flash

.bss :
{
__bss_beg__ = .;
*(.bss)
} >ram

/* Align here to ensure that the .bss section occupies space up to
_end. Align after .bss to ensure correct alignment even if the
.bss section disappears because there are no input sections. */
. = ALIGN(32 / 8);

/*Better. */
_bss_end__ = . ; __bss_end__ = . ;

.usbram (NOLOAD):
{
__usbram_beg__ = .;
*(.dmaram)
__usbram_end__ = .;
} >usbram

.ethram (NOLOAD):
{
__ethram_beg__ = .;
*(.ethram)
__ethram_end__ = .;
} >ethram


}
. = ALIGN(32 / 8);
_end = .;
/*No correct_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;*/
__end__ = .;
PROVIDE (end = .);

Is this a bug?

RE: LPC2368 gcc eclipse demo lpc2368ld error?

Posted by Richard on December 18, 2007
To be honest I just copied this linker script from an existing example. I think your change is fine, although I don't think the original is a bug as such, just inefficient.

Regards.


[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS kernel V10.0.1 is available for immediate download. Now MIT licensed.

Video: Watch James Gosling & Richard Barry at re:Invent, Las Vegas 2017.

New FAQ page about the FreeRTOS kernel and Amazon FreeRTOS.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner