RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
irq.h
Go to the documentation of this file.
1
7/* irq.h
8 *
9 * This include file describe the data structure and the functions implemented
10 * by rtems to write interrupt handlers.
11 *
12 * CopyRight (C) 1998 valette@crf.canon.fr
13 *
14 * This code is heavilly inspired by the public specification of STREAM V2
15 * that can be found at :
16 *
17 * <http://www.chorus.com/Documentation/index.html> by following
18 * the STREAM API Specification Document link.
19 *
20 * The license and distribution terms for this file may be
21 * found in the file LICENSE in this distribution or at
22 * http://www.rtems.org/license/LICENSE.
23 */
24
32#ifndef _IRQ_H_
33#define _IRQ_H_
34
35#ifdef __cplusplus
36extern "C" {
37#endif
38
43#include <bsp/irq_asm.h>
44#include <rtems.h>
45#define BSP_SHARED_HANDLER_SUPPORT 1
46#include <rtems/irq.h>
47#include <rtems/irq-extension.h>
48
49/*-------------------------------------------------------------------------+
50| Constants
51+--------------------------------------------------------------------------*/
52
54#define BSP_IRQ_VECTOR_BASE BSP_ASM_IRQ_VECTOR_BASE
55#define BSP_IRQ_LINES_NUMBER 16
56#define BSP_IRQ_MAX_ON_i8259A (BSP_IRQ_LINES_NUMBER - 1)
57
58/*
59 * Define the number of valid vectors. This is different to the number of IRQ
60 * signals supported. Use this value to allocation vector data or range check.
61 */
62#define BSP_IRQ_VECTOR_NUMBER 17
63#define BSP_IRQ_VECTOR_LOWEST_OFFSET 0
64#define BSP_IRQ_VECTOR_MAX_OFFSET (BSP_IRQ_VECTOR_NUMBER - 1)
65
72#define BSP_PERIODIC_TIMER 0 /* fixed on all builds of PC */
73#define BSP_KEYBOARD 1 /* fixed on all builds of PC */
74#define BSP_UART_COM2_IRQ 3 /* fixed for ISA bus */
75#define BSP_UART_COM1_IRQ 4 /* fixed for ISA bus */
76#define BSP_UART_COM3_IRQ 5
77#define BSP_UART_COM4_IRQ 6
78#define BSP_RT_TIMER1 8
79#define BSP_RT_TIMER3 10
80#define BSP_SMP_IPI 16 /* not part of the ATPIC */
81
82#define BSP_INTERRUPT_VECTOR_MIN BSP_IRQ_VECTOR_LOWEST_OFFSET
83#define BSP_INTERRUPT_VECTOR_MAX BSP_IRQ_VECTOR_MAX_OFFSET
84
88typedef unsigned short rtems_i8259_masks;
89
92#ifdef __cplusplus
93}
94#endif
95
96#endif /* _IRQ_H_ */
unsigned short rtems_i8259_masks
Type definition for RTEMS managed interrupts.
Definition: irq.h:88
Header file for the Interrupt Manager Extension.