source: rtems/cpukit/sapi/include/rtems/init.h @ b96254f

4.104.114.84.95
Last change on this file since b96254f was b96254f, checked in by Ralf Corsepius <ralf.corsepius@…>, on Nov 21, 2004 at 7:42:11 AM

Add doxygen preamble.

  • Property mode set to 100644
File size: 2.8 KB
Line 
1/**
2 * @file rtems/init.h
3 *
4 *
5 *  This include file contains all the constants and structures associated
6 *  with the Initialization Manager.  This manager is responsible for
7 *  initializing RTEMS, creating and starting all configured initialization
8 *  tasks, invoking the initialization routine for each user-supplied device
9 *  driver, and initializing the optional multiprocessor layer.
10 *
11 *  This manager provides directives to:
12 *
13 *     + initialize the RTEMS executive
14 *     + shutdown the RTEMS executive
15 */
16 
17/*
18 *  COPYRIGHT (c) 1989-1999.
19 *  On-Line Applications Research Corporation (OAR).
20 *
21 *  The license and distribution terms for this file may be
22 *  found in the file LICENSE in this distribution or at
23 *  http://www.rtems.com/license/LICENSE.
24 *
25 *  $Id$
26 */
27
28#ifndef __RTEMS_INIT_h
29#define __RTEMS_INIT_h
30
31#ifdef __cplusplus
32extern "C" {
33#endif
34
35#include <rtems/rtems/types.h>
36#include <rtems/config.h>
37#include <rtems/rtems/intr.h>
38
39/*
40 *  The following defines the default Multiprocessing Configuration
41 *  Table.  This table is used in a single processor system.
42 */
43
44extern const rtems_multiprocessing_table
45  _Initialization_Default_multiprocessing_table;
46
47/*
48 *  rtems_initialize_executive
49 *
50 *  DESCRIPTION:
51 *
52 *  This routine implements the rtems_initialize_executive directive.  This
53 *  directive is invoked at system startup to initialize the RTEMS
54 *  multitasking environment.
55 */
56
57void rtems_initialize_executive(
58  rtems_configuration_table *configuration_table,
59  rtems_cpu_table           *cpu_table
60);
61
62/*
63 *  rtems_initialize_executive_early
64 *
65 *  DESCRIPTION:
66 *
67 *  This routine implements the early portion of rtems_initialize_executive
68 *  directive up to the pretasking hook. This directive is invoked at system
69 *  startup to initialize the RTEMS multitasking environment.
70 */
71
72rtems_interrupt_level rtems_initialize_executive_early(
73  rtems_configuration_table *configuration_table,
74  rtems_cpu_table           *cpu_table
75);
76
77/*
78 *  rtems_initialize_executive_late
79 *
80 *  DESCRIPTION:
81 *
82 *  This routine implements the early portion of rtems_initialize_executive
83 *  directive up to the pretasking hook. This directive is invoked at system
84 *  startup to initialize the RTEMS multitasking environment.
85 */
86
87void rtems_initialize_executive_late(
88  rtems_interrupt_level bsp_level
89);
90
91/*
92 *  rtems_shutdown_executive
93 *
94 *  DESCRIPTION:
95 *
96 *  This routine implements the rtems_shutdown_executive directive.  The
97 *  invocation of this directive results in the RTEMS environment being
98 *  shutdown and multitasking halted.  From the application's perspective,
99 *  invocation of this directive results in the rtems_initialize_executive
100 *  directive exitting to the startup code which invoked it.
101 */
102
103void rtems_shutdown_executive(
104  uint32_t   result
105);
106
107#ifdef __cplusplus
108}
109#endif
110
111#endif
112/* end of include file */
Note: See TracBrowser for help on using the repository browser.