Imported Upstream version 3.0
[debian/gnuradio] / usrp / firmware / src / common / vectors.a51
1 ;;; -*- asm -*-
2 ;;;
3 ;;; Copyright 2003 Free Software Foundation, Inc.
4 ;;; 
5 ;;; This file is part of GNU Radio
6 ;;; 
7 ;;; GNU Radio is free software; you can redistribute it and/or modify
8 ;;; it under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 2, or (at your option)
10 ;;; any later version.
11 ;;; 
12 ;;; GNU Radio is distributed in the hope that it will be useful,
13 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 ;;; GNU General Public License for more details.
16 ;;; 
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Radio; see the file COPYING.  If not, write to
19 ;;; the Free Software Foundation, Inc., 51 Franklin Street,
20 ;;; Boston, MA 02110-1301, USA.
21 ;;; 
22
23 ;;; Interrupt vectors.
24
25 ;;; N.B. This object module must come first in the list of modules
26
27         .module vectors
28
29 ;;; ----------------------------------------------------------------
30 ;;;               standard FX2 interrupt vectors
31 ;;; ----------------------------------------------------------------
32
33         .area CSEG (CODE)
34         .area GSINIT (CODE)
35         .area CSEG (CODE)
36 __standard_interrupt_vector::
37 __reset_vector::
38         ljmp    s_GSINIT
39         
40         ;; 13 8-byte entries.  We point them all at __isr_nop
41         ljmp    __isr_nop       ; 3 bytes
42         .ds     5               ; + 5 = 8 bytes for vector slot
43         ljmp    __isr_nop
44         .ds     5
45         ljmp    __isr_nop
46         .ds     5
47         ljmp    __isr_nop
48         .ds     5
49         ljmp    __isr_nop
50         .ds     5
51         ljmp    __isr_nop
52         .ds     5
53         ljmp    __isr_nop
54         .ds     5
55         ljmp    __isr_nop
56         .ds     5
57         ljmp    __isr_nop
58         .ds     5
59         ljmp    __isr_nop
60         .ds     5
61         ljmp    __isr_nop
62         .ds     5
63         ljmp    __isr_nop
64         .ds     5
65         ljmp    __isr_nop
66         .ds     5
67
68 __isr_nop::
69         reti
70
71 ;;; ----------------------------------------------------------------
72 ;;; the FIFO/GPIF autovector.  14 4-byte entries.
73 ;;; must start on a 128 byte boundary.
74 ;;; ----------------------------------------------------------------
75         
76         . = __reset_vector + 0x0080
77                 
78 __fifo_gpif_autovector::
79         ljmp    __isr_nop
80         nop     
81         ljmp    __isr_nop
82         nop     
83         ljmp    __isr_nop
84         nop     
85         ljmp    __isr_nop
86         nop     
87         ljmp    __isr_nop
88         nop     
89         ljmp    __isr_nop
90         nop     
91         ljmp    __isr_nop
92         nop     
93         ljmp    __isr_nop
94         nop     
95         ljmp    __isr_nop
96         nop     
97         ljmp    __isr_nop
98         nop     
99         ljmp    __isr_nop
100         nop     
101         ljmp    __isr_nop
102         nop     
103         ljmp    __isr_nop
104         nop     
105         ljmp    __isr_nop
106         nop     
107
108         
109 ;;; ----------------------------------------------------------------
110 ;;; the USB autovector.  32 4-byte entries.
111 ;;; must start on a 256 byte boundary.
112 ;;; ----------------------------------------------------------------
113
114         . = __reset_vector + 0x0100
115         
116 __usb_autovector::
117         ljmp    __isr_nop
118         nop
119         ljmp    __isr_nop
120         nop
121         ljmp    __isr_nop
122         nop
123         ljmp    __isr_nop
124         nop
125         ljmp    __isr_nop
126         nop
127         ljmp    __isr_nop
128         nop
129         ljmp    __isr_nop
130         nop
131         ljmp    __isr_nop
132         nop
133         ljmp    __isr_nop
134         nop
135         ljmp    __isr_nop
136         nop
137         ljmp    __isr_nop
138         nop
139         ljmp    __isr_nop
140         nop
141         ljmp    __isr_nop
142         nop
143         ljmp    __isr_nop
144         nop
145         ljmp    __isr_nop
146         nop
147         ljmp    __isr_nop
148         nop
149         ljmp    __isr_nop
150         nop
151         ljmp    __isr_nop
152         nop
153         ljmp    __isr_nop
154         nop
155         ljmp    __isr_nop
156         nop
157         ljmp    __isr_nop
158         nop
159         ljmp    __isr_nop
160         nop
161         ljmp    __isr_nop
162         nop
163         ljmp    __isr_nop
164         nop
165         ljmp    __isr_nop
166         nop
167         ljmp    __isr_nop
168         nop
169         ljmp    __isr_nop
170         nop
171         ljmp    __isr_nop
172         nop
173         ljmp    __isr_nop
174         nop
175         ljmp    __isr_nop
176         nop
177         ljmp    __isr_nop
178         nop
179         ljmp    __isr_nop
180         nop