diff options
author | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2008-07-24 14:52:55 +0000 |
---|---|---|
committer | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2008-07-24 14:52:55 +0000 |
commit | d4886a069506e9c69086d28c578db80abc37976d (patch) | |
tree | 4f35ea3a64cb9e1b743a32ea93606af940cfc3d2 /c/src/lib/libbsp/shared/include/bootcard.h | |
parent | New function rtems_interrupt_handler_iterate() (diff) | |
download | rtems-d4886a069506e9c69086d28c578db80abc37976d.tar.bz2 |
Changed bsp_get_workarea() to bsp_get_work_area() and
added support for an optional separate heap area.
Diffstat (limited to 'c/src/lib/libbsp/shared/include/bootcard.h')
-rw-r--r-- | c/src/lib/libbsp/shared/include/bootcard.h | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/shared/include/bootcard.h b/c/src/lib/libbsp/shared/include/bootcard.h new file mode 100644 index 0000000000..a0720cda7f --- /dev/null +++ b/c/src/lib/libbsp/shared/include/bootcard.h @@ -0,0 +1,75 @@ +/** + * @file + * + * @ingroup bsp_shared + * + * @brief Header file for basic BSP startup functions. + */ + +/* + * Copyright (c) 2008 + * Embedded Brains GmbH + * Obere Lagerstr. 30 + * D-82178 Puchheim + * Germany + * rtems@embedded-brains.de + * + * 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$ + */ + +/** + * @defgroup bsp_shared Shared BSP Code + */ + +#ifndef LIBBSP_SHARED_BOOTCARD_H +#define LIBBSP_SHARED_BOOTCARD_H + +#include <stddef.h> +#include <stdint.h> + +#include <bspopts.h> /* for BSP_BOOTCARD_HANDLES_RAM_ALLOCATION */ + +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +void bsp_start( void); + +void bsp_pretasking_hook( void); + +void bsp_predriver_hook( void); + +void bsp_postdriver_hook( void); + +void bsp_cleanup( void); + +#ifdef BSP_BOOTCARD_HANDLES_RAM_ALLOCATION + #define BSP_BOOTCARD_HEAP_USES_WORK_AREA NULL + + #define BSP_BOOTCARD_HEAP_SIZE_DEFAULT 0 + + void bsp_get_work_area( + void **work_area_start, + size_t *work_area_size, + void **heap_start, + size_t *heap_size + ); +#endif + +int boot_card( int argc, char **argv, char **envp); + +/* + * FIXME: Nearly every BSP declares this function in the BSP startup file + * separately and uses the implementation in bsplibc.c. + * Why differ the parameter types from RTEMS_Malloc_Initialize()? + */ +void bsp_libc_init( void *heap_start, uint32_t heap_size, int use_sbrk); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* LIBBSP_SHARED_BOOTCARD_H */ |