RTEMS 6.1-rc1
i8259.h File Reference

Data structure and functions used to control i8259 chip. More...

Go to the source code of this file.

Macros

8259 edge/level control definitions at VIA
#define ISA8259_M_ELCR   0x4d0
 
#define ISA8259_S_ELCR   0x4d1
 
#define ELCRS_INT15_LVL   0x80
 
#define ELCRS_INT14_LVL   0x40
 
#define ELCRS_INT13_LVL   0x20
 
#define ELCRS_INT12_LVL   0x10
 
#define ELCRS_INT11_LVL   0x08
 
#define ELCRS_INT10_LVL   0x04
 
#define ELCRS_INT9_LVL   0x02
 
#define ELCRS_INT8_LVL   0x01
 
#define ELCRM_INT7_LVL   0x80
 
#define ELCRM_INT6_LVL   0x40
 
#define ELCRM_INT5_LVL   0x20
 
#define ELCRM_INT4_LVL   0x10
 
#define ELCRM_INT3_LVL   0x8
 
#define ELCRM_INT2_LVL   0x4
 
#define ELCRM_INT1_LVL   0x2
 
#define ELCRM_INT0_LVL   0x1
 
PIC's command and mask registers
#define PIC_MASTER_COMMAND_IO_PORT   0x20
 Master PIC command register *‍/.
 
#define PIC_SLAVE_COMMAND_IO_PORT   0xa0
 Slave PIC command register *‍/.
 
#define PIC_MASTER_IMR_IO_PORT   0x21
 Master PIC Interrupt Mask Register *‍/.
 
#define PIC_SLAVE_IMR_IO_PORT   0xa1
 Slave PIC Interrupt Mask Register *‍/.
 
Command for specific EOI (End Of Interrupt): Interrupt acknowledge
#define PIC_EOSI   0x60
 End of Specific Interrupt (EOSI) *‍/.
 
#define SLAVE_PIC_EOSI   0x62
 End of Specific Interrupt (EOSI) for cascade *‍/.
 
#define PIC_EOI   0x20
 Generic End of Interrupt (EOI) *‍/.
 

Functions

Function Prototypes
void BSP_i8259s_init (void)
 
int BSP_irq_disable_at_i8259s (const rtems_irq_number irqLine)
 function to disable a particular irq at 8259 level. More...
 
int BSP_irq_enable_at_i8259s (const rtems_irq_number irqLine)
 function to enable a particular irq at 8259 level. More...
 
int BSP_irq_ack_at_i8259s (const rtems_irq_number irqLine)
 function to acknowledge a particular irq at 8259 level. More...
 
int BSP_irq_enabled_at_i8259s (const rtems_irq_number irqLine)
 function to check if a particular irq is enabled at 8259 level.
 
int BSP_i8259s_int_process (void)
 
void BSP_rtems_irq_mng_init (unsigned cpuId)
 

Type definition for RTEMS managed interrupts

typedef unsigned short rtems_i8259_masks
 
volatile rtems_i8259_masks i8259s_cache
 

Detailed Description

Data structure and functions used to control i8259 chip.