source: svn/newcon3bcm2_21bu/rockford/bsp/bcm97552/common/interrupt.h @ 22

Last change on this file since 22 was 22, checked in by phkim, 11 years ago
  1. phkim
  2. newcon3sk 를 kctv 로 브랜치 함
  • Property svn:executable set to *
File size: 3.0 KB
Line 
1#ifndef _INTERRUPT_H
2#define _INTERRUPT_H
3
4#include "bcm97312.h"
5
6#if __cplusplus
7extern "C" {
8#endif
9
10   /*=====================================================================*/
11   /* BCM7312 Interrupt Level Assignments                                 */
12   /*=====================================================================*/
13#define  PERIPH_IRQ_LEVEL               2
14
15   /*=====================================================================*/
16   /* BCM7312 External Interrupt Level Assignments                        */
17   /*=====================================================================*/
18#define  EXT_IRQ_LEVEL0                 3
19#define  EXT_IRQ_LEVEL1                 4
20#define  EXT_IRQ_LEVEL2                 5
21#define  EXT_IRQ_LEVEL3                 6
22
23   /*=====================================================================*/
24   /* Logical Peripheral Interrupt IDs                                     */
25   /*=====================================================================*/
26
27   /* DMA channel interrupt IDs */   
28#define INTERRUPT_ID_TIMER_IRQ          0x1f   
29#define INTERRUPT_ID_ADP_AUD_IRQ        0x1e 
30#define INTERRUPT_ID_BGE_PCM_IRQ        0x1d
31#define INTERRUPT_ID_ATP_C_IRQ          0x1c
32#define INTERRUPT_ID_UART_IRQ           0x1b
33#define INTERRUPT_ID_BGE_VEC_IRQ        0x1a
34#define INTERRUPT_ID_ADP_C_IRQ          0x19
35#define INTERRUPT_ID_RFM_IRQ            0x18
36#define INTERRUPT_ID_ADP_A_IRQ          0x17
37#define INTERRUPT_ID_ATP_A_IRQ          0x16
38#define INTERRUPT_ID_XPT_ICAM_IRQ       0x15
39#define INTERRUPT_ID_XPT_MSG_IRQ        0x14
40#define INTERRUPT_ID_XPT_OVFLOW_IRQ     0x13
41#define INTERRUPT_ID_XPT_STATUS_IRQ     0x12
42#define INTERRUPT_ID_MINITITAN_IRQ      0x11
43#define INTERRUPT_ID_BGE_CPU_IRQ        0x10
44#define INTERRUPT_ID_MIPS_IRQ           0x0e
45#define INTERRUPT_ID_SDS_RX1_IRQ        0x0d
46#define INTERRUPT_ID_SDS_MIPS_IRQ       0x0c
47#define INTERRUPT_ID_I2C_IRQ            0x0b
48#define INTERRUPT_ID_SPI_IRQ            0x0a
49#define INTERRUPT_ID_UPG_IRQ            0x09
50#define INTERRUPT_ID_SM_IRQ                     0x08
51#define INTERRUPT_ID_DAA_2_IRQ          0x07
52#define INTERRUPT_ID_DAA_1_IRQ          0x06
53#define INTERRUPT_ID_USB_HOST_IRQ       0x05
54#define INTERRUPT_ID_MPI_IRQ            0x01
55#define INTERRUPT_ID_DMA_IRQ            0x00
56
57#define EXT_INTERRUPT_1 0x01
58#define EXT_INTERRUPT_2 0x02
59#define EXT_INTERRUPT_3 0x04
60#define EXT_INTERRUPT_4 0x08
61
62/* trigType definitions used in BcmMapExtInterrupt */
63#define EXT_INTR_TRIG_NEG_EDGE   0x00
64#define EXT_INTR_TRIG_POS_EDGE   0x01
65#define EXT_INTR_TRIG_LOW_LEVEL  0x02
66#define EXT_INTR_TRIG_HIGH_LEVEL 0x03
67
68/* defines */
69typedef void (*FN_ISR) (void);
70
71/* externs */
72extern void BcmInterruptHandler(void);
73extern void BcmInterruptDisable(unsigned long interruptId);
74extern void BcmInterruptEnable(unsigned long interruptId);
75extern int BcmMapInterrupt(FN_ISR isr, unsigned long interruptId, int chan);
76extern void BcmInterruptSetIntc (IntControl * intc);
77extern void BcmExtInterruptHandler(unsigned long extInterrupts);
78extern int BcmMapExtInterrupt(FN_ISR isr, unsigned long extInterruptId, unsigned long trigType);
79extern void BcmExtInterruptEnable(unsigned long extInterruptId);
80extern void BcmExtInterruptDisable(unsigned long extInterruptId);
81
82#if __cplusplus
83}
84#endif
85
86#endif /* _INTERRUPT_H */
87
Note: See TracBrowser for help on using the repository browser.