8ddd6801bf29c45dd3c0408f92bb7781ca94ce80
[openocd.git] / src / jtag / drivers / OpenULINK / src / USBJmpTb.a51
1 ;--------------------------------------------------------------------------;
2 ;    Copyright (C) 2011-2013 by Martin Schmoelzer                          ;
3 ;    <martin.schmoelzer@student.tuwien.ac.at>                              ;
4 ;                                                                          ;
5 ;    This program is free software; you can redistribute it and/or modify  ;
6 ;    it under the terms of the GNU General Public License as published by  ;
7 ;    the Free Software Foundation; either version 2 of the License, or     ;
8 ;    (at your option) any later version.                                   ;
9 ;                                                                          ;
10 ;    This program is distributed in the hope that it will be useful,       ;
11 ;    but WITHOUT ANY WARRANTY; without even the implied warranty of        ;
12 ;    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         ;
13 ;    GNU General Public License for more details.                          ;
14 ;                                                                          ;
15 ;    You should have received a copy of the GNU General Public License     ;
16 ;    along with this program; if not, write to the                         ;
17 ;    Free Software Foundation, Inc.,                                       ;
18 ;    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.           ;
19 ;--------------------------------------------------------------------------;
20
21 .module JUMPTABLE
22 .globl USB_AutoVector
23 .globl USB_Jump_Table
24
25 ;--------------------------------------------------------------------------;
26 ; Interrupt Vectors                                                        ;
27 ;--------------------------------------------------------------------------;
28 .area   USB_JV (ABS,OVR)   ; Absolute, Overlay
29 .org    0x43               ; USB interrupt (INT2) jumps here
30 USB_AutoVector = #. + 2
31     ljmp  USB_Jump_Table
32
33 ;--------------------------------------------------------------------------;
34 ; USB Jump Table                                                           ;
35 ;--------------------------------------------------------------------------;
36 .area  USB_JT (ABS)        ; Absolute placement
37 .org   0x1B00              ; Place jump table at 0x1B00
38
39 USB_Jump_Table:            ; autovector jump table
40     ljmp  _sudav_isr       ; Setup Data Available
41     .db 0
42     ljmp  _sof_isr         ; Start of Frame
43     .db 0
44     ljmp  _sutok_isr       ; Setup Data Loading
45     .db 0
46     ljmp  _suspend_isr     ; Global Suspend
47     .db 0
48     ljmp  _usbreset_isr    ; USB Reset
49     .db 0
50     ljmp  _ibn_isr         ; IN Bulk NAK interrupt
51     .db 0
52     ljmp  _ep0in_isr       ; Endpoint 0 IN
53     .db 0
54     ljmp  _ep0out_isr      ; Endpoint 0 OUT
55     .db 0
56     ljmp  _ep1in_isr       ; Endpoint 1 IN
57     .db 0
58     ljmp  _ep1out_isr      ; Endpoint 1 OUT
59     .db 0
60     ljmp  _ep2in_isr       ; Endpoint 2 IN
61     .db 0
62     ljmp  _ep2out_isr      ; Endpoint 2 OUT
63     .db 0
64     ljmp  _ep3in_isr       ; Endpoint 3 IN
65     .db 0
66     ljmp  _ep3out_isr      ; Endpoint 3 OUT
67     .db 0
68     ljmp  _ep4in_isr       ; Endpoint 4 IN
69     .db 0
70     ljmp  _ep4out_isr      ; Endpoint 4 OUT
71     .db 0
72     ljmp  _ep5in_isr       ; Endpoint 5 IN
73     .db 0
74     ljmp  _ep5out_isr      ; Endpoint 5 OUT
75     .db 0
76     ljmp  _ep6in_isr       ; Endpoint 6 IN
77     .db 0
78     ljmp  _ep6out_isr      ; Endpoint 6 OUT
79     .db 0
80     ljmp  _ep7in_isr       ; Endpoint 7 IN
81     .db 0
82     ljmp  _ep7out_isr      ; Endpoint 7 OUT
83     .db 0