OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [rtems-20020807/] [cpukit/] [score/] [include/] [rtems/] [score/] [interr.h] - Blame information for rev 1026

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1026 ivang
/*  interr.h
2
 *
3
 *  This include file contains constants and prototypes related
4
 *  to the Internal Error Handler.
5
 *
6
 *
7
 *  COPYRIGHT (c) 1989-1999.
8
 *  On-Line Applications Research Corporation (OAR).
9
 *
10
 *  The license and distribution terms for this file may be
11
 *  found in the file LICENSE in this distribution or at
12
 *  http://www.OARcorp.com/rtems/license.html.
13
 *
14
 *  interr.h,v 1.11 2000/01/05 22:19:21 joel Exp
15
 */
16
 
17
#ifndef __RTEMS_INTERNAL_ERROR_h
18
#define __RTEMS_INTERNAL_ERROR_h
19
 
20
#ifdef __cplusplus
21
extern "C" {
22
#endif
23
 
24
/*
25
 *  This type lists the possible sources from which an error
26
 *  can be reported.
27
 */
28
 
29
typedef enum {
30
  INTERNAL_ERROR_CORE,
31
  INTERNAL_ERROR_RTEMS_API,
32
  INTERNAL_ERROR_POSIX_API,
33
  INTERNAL_ERROR_ITRON_API
34
} Internal_errors_Source;
35
 
36
/*
37
 *  A list of errors which are generated internally by the executive core.
38
 */
39
 
40
typedef enum {
41
  INTERNAL_ERROR_NO_CONFIGURATION_TABLE,
42
  INTERNAL_ERROR_NO_CPU_TABLE,
43
  INTERNAL_ERROR_INVALID_WORKSPACE_ADDRESS,
44
  INTERNAL_ERROR_TOO_LITTLE_WORKSPACE,
45
  INTERNAL_ERROR_WORKSPACE_ALLOCATION,
46
  INTERNAL_ERROR_INTERRUPT_STACK_TOO_SMALL,
47
  INTERNAL_ERROR_THREAD_EXITTED,
48
  INTERNAL_ERROR_INCONSISTENT_MP_INFORMATION,
49
  INTERNAL_ERROR_INVALID_NODE,
50
  INTERNAL_ERROR_NO_MPCI,
51
  INTERNAL_ERROR_BAD_PACKET,
52
  INTERNAL_ERROR_OUT_OF_PACKETS,
53
  INTERNAL_ERROR_OUT_OF_GLOBAL_OBJECTS,
54
  INTERNAL_ERROR_OUT_OF_PROXIES,
55
  INTERNAL_ERROR_INVALID_GLOBAL_ID,
56
  INTERNAL_ERROR_BAD_STACK_HOOK,
57
  INTERNAL_ERROR_BAD_ATTRIBUTES
58
} Internal_errors_Core_list;
59
 
60
/*
61
 *  This type holds the fatal error information.
62
 */
63
 
64
typedef struct {
65
  Internal_errors_Source  the_source;
66
  boolean                 is_internal;
67
  unsigned32              the_error;
68
} Internal_errors_Information;
69
 
70
/*
71
 *  When a fatal error occurs, the error information is stored here.
72
 */
73
 
74
SCORE_EXTERN Internal_errors_Information Internal_errors_What_happened;
75
 
76
/*
77
 *  _Internal_error_Occurred
78
 *
79
 *  DESCRIPTION:
80
 *
81
 *  This routine is invoked when the application or the executive itself
82
 *  determines that a fatal error has occurred.
83
 */
84
 
85
void volatile _Internal_error_Occurred(
86
  Internal_errors_Source  the_source,
87
  boolean                 is_internal,
88
  unsigned32              the_error
89
);
90
 
91
#ifdef __cplusplus
92
}
93
#endif
94
 
95
#endif
96
/* end of include file */

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.