blob: 2f7dd99e7d72d42d79e7659b105c0a9a10c611bb [file] [log] [blame]
Aubrey Li65458982007-03-20 18:16:24 +08001/*
2 * linux/arch/$(ARCH)/platform/$(PLATFORM)/irq.c
3 *
4 * This file is subject to the terms and conditions of the GNU General Public
5 * License. See the file COPYING in the main directory of this archive
6 * for more details.
7 *
8 * Changed by HuTao Apr18, 2003
9 *
10 * Copyright was missing when I got the code so took from MIPS arch ...MaTed---
11 * Copyright (C) 1994 by Waldorf GMBH, written by Ralf Baechle
12 * Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001 by Ralf Baechle
13 *
14 * Adapted for BlackFin (ADI) by Ted Ma <mated@sympatico.ca>
15 * Copyright (c) 2002 Arcturus Networks Inc. (www.arcturusnetworks.com)
16 * Copyright (c) 2002 Lineo, Inc. <mattw@lineo.com>
17 *
18 * Adapted for BlackFin BF533 by Bas Vermeulen <bas@buyways.nl>
19 * Copyright (c) 2003 BuyWays B.V. (www.buyways.nl)
20 * Copyright (c) 2004 LG Soft India.
21 * Copyright (c) 2004 HHTech.
22 *
23 * Adapted for BlackFin BF561 by Bas Vermeulen <bas@buyways.nl>
24 * Copyright (c) 2005 BuyWays B.V. (www.buyways.nl)
25 */
26
27#ifndef _BF561_IRQ_H_
28#define _BF561_IRQ_H_
29
30/*
31 * Interrupt source definitions:
32 * Event Source Core Event Name IRQ No
33 * Emulation Events EMU 0
34 * Reset RST 1
35 * NMI NMI 2
36 * Exception EVX 3
37 * Reserved -- 4
38 * Hardware Error IVHW 5
39 * Core Timer IVTMR 6
40 *
41 * PLL Wakeup Interrupt IVG7 7
42 * DMA1 Error (generic) IVG7 8
43 * DMA2 Error (generic) IVG7 9
44 * IMDMA Error (generic) IVG7 10
45 * PPI1 Error Interrupt IVG7 11
46 * PPI2 Error Interrupt IVG7 12
47 * SPORT0 Error Interrupt IVG7 13
48 * SPORT1 Error Interrupt IVG7 14
49 * SPI Error Interrupt IVG7 15
50 * UART Error Interrupt IVG7 16
51 * Reserved Interrupt IVG7 17
52 *
53 * DMA1 0 Interrupt(PPI1) IVG8 18
54 * DMA1 1 Interrupt(PPI2) IVG8 19
55 * DMA1 2 Interrupt IVG8 20
56 * DMA1 3 Interrupt IVG8 21
57 * DMA1 4 Interrupt IVG8 22
58 * DMA1 5 Interrupt IVG8 23
59 * DMA1 6 Interrupt IVG8 24
60 * DMA1 7 Interrupt IVG8 25
61 * DMA1 8 Interrupt IVG8 26
62 * DMA1 9 Interrupt IVG8 27
63 * DMA1 10 Interrupt IVG8 28
64 * DMA1 11 Interrupt IVG8 29
65 *
66 * DMA2 0 (SPORT0 RX) IVG9 30
67 * DMA2 1 (SPORT0 TX) IVG9 31
68 * DMA2 2 (SPORT1 RX) IVG9 32
69 * DMA2 3 (SPORT2 TX) IVG9 33
70 * DMA2 4 (SPI) IVG9 34
71 * DMA2 5 (UART RX) IVG9 35
72 * DMA2 6 (UART TX) IVG9 36
73 * DMA2 7 Interrupt IVG9 37
74 * DMA2 8 Interrupt IVG9 38
75 * DMA2 9 Interrupt IVG9 39
76 * DMA2 10 Interrupt IVG9 40
77 * DMA2 11 Interrupt IVG9 41
78 *
79 * TIMER 0 Interrupt IVG10 42
80 * TIMER 1 Interrupt IVG10 43
81 * TIMER 2 Interrupt IVG10 44
82 * TIMER 3 Interrupt IVG10 45
83 * TIMER 4 Interrupt IVG10 46
84 * TIMER 5 Interrupt IVG10 47
85 * TIMER 6 Interrupt IVG10 48
86 * TIMER 7 Interrupt IVG10 49
87 * TIMER 8 Interrupt IVG10 50
88 * TIMER 9 Interrupt IVG10 51
89 * TIMER 10 Interrupt IVG10 52
90 * TIMER 11 Interrupt IVG10 53
91 *
92 * Programmable Flags0 A (8) IVG11 54
93 * Programmable Flags0 B (8) IVG11 55
94 * Programmable Flags1 A (8) IVG11 56
95 * Programmable Flags1 B (8) IVG11 57
96 * Programmable Flags2 A (8) IVG11 58
97 * Programmable Flags2 B (8) IVG11 59
98 *
99 * MDMA1 0 write/read INT IVG8 60
100 * MDMA1 1 write/read INT IVG8 61
101 *
102 * MDMA2 0 write/read INT IVG9 62
103 * MDMA2 1 write/read INT IVG9 63
104 *
105 * IMDMA 0 write/read INT IVG12 64
106 * IMDMA 1 write/read INT IVG12 65
107 *
108 * Watch Dog Timer IVG13 66
109 *
110 * Reserved interrupt IVG7 67
111 * Reserved interrupt IVG7 68
112 * Supplemental interrupt 0 IVG7 69
113 * supplemental interrupt 1 IVG7 70
114 *
115 * Software Interrupt 1 IVG14 71
116 * Software Interrupt 2 IVG15 72
117 */
118
119/*
120 * The ABSTRACT IRQ definitions
121 * the first seven of the following are fixed,
122 * the rest you change if you need to.
123 */
124/* IVG 0-6 */
125#define IRQ_EMU 0 /* Emulation */
126#define IRQ_RST 1 /* Reset */
127#define IRQ_NMI 2 /* Non Maskable Interrupt */
128#define IRQ_EVX 3 /* Exception */
129#define IRQ_UNUSED 4 /* Reserved interrupt */
130#define IRQ_HWERR 5 /* Hardware Error */
131#define IRQ_CORETMR 6 /* Core timer */
132
133#define IRQ_UART_RX_BIT 0x10000000
134#define IRQ_UART_TX_BIT 0x20000000
135#define IRQ_UART_ERROR_BIT 0x200
136
137#endif /* _BF561_IRQ_H_ */