summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/shared/m68kbspgetworkarea.c
diff options
context:
space:
mode:
authorThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2008-07-24 14:52:55 +0000
committerThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2008-07-24 14:52:55 +0000
commitd4886a069506e9c69086d28c578db80abc37976d (patch)
tree4f35ea3a64cb9e1b743a32ea93606af940cfc3d2 /c/src/lib/libbsp/m68k/shared/m68kbspgetworkarea.c
parentNew function rtems_interrupt_handler_iterate() (diff)
downloadrtems-d4886a069506e9c69086d28c578db80abc37976d.tar.bz2
Changed bsp_get_workarea() to bsp_get_work_area() and
added support for an optional separate heap area.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/m68k/shared/m68kbspgetworkarea.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/c/src/lib/libbsp/m68k/shared/m68kbspgetworkarea.c b/c/src/lib/libbsp/m68k/shared/m68kbspgetworkarea.c
index 8457399590..61e9efedfe 100644
--- a/c/src/lib/libbsp/m68k/shared/m68kbspgetworkarea.c
+++ b/c/src/lib/libbsp/m68k/shared/m68kbspgetworkarea.c
@@ -1,5 +1,5 @@
/*
- * This routine is an implementation of the bsp_get_workarea()
+ * This routine is an implementation of the bsp_get_work_area()
* that can be used by all m68k BSPs following linkcmds conventions
* regarding heap, stack, and workspace allocation.
*
@@ -14,16 +14,18 @@
*/
#include <bsp.h>
+#include <bsp/bootcard.h>
/*
* 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_workarea(
- void **workarea_base,
- size_t *workarea_size,
- size_t *requested_heap_size
+void bsp_get_work_area(
+ void **work_area_start,
+ size_t *work_area_size,
+ void **heap_start,
+ size_t *heap_size
)
{
extern char _RamBase[];
@@ -31,8 +33,9 @@ void bsp_get_workarea(
extern char _HeapSize[];
extern char _RamSize[];
- *workarea_base = _WorkspaceBase;
- *workarea_size = (unsigned long)_RamBase + (unsigned long) _RamSize -
+ *work_area_start = _WorkspaceBase;
+ *work_area_size = (unsigned long)_RamBase + (unsigned long) _RamSize -
(unsigned long)_WorkspaceBase;
- *requested_heap_size = (size_t) _HeapSize;
+ *heap_start = BSP_BOOTCARD_HEAP_USES_WORK_AREA;
+ *heap_size = (size_t) _HeapSize;
}