1 |
27 |
unneback |
//==========================================================================
|
2 |
|
|
//
|
3 |
|
|
// frv400.h
|
4 |
|
|
//
|
5 |
|
|
// HAL misc board support definitions for Fujitsu MB93091 (FR-V 400)
|
6 |
|
|
//
|
7 |
|
|
//==========================================================================
|
8 |
|
|
//####ECOSGPLCOPYRIGHTBEGIN####
|
9 |
|
|
// -------------------------------------------
|
10 |
|
|
// This file is part of eCos, the Embedded Configurable Operating System.
|
11 |
|
|
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
|
12 |
|
|
//
|
13 |
|
|
// eCos is free software; you can redistribute it and/or modify it under
|
14 |
|
|
// the terms of the GNU General Public License as published by the Free
|
15 |
|
|
// Software Foundation; either version 2 or (at your option) any later version.
|
16 |
|
|
//
|
17 |
|
|
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
|
18 |
|
|
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
19 |
|
|
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
20 |
|
|
// for more details.
|
21 |
|
|
//
|
22 |
|
|
// You should have received a copy of the GNU General Public License along
|
23 |
|
|
// with eCos; if not, write to the Free Software Foundation, Inc.,
|
24 |
|
|
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
|
25 |
|
|
//
|
26 |
|
|
// As a special exception, if other files instantiate templates or use macros
|
27 |
|
|
// or inline functions from this file, or you compile this file and link it
|
28 |
|
|
// with other works to produce a work based on this file, this file does not
|
29 |
|
|
// by itself cause the resulting work to be covered by the GNU General Public
|
30 |
|
|
// License. However the source code for this file must still be made available
|
31 |
|
|
// in accordance with section (3) of the GNU General Public License.
|
32 |
|
|
//
|
33 |
|
|
// This exception does not invalidate any other reasons why a work based on
|
34 |
|
|
// this file might be covered by the GNU General Public License.
|
35 |
|
|
//
|
36 |
|
|
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
|
37 |
|
|
// at http://sources.redhat.com/ecos/ecos-license/
|
38 |
|
|
// -------------------------------------------
|
39 |
|
|
//####ECOSGPLCOPYRIGHTEND####
|
40 |
|
|
//==========================================================================
|
41 |
|
|
//#####DESCRIPTIONBEGIN####
|
42 |
|
|
//
|
43 |
|
|
// Author(s): gthomas
|
44 |
|
|
// Contributors: gthomas
|
45 |
|
|
// Date: 2001-09-07
|
46 |
|
|
// Purpose: Platform register definitions
|
47 |
|
|
// Description:
|
48 |
|
|
//
|
49 |
|
|
//####DESCRIPTIONEND####
|
50 |
|
|
//
|
51 |
|
|
//========================================================================*/
|
52 |
|
|
|
53 |
|
|
#ifndef __HAL_FRV400_H__
|
54 |
|
|
#define __HAL_FRV400_H__ 1
|
55 |
|
|
|
56 |
|
|
// Common
|
57 |
|
|
|
58 |
|
|
// Processor status register
|
59 |
|
|
#define _PSR_PIVL_SHIFT 3
|
60 |
|
|
#define _PSR_PIVL_MASK (0xF<<(_PSR_PIVL_SHIFT)) // Interrupt mask level
|
61 |
|
|
#define _PSR_S (1<<2) // Supervisor state
|
62 |
|
|
#define _PSR_PS (1<<1) // Previous supervisor state
|
63 |
|
|
#define _PSR_ET (1<<0) // Enable interrupts
|
64 |
|
|
|
65 |
|
|
// Hardware status register
|
66 |
|
|
#define _HSR0_ICE (1<<31) // Instruction cache enable
|
67 |
|
|
#define _HSR0_DCE (1<<30) // Data cache enable
|
68 |
|
|
#define _HSR0_IMMU (1<<26) // Instruction MMU enable
|
69 |
|
|
#define _HSR0_DMMU (1<<25) // Data MMU enable
|
70 |
|
|
|
71 |
|
|
// Debug Control Register
|
72 |
|
|
#define _DCR_EBE (1 << 30) // Exception break enable bit
|
73 |
|
|
#define _DCR_SE (1 << 29) // Single-step break enable bit
|
74 |
|
|
#define _DCR_IBM (1 << 28) // Instruction Break Mask (disable bit)
|
75 |
|
|
#define _DCR_DRBE0 (1 << 19) // READ dbar0
|
76 |
|
|
#define _DCR_DWBE0 (1 << 18) // WRITE dbar0
|
77 |
|
|
#define _DCR_DDBE0 (1 << 17) // Data-match for access to dbar0
|
78 |
|
|
#define _DCR_DBASE0 (1 << 17) // offset
|
79 |
|
|
#define _DCR_DRBE1 (1 << 16)
|
80 |
|
|
#define _DCR_DWBE1 (1 << 15)
|
81 |
|
|
#define _DCR_DDBE1 (1 << 14)
|
82 |
|
|
#define _DCR_DBASE1 (1 << 14)
|
83 |
|
|
//#define _DCR_DRBE2 (1 << 13) // 2 and 3 not supported in real hardware
|
84 |
|
|
//#define _DCR_DWBE2 (1 << 12)
|
85 |
|
|
//#define _DCR_DDBE2 (1 << 11)
|
86 |
|
|
//#define _DCR_DRBE3 (1 << 10)
|
87 |
|
|
//#define _DCR_DWBE3 (1 << 9)
|
88 |
|
|
//#define _DCR_DDBE3 (1 << 8)
|
89 |
|
|
#define _DCR_IBE0 (1 << 7)
|
90 |
|
|
#define _DCR_IBCE0 (1 << 6)
|
91 |
|
|
#define _DCR_IBE1 (1 << 5)
|
92 |
|
|
#define _DCR_IBCE1 (1 << 4)
|
93 |
|
|
#define _DCR_IBE2 (1 << 3)
|
94 |
|
|
#define _DCR_IBCE2 (1 << 2)
|
95 |
|
|
#define _DCR_IBE3 (1 << 1)
|
96 |
|
|
#define _DCR_IBCE3 (1 << 0)
|
97 |
|
|
|
98 |
|
|
// Break PSR Save Register
|
99 |
|
|
#define _BPSR_BS (1 << 12)
|
100 |
|
|
#define _BPSR_BET (1 << 0)
|
101 |
|
|
|
102 |
|
|
// Break Request Register
|
103 |
|
|
#define _BRR_EB (1 << 30)
|
104 |
|
|
#define _BRR_CB (1 << 29)
|
105 |
|
|
#define _BRR_TB (1 << 28)
|
106 |
|
|
#define _BRR_DB0 (1 << 11)
|
107 |
|
|
#define _BRR_DB1 (1 << 10)
|
108 |
|
|
#define _BRR_IB0 (1 << 7)
|
109 |
|
|
#define _BRR_IB1 (1 << 6)
|
110 |
|
|
#define _BRR_IB2 (1 << 5)
|
111 |
|
|
#define _BRR_IB3 (1 << 4)
|
112 |
|
|
#define _BRR_CBB (1 << 3)
|
113 |
|
|
#define _BRR_BB (1 << 2)
|
114 |
|
|
#define _BRR_SB (1 << 1)
|
115 |
|
|
#define _BRR_ST (1 << 0)
|
116 |
|
|
|
117 |
|
|
|
118 |
|
|
// Platform specifics
|
119 |
|
|
|
120 |
|
|
// SDRAM Controller
|
121 |
|
|
#define _FRV400_SDRAM_CP 0xFE000400 // Controller protect
|
122 |
|
|
#define _FRV400_SDRAM_CFG 0xFE000410 // Configuration
|
123 |
|
|
#define _FRV400_SDRAM_CTL 0xFE000418 // Control
|
124 |
|
|
#define _FRV400_SDRAM_MS 0xFE000420 // Mode select
|
125 |
|
|
#define _FRV400_SDRAM_STS 0xFE000428 // Status
|
126 |
|
|
#define _FRV400_SDRAM_RCN 0xFE000430 // Refresh control
|
127 |
|
|
#define _FRV400_SDRAM_ART 0xFE000438 // Auto-refresh timer
|
128 |
|
|
#define _FRV400_SDRAM_AN0 0xFE000500 // Address #0
|
129 |
|
|
#define _FRV400_SDRAM_AN1 0xFE000508 // Address #1
|
130 |
|
|
#define _FRV400_SDRAM_BR0 0xFE000E00 // Base register #0
|
131 |
|
|
#define _FRV400_SDRAM_BR1 0xFE000E08 // Base register #1
|
132 |
|
|
#define _FRV400_SDRAM_AM0 0xFE000F00 // Address mask #0
|
133 |
|
|
#define _FRV400_SDRAM_AM1 0xFE000F08 // Address mask #1
|
134 |
|
|
|
135 |
|
|
// Local bus control
|
136 |
|
|
#define _FRV400_LBUS_CP 0xFE000000 // Controller protect
|
137 |
|
|
#define _FRV400_LBUS_EST 0xFE000020 // Error status
|
138 |
|
|
#define _FRV400_LBUS_EAD 0xFE000028 // Error address
|
139 |
|
|
#define _FRV400_LBUS_CR0 0xFE000100 // Configuration - space #0
|
140 |
|
|
#define _FRV400_LBUS_CR1 0xFE000108 // Configuration - space #1
|
141 |
|
|
#define _FRV400_LBUS_CR2 0xFE000110 // Configuration - space #2
|
142 |
|
|
#define _FRV400_LBUS_CR3 0xFE000118 // Configuration - space #3
|
143 |
|
|
#define _FRV400_LBUS_BR0 0xFE000C00 // Slave - base address #0
|
144 |
|
|
#define _FRV400_LBUS_BR1 0xFE000C08 // Slave - base address #1
|
145 |
|
|
#define _FRV400_LBUS_BR2 0xFE000C10 // Slave - base address #2
|
146 |
|
|
#define _FRV400_LBUS_BR3 0xFE000C18 // Slave - base address #3
|
147 |
|
|
#define _FRV400_LBUS_AM0 0xFE000D00 // Slave - address mask #0
|
148 |
|
|
#define _FRV400_LBUS_AM1 0xFE000D08 // Slave - address mask #1
|
149 |
|
|
#define _FRV400_LBUS_AM2 0xFE000D10 // Slave - address mask #2
|
150 |
|
|
#define _FRV400_LBUS_AM3 0xFE000D18 // Slave - address mask #3
|
151 |
|
|
|
152 |
|
|
// PCI Bridge (on motherboard)
|
153 |
|
|
#define _FRV400_PCI_SLBUS_CONFIG 0x10000000
|
154 |
|
|
#define _FRV400_PCI_ECS0_CONFIG 0x10000008
|
155 |
|
|
#define _FRV400_PCI_ECS1_CONFIG 0x10000010
|
156 |
|
|
#define _FRV400_PCI_ECS2_CONFIG 0x10000018
|
157 |
|
|
#define _FRV400_PCI_ECS0_RANGE 0x10000020
|
158 |
|
|
#define _FRV400_PCI_ECS0_ADDR 0x10000028
|
159 |
|
|
#define _FRV400_PCI_ECS1_RANGE 0x10000030
|
160 |
|
|
#define _FRV400_PCI_ECS1_ADDR 0x10000038
|
161 |
|
|
#define _FRV400_PCI_ECS2_RANGE 0x10000040
|
162 |
|
|
#define _FRV400_PCI_ECS2_ADDR 0x10000048
|
163 |
|
|
#define _FRV400_PCI_PCIIO_RANGE 0x10000050
|
164 |
|
|
#define _FRV400_PCI_PCIIO_ADDR 0x10000058
|
165 |
|
|
#define _FRV400_PCI_PCIMEM_RANGE 0x10000060
|
166 |
|
|
#define _FRV400_PCI_PCIMEM_ADDR 0x10000068
|
167 |
|
|
#define _FRV400_PCI_PCIIO_PCI_ADDR 0x10000070
|
168 |
|
|
#define _FRV400_PCI_PCIMEM_PCI_ADDR 0x10000078
|
169 |
|
|
#define _FRV400_PCI_CONFIG_ADDR 0x10000080
|
170 |
|
|
#define _FRV400_PCI_CONFIG_DATA 0x10000088
|
171 |
|
|
|
172 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX0 0x10000500
|
173 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX1 0x10000508
|
174 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX2 0x10000510
|
175 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX3 0x10000518
|
176 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX4 0x10000520
|
177 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX5 0x10000528
|
178 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX6 0x10000530
|
179 |
|
|
#define _FRV400_PCI_SL_TO_PCI_MBX7 0x10000538
|
180 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX0 0x10000540
|
181 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX1 0x10000548
|
182 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX2 0x10000550
|
183 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX3 0x10000558
|
184 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX4 0x10000560
|
185 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX5 0x10000568
|
186 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX6 0x10000570
|
187 |
|
|
#define _FRV400_PCI_PCI_TO_SL_MBX7 0x10000578
|
188 |
|
|
#define _FRV400_PCI_MBX_STATUS 0x10000580
|
189 |
|
|
#define _FRV400_PCI_MBX_CONTROL 0x10000588
|
190 |
|
|
#define _FRV400_PCI_SL_TO_PCI_DOORBELL 0x10000590
|
191 |
|
|
#define _FRV400_PCI_PCI_TO_SL_DOORBELL 0x10000598
|
192 |
|
|
#define _FRV400_PCI_SL_INT_STATUS 0x100005A0
|
193 |
|
|
#define _FRV400_PCI_SL_INT_STATUS_MASTER_ABORT (1<<26)
|
194 |
|
|
#define _FRV400_PCI_PCI_INT_STATUS 0x100005A8
|
195 |
|
|
#define _FRV400_PCI_SL_INT_ENABLE 0x100005B0
|
196 |
|
|
#define _FRV400_PCI_PCI_INT_ENABLE 0x100005B8
|
197 |
|
|
|
198 |
|
|
#define _FRV400_PCI_CONFIG 0x10000800
|
199 |
|
|
#define _FRV400_PCI_DEVICE_VENDOR 0x10000800
|
200 |
|
|
#define _FRV400_PCI_STAT_CMD 0x10000808
|
201 |
|
|
#define _FRV400_PCI_STAT_ERROR_MASK 0xF000
|
202 |
|
|
#define _FRV400_PCI_CLASS_REV 0x10000810
|
203 |
|
|
#define _FRV400_PCI_BIST 0x10000818
|
204 |
|
|
#define _FRV400_PCI_PCI_IO_MAPPED 0x10000820
|
205 |
|
|
#define _FRV400_PCI_PCI_MEM_MAP_LO 0x10000828
|
206 |
|
|
#define _FRV400_PCI_PCI_ECS0_LO 0x10000838
|
207 |
|
|
#define _FRV400_PCI_PCI_ECS1_LO 0x10000840
|
208 |
|
|
#define _FRV400_PCI_PCI_ECS2_LO 0x10000848
|
209 |
|
|
#define _FRV400_PCI_MAX_LAT 0x10000878
|
210 |
|
|
#define _FRV400_PCI_TMO_RETRY 0x10000880
|
211 |
|
|
#define _FRV400_PCI_SERR_ENABLE 0x10000888
|
212 |
|
|
#define _FRV400_PCI_RESET 0x10000890
|
213 |
|
|
#define _FRV400_PCI_RESET_SRST 0x00000001 // Assert soft reset
|
214 |
|
|
#define _FRV400_PCI_PCI_MEM_MAP_HI 0x10000898
|
215 |
|
|
#define _FRV400_PCI_PCI_ECS0_HI 0x100008A8
|
216 |
|
|
#define _FRV400_PCI_PCI_ECS1_HI 0x100008B0
|
217 |
|
|
#define _FRV400_PCI_PCI_ECS2_HI 0x100008B8
|
218 |
|
|
|
219 |
|
|
// Motherboard resources
|
220 |
|
|
#define _FRV400_MB_SWGP 0x21200000 // General purpose switches
|
221 |
|
|
#define _FRV400_MB_LEDS 0x21200004 // LED array - 16 bits 0->on
|
222 |
|
|
#define _FRV400_MB_LCD 0x21200008 // LCD panel
|
223 |
|
|
#define _FRV400_MB_BOOT_MODE 0x21300004 // Boot mode register
|
224 |
|
|
#define _FRV400_MB_H_RESET 0x21300008 // Hardware reset
|
225 |
|
|
#define _FRV400_MB_CLKSW 0x2130000C // Clock settings
|
226 |
|
|
#define _FRV400_MB_PCI_ARBITER 0x21300014 // Enable PCI arbiter mode
|
227 |
|
|
|
228 |
|
|
// Serial ports - 16550 compatible
|
229 |
|
|
#define _FRV400_UART0 0xFEFF9C00
|
230 |
|
|
#define _FRV400_UART1 0xFEFF9C40
|
231 |
|
|
|
232 |
|
|
// Programmable timers
|
233 |
|
|
#define _FRV400_TCSR0 0xFEFF9400 // Timer 0 control/status
|
234 |
|
|
#define _FRV400_TCSR1 0xFEFF9408 // Timer 1 control/status
|
235 |
|
|
#define _FRV400_TCSR2 0xFEFF9410 // Timer 2 control/status
|
236 |
|
|
#define _FRV400_TCxSR_TOUT 0x80 // Status - TOUT signal
|
237 |
|
|
#define _FRV400_TCTR 0xFEFF9418 // Timer control
|
238 |
|
|
#define _FRV400_TCTR_SEL0 (0<<6) // Select timer 0
|
239 |
|
|
#define _FRV400_TCTR_SEL1 (1<<6) // Select timer 1
|
240 |
|
|
#define _FRV400_TCTR_SEL2 (2<<6) // Select timer 2
|
241 |
|
|
#define _FRV400_TCTR_RB (3<<6) // Timer read back
|
242 |
|
|
#define _FRV400_TCTR_RB_NCOUNT (1<<5) // Count data suppress
|
243 |
|
|
#define _FRV400_TCTR_RB_NSTATUS (1<<4) // Status data suppress
|
244 |
|
|
#define _FRV400_TCTR_RB_CTR2 (1<<3) // Read data for counter #2
|
245 |
|
|
#define _FRV400_TCTR_RB_CTR1 (1<<2) // Read data for counter #1
|
246 |
|
|
#define _FRV400_TCTR_RB_CTR0 (1<<1) // Read data for counter #0
|
247 |
|
|
#define _FRV400_TCTR_LATCH (0<<4) // Counter latch command
|
248 |
|
|
#define _FRV400_TCTR_R8LO (1<<4) // Read low 8 bits
|
249 |
|
|
#define _FRV400_TCTR_R8HI (2<<4) // Read high 8 bits
|
250 |
|
|
#define _FRV400_TCTR_RLOHI (3<<4) // Read/write 8 lo then 8 hi
|
251 |
|
|
#define _FRV400_TCTR_MODE0 (0<<1) // Mode 0 - terminal interrupt count
|
252 |
|
|
#define _FRV400_TCTR_MODE2 (2<<1) // Mode 2 - rate generator
|
253 |
|
|
#define _FRV400_TCTR_MODE4 (4<<1) // Mode 4 - software trigger strobe
|
254 |
|
|
#define _FRV400_TCTR_MODE5 (5<<1) // Mode 5 - hardware trigger strobe
|
255 |
|
|
#define _FRV400_TPRV 0xFEFF9420 // Timer prescale
|
256 |
|
|
#define _FRV400_TPRCKSL 0xFEFF9428 // Prescale clock
|
257 |
|
|
#define _FRV400_TCKSL0 0xFEFF9430 // Timer 0 clock select
|
258 |
|
|
#define _FRV400_TCKSL1 0xFEFF9438 // Timer 1 clock select
|
259 |
|
|
#define _FRV400_TCKSL2 0xFEFF9440 // Timer 2 clock select
|
260 |
|
|
|
261 |
|
|
// Interrupt & clock control
|
262 |
|
|
#define _FRV400_CLK_CTRL 0xFEFF9A00 // Clock control
|
263 |
|
|
#define _FRV400_IRC_TM0 0xFEFF9800 // Trigger mode 0 register (unused)
|
264 |
|
|
#define _FRV400_IRC_TM1 0xFEFF9808 // Trigger mode 1 register
|
265 |
|
|
#define _FRV400_IRC_RS 0xFEFF9810 // Request sense
|
266 |
|
|
#define _FRV400_IRC_RC 0xFEFF9818 // Request clear
|
267 |
|
|
#define _FRV400_IRC_MASK 0xFEFF9820 // Mask
|
268 |
|
|
#define _FRV400_IRC_IRL 0xFEFF9828 // Interrupt level read (encoded)
|
269 |
|
|
#define _FRV400_IRC_IRR0 0xFEFF9840 // Interrupt routing #0 (unused)
|
270 |
|
|
#define _FRV400_IRC_IRR1 0xFEFF9848 // Interrupt routing #1 (unused)
|
271 |
|
|
#define _FRV400_IRC_IRR2 0xFEFF9850 // Interrupt routing #2 (unused)
|
272 |
|
|
#define _FRV400_IRC_IRR3 0xFEFF9858 // Interrupt routing #3
|
273 |
|
|
#define _FRV400_IRC_IRR4 0xFEFF9860 // Interrupt routing #4
|
274 |
|
|
#define _FRV400_IRC_IRR5 0xFEFF9868 // Interrupt routing #5
|
275 |
|
|
#define _FRV400_IRC_IRR6 0xFEFF9870 // Interrupt routing #6
|
276 |
|
|
#define _FRV400_IRC_IRR7 0xFEFF9878 // Interrupt routing #7
|
277 |
|
|
#define _FRV400_IRC_ITM0 0xFEFF9880 // Internal trigger mode #0
|
278 |
|
|
#define _FRV400_IRC_ITM1 0xFEFF9888 // Internal trigger mode #1
|
279 |
|
|
|
280 |
|
|
// Some GPIO magic
|
281 |
|
|
#define _FRV400_GPIO_SIR 0xFEFF0410 // Special input signals
|
282 |
|
|
#define _FRV400_GPIO_SOR 0xFEFF0418 // Special output signals
|
283 |
|
|
|
284 |
|
|
// Reset register
|
285 |
|
|
#define _FRV400_HW_RESET 0xFEFF0500 // Hardware reset
|
286 |
|
|
#define _FRV400_HW_RESET_STAT_P (1<<10) // Last reset was power-on
|
287 |
|
|
#define _FRV400_HW_RESET_STAT_H (1<<9) // Last reset was hard reset
|
288 |
|
|
#define _FRV400_HW_RESET_STAT_S (1<<8) // Last reset was soft reset
|
289 |
|
|
#define _FRV400_HW_RESET_HR (1<<1) // Force hard reset
|
290 |
|
|
#define _FRV400_HW_RESET_SR (1<<0) // Force soft reset
|
291 |
|
|
|
292 |
|
|
// On-board FPGA
|
293 |
|
|
#define _FRV400_FPGA_CONTROL 0xFFC00000 // Access control for FPGA resources
|
294 |
|
|
#define _FRV400_FPGA_CONTROL_IRQ (1<<2) // Set to enable IRQ registers
|
295 |
|
|
#define _FRV400_FPGA_CONTROL_CS4 (1<<1) // Set to enable CS4 control regs
|
296 |
|
|
#define _FRV400_FPGA_CONTROL_CS5 (1<<0) // Set to enable CS5 control regs
|
297 |
|
|
#define _FRV400_FPGA_IRQ_MASK 0xFFC00004 // Set bits to 0 to allow interrupt
|
298 |
|
|
#define _FRV400_FPGA_IRQ_LEVELS 0xFFC00008 // 0=>active low, 1=>active high
|
299 |
|
|
#define _FRV400_FPGA_IRQ_REQUEST 0xFFC0000C // read: 1=>asserted, write: 0=>clears
|
300 |
|
|
#define _FRV400_FPGA_IRQ_LAN (1<<12) // Onboard LAN controller
|
301 |
|
|
#define _FRV400_FPGA_IRQ_INTA (1<<6) // PCI bus INTA
|
302 |
|
|
#define _FRV400_FPGA_IRQ_INTB (1<<5) // PCI bus INTA
|
303 |
|
|
#define _FRV400_FPGA_IRQ_INTC (1<<4) // PCI bus INTA
|
304 |
|
|
#define _FRV400_FPGA_IRQ_INTD (1<<3) // PCI bus INTA
|
305 |
|
|
|
306 |
|
|
#endif /* __HAL_FRV400_H__ */
|