From b9287a15aaabbfcc19994bc9751a07b114a17a5a Mon Sep 17 00:00:00 2001 From: Daniel Ramirez Date: Tue, 3 Dec 2013 18:30:39 +1100 Subject: libbsp: refactored sparc/shared/bspgetworkarea.c to sparc/shared/startup/bspgetworkarea.c * refactored sparc/shared/bspgetworkarea.c to sparc/shared/startup/bspgetworkarea.c --- c/src/lib/libbsp/sparc/erc32/Makefile.am | 2 +- c/src/lib/libbsp/sparc/leon2/Makefile.am | 2 +- c/src/lib/libbsp/sparc/leon3/Makefile.am | 2 +- c/src/lib/libbsp/sparc/shared/bspgetworkarea.c | 67 ---------------------- .../libbsp/sparc/shared/startup/bspgetworkarea.c | 67 ++++++++++++++++++++++ 5 files changed, 70 insertions(+), 70 deletions(-) delete mode 100644 c/src/lib/libbsp/sparc/shared/bspgetworkarea.c create mode 100644 c/src/lib/libbsp/sparc/shared/startup/bspgetworkarea.c diff --git a/c/src/lib/libbsp/sparc/erc32/Makefile.am b/c/src/lib/libbsp/sparc/erc32/Makefile.am index 988f3ec88a..18a1504807 100644 --- a/c/src/lib/libbsp/sparc/erc32/Makefile.am +++ b/c/src/lib/libbsp/sparc/erc32/Makefile.am @@ -29,7 +29,7 @@ libbsp_a_SOURCES = # startup libbsp_a_SOURCES += ../../shared/bspclean.c ../../shared/bsplibc.c \ - startup/bsppredriver.c ../../sparc/shared/bspgetworkarea.c \ + startup/bsppredriver.c ../../sparc/shared/startup/bspgetworkarea.c \ ../../sparc/shared/bsppretaskinghook.c ../../shared/bsppost.c \ ../../shared/bspstart.c ../../shared/bootcard.c ../../shared/bspinit.c \ ../../shared/sbrk.c startup/setvec.c startup/spurious.c \ diff --git a/c/src/lib/libbsp/sparc/leon2/Makefile.am b/c/src/lib/libbsp/sparc/leon2/Makefile.am index ae6dfb0155..c05e0217a8 100644 --- a/c/src/lib/libbsp/sparc/leon2/Makefile.am +++ b/c/src/lib/libbsp/sparc/leon2/Makefile.am @@ -48,7 +48,7 @@ libbsp_a_SOURCES = libbsp_a_SOURCES += ../../shared/bspclean.c ../../shared/bsplibc.c \ ../../shared/bsppost.c startup/bsppredriver.c \ startup/bspstart.c ../../sparc/shared/bsppretaskinghook.c \ - ../../sparc/shared/bspgetworkarea.c ../../shared/bootcard.c \ + ../../sparc/shared/startup/bspgetworkarea.c ../../shared/bootcard.c \ ../../shared/sbrk.c startup/setvec.c startup/spurious.c startup/bspidle.c \ ../../shared/bspinit.c startup/bspdelay.c \ ../../sparc/shared/startup/early_malloc.c diff --git a/c/src/lib/libbsp/sparc/leon3/Makefile.am b/c/src/lib/libbsp/sparc/leon3/Makefile.am index 261243847a..302b8c413c 100644 --- a/c/src/lib/libbsp/sparc/leon3/Makefile.am +++ b/c/src/lib/libbsp/sparc/leon3/Makefile.am @@ -35,7 +35,7 @@ libbsp_a_SOURCES = libbsp_a_SOURCES += ../../shared/bspclean.c ../../shared/bsplibc.c \ ../../shared/bsppost.c ../../shared/bootcard.c startup/bspstart.c \ ../../sparc/shared/bsppretaskinghook.c startup/bsppredriver.c \ - ../../sparc/shared/bspgetworkarea.c ../../shared/sbrk.c startup/setvec.c \ + ../../sparc/shared/startup/bspgetworkarea.c ../../shared/sbrk.c startup/setvec.c \ startup/spurious.c startup/bspidle.S startup/bspdelay.c \ ../../shared/bspinit.c ../../sparc/shared/startup/early_malloc.c diff --git a/c/src/lib/libbsp/sparc/shared/bspgetworkarea.c b/c/src/lib/libbsp/sparc/shared/bspgetworkarea.c deleted file mode 100644 index d799800d61..0000000000 --- a/c/src/lib/libbsp/sparc/shared/bspgetworkarea.c +++ /dev/null @@ -1,67 +0,0 @@ -/* - * This set of routines are the BSP specific initialization - * support routines. - * - * COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). - * - * 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. - */ - -/* #define BSP_GET_WORK_AREA_DEBUG */ -#include -#include -#ifdef BSP_GET_WORK_AREA_DEBUG - #include -#endif - -/* Tells us where to put the workspace in case remote debugger is present. */ -extern uint32_t rdb_start; - -/* Must be aligned to 8, _end is aligned to 8 */ -unsigned int early_mem = (unsigned int)&end; - -/* - * 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_work_area_initialize(void) -{ - /* must be identical to STACK_SIZE in start.S */ - #define STACK_SIZE (16 * 1024) - - /* Early dynamic memory allocator is placed just above _end */ - void *work_area_start = (void *)early_mem; - uintptr_t work_area_size = - (uintptr_t)rdb_start - (uintptr_t)early_mem - STACK_SIZE; - early_mem = ~0; /* Signal bsp_early_malloc not to be used anymore */ - - /* - * The following may be helpful in debugging what goes wrong when - * you are allocating the Work Area in a new BSP. - */ - #ifdef BSP_GET_WORK_AREA_DEBUG - { - void *sp = __builtin_frame_address(0); - void *end = *work_area_start + *work_area_size; - printk( - "work_area_start = 0x%p\n" - "work_area_size = %d 0x%08x\n" - "end = 0x%p\n" - "current stack pointer = 0x%p%s\n", - work_area_start, - work_area_size, /* decimal */ - work_area_size, /* hexadecimal */ - end, - sp, - ((sp >= *work_area_start && sp <= end) ? " OVERLAPS!" : "") - ); - printk( "rdb_start = 0x%08x\n", rdb_start ); - } - #endif - - bsp_work_area_initialize_default(work_area_start, work_area_size); -} diff --git a/c/src/lib/libbsp/sparc/shared/startup/bspgetworkarea.c b/c/src/lib/libbsp/sparc/shared/startup/bspgetworkarea.c new file mode 100644 index 0000000000..d799800d61 --- /dev/null +++ b/c/src/lib/libbsp/sparc/shared/startup/bspgetworkarea.c @@ -0,0 +1,67 @@ +/* + * This set of routines are the BSP specific initialization + * support routines. + * + * COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). + * + * 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. + */ + +/* #define BSP_GET_WORK_AREA_DEBUG */ +#include +#include +#ifdef BSP_GET_WORK_AREA_DEBUG + #include +#endif + +/* Tells us where to put the workspace in case remote debugger is present. */ +extern uint32_t rdb_start; + +/* Must be aligned to 8, _end is aligned to 8 */ +unsigned int early_mem = (unsigned int)&end; + +/* + * 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_work_area_initialize(void) +{ + /* must be identical to STACK_SIZE in start.S */ + #define STACK_SIZE (16 * 1024) + + /* Early dynamic memory allocator is placed just above _end */ + void *work_area_start = (void *)early_mem; + uintptr_t work_area_size = + (uintptr_t)rdb_start - (uintptr_t)early_mem - STACK_SIZE; + early_mem = ~0; /* Signal bsp_early_malloc not to be used anymore */ + + /* + * The following may be helpful in debugging what goes wrong when + * you are allocating the Work Area in a new BSP. + */ + #ifdef BSP_GET_WORK_AREA_DEBUG + { + void *sp = __builtin_frame_address(0); + void *end = *work_area_start + *work_area_size; + printk( + "work_area_start = 0x%p\n" + "work_area_size = %d 0x%08x\n" + "end = 0x%p\n" + "current stack pointer = 0x%p%s\n", + work_area_start, + work_area_size, /* decimal */ + work_area_size, /* hexadecimal */ + end, + sp, + ((sp >= *work_area_start && sp <= end) ? " OVERLAPS!" : "") + ); + printk( "rdb_start = 0x%08x\n", rdb_start ); + } + #endif + + bsp_work_area_initialize_default(work_area_start, work_area_size); +} -- cgit v1.2.3