2008-09-16 Joel Sherrill <joel.sherrill@oarcorp.com>

* Makefile.am, startup/linkcmds: Use top level shared
	bsp_get_work_area() implementation.
	* startup/bspgetworkarea.c: Removed.
This commit is contained in:
Joel Sherrill
2008-09-16 21:44:34 +00:00
parent 284ed06a28
commit 5053048395
4 changed files with 14 additions and 39 deletions

View File

@@ -1,3 +1,9 @@
2008-09-16 Joel Sherrill <joel.sherrill@oarcorp.com>
* Makefile.am, startup/linkcmds: Use top level shared
bsp_get_work_area() implementation.
* startup/bspgetworkarea.c: Removed.
2008-09-15 Joel Sherrill <joel.sherrill@oarcorp.com>
* Makefile.am, configure.ac, startup/bspstart.c, startup/linkcmds: Add

View File

@@ -32,7 +32,7 @@ startup_SOURCES = ../../shared/bspclean.c ../../shared/bsplibc.c \
../../shared/bsppost.c ../../shared/bsppredriverhook.c \
startup/bspstart.c ../../shared/bootcard.c startup/iss555.c \
../../shared/sbrk.c ../../shared/gnatinstallhandler.c startup/start.S \
../../shared/bsppretaskinghook.c startup/bspgetworkarea.c
../../shared/bsppretaskinghook.c ../../shared/bspgetworkarea.c
tm27supp_SOURCES = startup/tm27supp.c
noinst_LIBRARIES = libbsp.a

View File

@@ -1,33 +0,0 @@
/*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <bsp.h>
#include <bsp/bootcard.h>
#include <stdint.h>
extern void *RamEnd;
extern void *WorkspaceBase;
/*
* This method returns the base address and size of the area which
* is to be allocated between the RTEMS Workspace and the C Program
* Heap.
*/
void bsp_get_work_area(
void **work_area_start,
size_t *work_area_size,
void **heap_start,
size_t *heap_size
)
{
*work_area_start = (void *)&WorkspaceBase;
*work_area_size = (uintptr_t)&RamEnd - (uintptr_t)&WorkspaceBase;
*heap_start = BSP_BOOTCARD_HEAP_USES_WORK_AREA;
*heap_size = BSP_BOOTCARD_HEAP_SIZE_DEFAULT;
}

View File

@@ -28,6 +28,9 @@ int_ram_org = 0x003F9800; /* base of internal RAM */
int_ram_top = 0x00400000; /* top of internal RAM */
ext_ram_size = 0x00080000; /* size of external RAM */
RamBase = DEFINED(_RamBase) ? RamBase : 0x003F9800;
RamSize = DEFINED(_RamSize) ? RamSize : 0x00486800;
HeapSize = DEFINED(_HeapSize) ? HeapSize : 0x0;
SECTIONS
{
@@ -235,17 +238,16 @@ SECTIONS
intrStack = .;
PROVIDE(intrStackPtr = intrStack);
WorkspaceBase = .;
/*
* Heap
* Work Area
*
* The heap is configured at run-time to use all available memory. It
* The Work Area is configured at run-time to use all available memory. It
* begins just after the end of the Workspace and continues to the end of
* the external RAM.
*/
. = DEFINED(RTEMS_DEBUG) ? 0 + ext_ram_size : int_ram_top + ext_ram_size;
RamEnd = .;
WorkAreaBase = .;
/*
* Internal I/O devices