source: rtems/cpukit/score/src/isr.c @ 5e9b32b

4.104.114.84.95
Last change on this file since 5e9b32b was 5e9b32b, checked in by Joel Sherrill <joel.sherrill@…>, on 09/26/95 at 19:27:15

posix support initially added

  • Property mode set to 100644
File size: 1.4 KB
Line 
1/*
2 *  ISR Handler
3 *
4 *
5 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
6 *  On-Line Applications Research Corporation (OAR).
7 *  All rights assigned to U.S. Government, 1994.
8 *
9 *  This material may be reproduced by or for the U.S. Government pursuant
10 *  to the copyright license under the clause at DFARS 252.227-7013.  This
11 *  notice must appear in all copies of this file and its derivatives.
12 *
13 *  $Id$
14 */
15
16#include <rtems/system.h>
17#include <rtems/score/isr.h>
18#include <rtems/score/stack.h>
19#include <rtems/score/interr.h>
20#include <rtems/score/wkspace.h>
21
22/*  _ISR_Handler_initialization
23 *
24 *  This routine initializes the ISR handler.
25 *
26 *  Input parameters: NONE
27 *
28 *  Output parameters: NONE
29 */
30
31void _ISR_Handler_initialization( void )
32{
33  _ISR_Signals_to_thread_executing = FALSE;
34
35  _ISR_Nest_level = 0;
36
37#if ( CPU_ALLOCATE_INTERRUPT_STACK == TRUE )
38
39  if ( _CPU_Table.interrupt_stack_size < STACK_MINIMUM_SIZE )
40    _Internal_error_Occurred(
41      INTERNAL_ERROR_CORE,
42      TRUE,
43      INTERNAL_ERROR_INTERRUPT_STACK_TOO_SMALL
44    );
45
46  _CPU_Interrupt_stack_low =
47    _Workspace_Allocate_or_fatal_error( _CPU_Table.interrupt_stack_size );
48
49  _CPU_Interrupt_stack_high = _Addresses_Add_offset(
50    _CPU_Interrupt_stack_low,
51    _CPU_Table.interrupt_stack_size
52  );
53
54#endif
55
56#if ( CPU_HAS_HARDWARE_INTERRUPT_STACK == TRUE )
57  _CPU_Install_interrupt_stack();
58#endif
59
60}
Note: See TracBrowser for help on using the repository browser.