summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/shared/include/bootcard.h
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/shared/include/bootcard.h
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 'c/src/lib/libbsp/shared/include/bootcard.h')
-rw-r--r--c/src/lib/libbsp/shared/include/bootcard.h75
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 */