[PATCH] libbsp: refactored sparc/shared/bspgetworkarea.c to sparc/shared/startup/bspgetworkarea.c
Gedare Bloom
gedare at rtems.org
Tue Dec 3 14:25:55 UTC 2013
Thanks, committed.
On Tue, Dec 3, 2013 at 2:30 AM, Nick Withers <nick at nickwithers.com> wrote:
> From: Daniel Ramirez <javamonn at gmail.com>
>
> * 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 988f3ec..18a1504 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 ae6dfb0..c05e021 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 2612438..302b8c4 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 d799800..0000000
> --- 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 <bsp.h>
> -#include <bsp/bootcard.h>
> -#ifdef BSP_GET_WORK_AREA_DEBUG
> - #include <rtems/bspIo.h>
> -#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 0000000..d799800
> --- /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 <bsp.h>
> +#include <bsp/bootcard.h>
> +#ifdef BSP_GET_WORK_AREA_DEBUG
> + #include <rtems/bspIo.h>
> +#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);
> +}
> --
> 1.8.3.1
>
>
>
>
> _______________________________________________
> rtems-devel mailing list
> rtems-devel at rtems.org
> http://www.rtems.org/mailman/listinfo/rtems-devel
More information about the devel
mailing list