2 |
- |
1 |
unsigned long na_script[] = {
|
|
|
2 |
/* extern scsi_id_buf */
|
|
|
3 |
/* extern msg_out_buf */
|
|
|
4 |
/* extern cmd_buf */
|
|
|
5 |
/* extern data_buf */
|
|
|
6 |
/* extern status_buf */
|
|
|
7 |
/* extern msgin_buf */
|
|
|
8 |
/* extern dsa_0 */
|
|
|
9 |
/* extern dsa_1 */
|
|
|
10 |
/* extern dsa_head */
|
|
|
11 |
/* extern ssid_mask */
|
|
|
12 |
/* SIR_MSG_IO_COMPLETE = 0 */
|
|
|
13 |
/* error_not_cmd_complete = 1 */
|
|
|
14 |
/* error_disconnected = 2 */
|
|
|
15 |
/* error_reselected = 3 */
|
|
|
16 |
/* error_unexpected_phase = 4 */
|
|
|
17 |
/* error_weird_message = 5 */
|
|
|
18 |
/* SIR_ERROR_NOT_MSG_IN_AFTER_RESELECT = 6 */
|
|
|
19 |
/* error_not_identify_after_reselect = 7 */
|
|
|
20 |
/* error_too_much_data = 8 */
|
|
|
21 |
/* error_too_little_data = 9 */
|
|
|
22 |
/* SIR_MSG_REJECT = 10 */
|
|
|
23 |
/* SIR_MSG_SDTR = 11 */
|
|
|
24 |
/* SIR_EV_RESPONSE_OK = 12 */
|
|
|
25 |
/* error_sigp_set = 13 */
|
|
|
26 |
/* SIR_EV_PHASE_SWITCH_AFTER_ID = 14 */
|
|
|
27 |
/* SIR_MSG_WDTR = 15 */
|
|
|
28 |
/* SIR_MSG_IGNORE_WIDE_RESIDUE = 16 */
|
|
|
29 |
/* SIR_NOTIFY_DISC = 100 */
|
|
|
30 |
/* SIR_NOTIFY_RESELECT = 101 */
|
|
|
31 |
/* SIR_NOTIFY_MSG_IN = 102 */
|
|
|
32 |
/* SIR_NOTIFY_STATUS = 103 */
|
|
|
33 |
/* SIR_NOTIFY_DUMP = 104 */
|
|
|
34 |
/* SIR_NOTIFY_DUMP2 = 105 */
|
|
|
35 |
/* SIR_NOTIFY_SIGP = 106 */
|
|
|
36 |
/* SIR_NOTIFY_ISSUE = 107 */
|
|
|
37 |
/* SIR_NOTIFY_WAIT_RESELECT = 108 */
|
|
|
38 |
/* SIR_NOTIFY_ISSUE_CHECK = 109 */
|
|
|
39 |
/* SIR_NOTIFY_DUMP_NEXT_CODE = 110 */
|
|
|
40 |
/* SIR_NOTIFY_COMMAND = 111 */
|
|
|
41 |
/* SIR_NOTIFY_DATA_IN = 112 */
|
|
|
42 |
/* SIR_NOTIFY_DATA_OUT = 113 */
|
|
|
43 |
/* SIR_NOTIFY_BLOCK_DATA_IN = 114 */
|
|
|
44 |
/* SIR_NOTIFY_WSR = 115 */
|
|
|
45 |
/* SIR_NOTIFY_LOAD_SYNC = 116 */
|
|
|
46 |
/* SIR_NOTIFY_RESELECTED_ON_SELECT = 117 */
|
|
|
47 |
/* SIR_NOTIFY_LOAD_STATE = 118 */
|
|
|
48 |
/* STATE_FREE = 0 */
|
|
|
49 |
/* STATE_ALLOCATED = 1 */
|
|
|
50 |
/* STATE_ISSUE = 2 */
|
|
|
51 |
/* STATE_DISCONNECTED = 3 */
|
|
|
52 |
/* STATE_DONE = 4 */
|
|
|
53 |
/* STATE_END = 5 */
|
|
|
54 |
/* RESULT_OK = 0 */
|
|
|
55 |
/* MSG_IDENTIFY = 0x80 */
|
|
|
56 |
/* MSG_DISCONNECT = 0x04 */
|
|
|
57 |
/* MSG_SAVE_DATA_POINTER = 0x02 */
|
|
|
58 |
/* MSG_RESTORE_POINTERS = 0x03 */
|
|
|
59 |
/* MSG_IGNORE_WIDE_RESIDUE = 0x23 */
|
|
|
60 |
/* X_MSG = 0x01 */
|
|
|
61 |
/* X_MSG_SDTR = 0x01 */
|
|
|
62 |
/* X_MSG_WDTR = 0x03 */
|
|
|
63 |
/* MSG_REJECT = 0x07 */
|
|
|
64 |
/* BSIZE = 512 */
|
|
|
65 |
/* 0000 */ 0x80880000L, /* jump wait_for_reselection */
|
|
|
66 |
/* 0004 */ 0x00000514L,
|
|
|
67 |
/* 0008 */ 0x88880000L, /* call load_sync */
|
|
|
68 |
/* 000c */ 0x00000790L,
|
|
|
69 |
/* 0010 */ 0x60000200L, /* clear target */
|
|
|
70 |
/* 0014 */ 0x00000000L,
|
|
|
71 |
/* 0018 */ 0x47000000L, /* select atn from scsi_id_buf, reselected_on_select */
|
|
|
72 |
/* 001c */ 0x000004ecL,
|
|
|
73 |
/* 0020 */ 0x878b0000L, /* jump start1, when msg_in */
|
|
|
74 |
/* 0024 */ 0x00000000L,
|
|
|
75 |
/* 0028 */ 0x1e000000L, /* move from msg_out_buf, when msg_out */
|
|
|
76 |
/* 002c */ 0x00000001L,
|
|
|
77 |
/* 0030 */ 0x868b0000L, /* jump start1, when msg_out */
|
|
|
78 |
/* 0034 */ 0x00fffff0L,
|
|
|
79 |
/* 0038 */ 0x82830000L, /* jump to_decisions, when not cmd */
|
|
|
80 |
/* 003c */ 0x000005b8L,
|
|
|
81 |
/* 0040 */ 0x60000008L, /* clear atn */
|
|
|
82 |
/* 0044 */ 0x00000000L,
|
|
|
83 |
/* 0048 */ 0x1a000000L, /* move from cmd_buf, when cmd */
|
|
|
84 |
/* 004c */ 0x00000002L,
|
|
|
85 |
/* 0050 */ 0x81830000L, /* jump to_decisions, when not data_in */
|
|
|
86 |
/* 0054 */ 0x000005a0L,
|
|
|
87 |
/* 0058 */ 0xc0000004L, /* move memory 4, state, scratcha */
|
|
|
88 |
/* 005c */ 0x00000640L,
|
|
|
89 |
/* 0060 */ 0x00000034L,
|
|
|
90 |
/* 0064 */ 0xc0000004L, /* move memory 4, dmaaddr, scratchb */
|
|
|
91 |
/* 0068 */ 0x00000644L,
|
|
|
92 |
/* 006c */ 0x0000005cL,
|
|
|
93 |
/* 0070 */ 0x72360000L, /* move scratcha2 to sfbr */
|
|
|
94 |
/* 0074 */ 0x00000000L,
|
|
|
95 |
/* 0078 */ 0x808c0000L, /* jump data_in_normal, if 0 */
|
|
|
96 |
/* 007c */ 0x00000078L,
|
|
|
97 |
/* 0080 */ 0x29000200L, /* move BSIZE, ptr dmaaddr, when data_in */
|
|
|
98 |
/* 0084 */ 0x00000644L,
|
|
|
99 |
/* 0088 */ 0x7e5d0200L, /* move scratchb1 + BSIZE / 256 to scratchb1 */
|
|
|
100 |
/* 008c */ 0x00000000L,
|
|
|
101 |
/* 0090 */ 0x7f5e0000L, /* move scratchb2 + 0 to scratchb2 with carry */
|
|
|
102 |
/* 0094 */ 0x00000000L,
|
|
|
103 |
/* 0098 */ 0x7f5f0000L, /* move scratchb3 + 0 to scratchb3 with carry */
|
|
|
104 |
/* 009c */ 0x00000000L,
|
|
|
105 |
/* 00a0 */ 0x7e36ff00L, /* move scratcha2 + 255 to scratcha2 */
|
|
|
106 |
/* 00a4 */ 0x00000000L,
|
|
|
107 |
/* 00a8 */ 0xc0000004L, /* move memory 4, scratchb, dmaaddr */
|
|
|
108 |
/* 00ac */ 0x0000005cL,
|
|
|
109 |
/* 00b0 */ 0x00000644L,
|
|
|
110 |
/* 00b4 */ 0x818b0000L, /* jump data_in_block_loop, when data_in */
|
|
|
111 |
/* 00b8 */ 0x00ffffb4L,
|
|
|
112 |
/* 00bc */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
113 |
/* 00c0 */ 0x00000034L,
|
|
|
114 |
/* 00c4 */ 0x00000640L,
|
|
|
115 |
/* 00c8 */ 0x88880000L, /* call save_state */
|
|
|
116 |
/* 00cc */ 0x0000065cL,
|
|
|
117 |
/* 00d0 */ 0x80880000L, /* jump to_decisions */
|
|
|
118 |
/* 00d4 */ 0x00000520L,
|
|
|
119 |
/* 00d8 */ 0xc0000004L, /* move memory 4, scratchb, dmaaddr */
|
|
|
120 |
/* 00dc */ 0x0000005cL,
|
|
|
121 |
/* 00e0 */ 0x00000644L,
|
|
|
122 |
/* 00e4 */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
123 |
/* 00e8 */ 0x00000034L,
|
|
|
124 |
/* 00ec */ 0x00000640L,
|
|
|
125 |
/* 00f0 */ 0x80880000L, /* jump to_decisions */
|
|
|
126 |
/* 00f4 */ 0x00000500L,
|
|
|
127 |
/* 00f8 */ 0x72370000L, /* move scratcha3 to sfbr */
|
|
|
128 |
/* 00fc */ 0x00000000L,
|
|
|
129 |
/* 0100 */ 0x98040000L, /* int error_too_much_data, if not 0 */
|
|
|
130 |
/* 0104 */ 0x00000008L,
|
|
|
131 |
/* 0108 */ 0x19000000L, /* move from data_buf, when data_in */
|
|
|
132 |
/* 010c */ 0x00000003L,
|
|
|
133 |
/* 0110 */ 0x78370200L, /* move 2 to scratcha3 */
|
|
|
134 |
/* 0114 */ 0x00000000L,
|
|
|
135 |
/* 0118 */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
136 |
/* 011c */ 0x00000034L,
|
|
|
137 |
/* 0120 */ 0x00000640L,
|
|
|
138 |
/* 0124 */ 0x88880000L, /* call save_state */
|
|
|
139 |
/* 0128 */ 0x00000600L,
|
|
|
140 |
/* 012c */ 0x80880000L, /* jump post_data_to_decisions */
|
|
|
141 |
/* 0130 */ 0x000004f4L,
|
|
|
142 |
/* 0134 */ 0xc0000004L, /* move memory 4, state, scratcha */
|
|
|
143 |
/* 0138 */ 0x00000640L,
|
|
|
144 |
/* 013c */ 0x00000034L,
|
|
|
145 |
/* 0140 */ 0xc0000004L, /* move memory 4, dmaaddr, scratchb */
|
|
|
146 |
/* 0144 */ 0x00000644L,
|
|
|
147 |
/* 0148 */ 0x0000005cL,
|
|
|
148 |
/* 014c */ 0x72360000L, /* move scratcha2 to sfbr */
|
|
|
149 |
/* 0150 */ 0x00000000L,
|
|
|
150 |
/* 0154 */ 0x808c0000L, /* jump data_out_normal, if 0 */
|
|
|
151 |
/* 0158 */ 0x0000005cL,
|
|
|
152 |
/* 015c */ 0xc0000004L, /* move memory 4, dmaaddr, scratchb */
|
|
|
153 |
/* 0160 */ 0x00000644L,
|
|
|
154 |
/* 0164 */ 0x0000005cL,
|
|
|
155 |
/* 0168 */ 0x28000200L, /* move BSIZE, ptr dmaaddr, when data_out */
|
|
|
156 |
/* 016c */ 0x00000644L,
|
|
|
157 |
/* 0170 */ 0x7e5d0200L, /* move scratchb1 + BSIZE / 256 to scratchb1 */
|
|
|
158 |
/* 0174 */ 0x00000000L,
|
|
|
159 |
/* 0178 */ 0x7f5e0000L, /* move scratchb2 + 0 to scratchb2 with carry */
|
|
|
160 |
/* 017c */ 0x00000000L,
|
|
|
161 |
/* 0180 */ 0x7f5f0000L, /* move scratchb3 + 0 to scratchb3 with carry */
|
|
|
162 |
/* 0184 */ 0x00000000L,
|
|
|
163 |
/* 0188 */ 0x7e36ff00L, /* move scratcha2 + 255 to scratcha2 */
|
|
|
164 |
/* 018c */ 0x00000000L,
|
|
|
165 |
/* 0190 */ 0xc0000004L, /* move memory 4, scratchb, dmaaddr */
|
|
|
166 |
/* 0194 */ 0x0000005cL,
|
|
|
167 |
/* 0198 */ 0x00000644L,
|
|
|
168 |
/* 019c */ 0x808b0000L, /* jump data_out_block_loop, when data_out */
|
|
|
169 |
/* 01a0 */ 0x00ffffa8L,
|
|
|
170 |
/* 01a4 */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
171 |
/* 01a8 */ 0x00000034L,
|
|
|
172 |
/* 01ac */ 0x00000640L,
|
|
|
173 |
/* 01b0 */ 0x80880000L, /* jump to_decisions */
|
|
|
174 |
/* 01b4 */ 0x00000440L,
|
|
|
175 |
/* 01b8 */ 0x72370000L, /* move scratcha3 to sfbr */
|
|
|
176 |
/* 01bc */ 0x00000000L,
|
|
|
177 |
/* 01c0 */ 0x98040000L, /* int error_too_little_data, if not 0 */
|
|
|
178 |
/* 01c4 */ 0x00000009L,
|
|
|
179 |
/* 01c8 */ 0x18000000L, /* move from data_buf, when data_out */
|
|
|
180 |
/* 01cc */ 0x00000003L,
|
|
|
181 |
/* 01d0 */ 0x78370200L, /* move 2 to scratcha3 */
|
|
|
182 |
/* 01d4 */ 0x00000000L,
|
|
|
183 |
/* 01d8 */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
184 |
/* 01dc */ 0x00000034L,
|
|
|
185 |
/* 01e0 */ 0x00000640L,
|
|
|
186 |
/* 01e4 */ 0x88880000L, /* call save_state */
|
|
|
187 |
/* 01e8 */ 0x00000540L,
|
|
|
188 |
/* 01ec */ 0x80880000L, /* jump post_data_to_decisions */
|
|
|
189 |
/* 01f0 */ 0x00000434L,
|
|
|
190 |
/* 01f4 */ 0x1b000000L, /* move from status_buf, when status */
|
|
|
191 |
/* 01f8 */ 0x00000004L,
|
|
|
192 |
/* 01fc */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
193 |
/* 0200 */ 0x00000004L,
|
|
|
194 |
/* 0204 */ 0x0f000001L, /* move 1, scratcha, when msg_in */
|
|
|
195 |
/* 0208 */ 0x00000034L,
|
|
|
196 |
/* 020c */ 0x808c0007L, /* jump rejected, if MSG_REJECT */
|
|
|
197 |
/* 0210 */ 0x00000088L,
|
|
|
198 |
/* 0214 */ 0x808c0004L, /* jump disconnected, if MSG_DISCONNECT */
|
|
|
199 |
/* 0218 */ 0x00000298L,
|
|
|
200 |
/* 021c */ 0x808c0002L, /* jump msg_in_skip, if MSG_SAVE_DATA_POINTER */
|
|
|
201 |
/* 0220 */ 0x00000090L,
|
|
|
202 |
/* 0224 */ 0x808c0003L, /* jump msg_in_skip, if MSG_RESTORE_POINTERS */
|
|
|
203 |
/* 0228 */ 0x00000088L,
|
|
|
204 |
/* 022c */ 0x808c0023L, /* jump ignore_wide, if MSG_IGNORE_WIDE_RESIDUE */
|
|
|
205 |
/* 0230 */ 0x000001f0L,
|
|
|
206 |
/* 0234 */ 0x808c0001L, /* jump extended, if X_MSG */
|
|
|
207 |
/* 0238 */ 0x00000088L,
|
|
|
208 |
/* 023c */ 0x98040000L, /* int error_not_cmd_complete, if not 0 */
|
|
|
209 |
/* 0240 */ 0x00000001L,
|
|
|
210 |
/* 0244 */ 0x7c027e00L, /* move scntl2&0x7e to scntl2 */
|
|
|
211 |
/* 0248 */ 0x00000000L,
|
|
|
212 |
/* 024c */ 0x60000040L, /* clear ack */
|
|
|
213 |
/* 0250 */ 0x00000000L,
|
|
|
214 |
/* 0254 */ 0x48000000L, /* wait disconnect */
|
|
|
215 |
/* 0258 */ 0x00000000L,
|
|
|
216 |
/* 025c */ 0xc0000004L, /* move memory 4, state, scratcha */
|
|
|
217 |
/* 0260 */ 0x00000640L,
|
|
|
218 |
/* 0264 */ 0x00000034L,
|
|
|
219 |
/* 0268 */ 0x78340400L, /* move STATE_DONE to scratcha0 */
|
|
|
220 |
/* 026c */ 0x00000000L,
|
|
|
221 |
/* 0270 */ 0x78350000L, /* move RESULT_OK to scratcha1 */
|
|
|
222 |
/* 0274 */ 0x00000000L,
|
|
|
223 |
/* 0278 */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
224 |
/* 027c */ 0x00000034L,
|
|
|
225 |
/* 0280 */ 0x00000640L,
|
|
|
226 |
/* 0284 */ 0x88880000L, /* call save_state */
|
|
|
227 |
/* 0288 */ 0x000004a0L,
|
|
|
228 |
/* 028c */ 0x98180000L, /* intfly 0 */
|
|
|
229 |
/* 0290 */ 0x00000000L,
|
|
|
230 |
/* 0294 */ 0x80880000L, /* jump issue_check */
|
|
|
231 |
/* 0298 */ 0x000004b8L,
|
|
|
232 |
/* 029c */ 0x98080000L, /* int SIR_MSG_REJECT */
|
|
|
233 |
/* 02a0 */ 0x0000000aL,
|
|
|
234 |
/* 02a4 */ 0x60000040L, /* clear ack */
|
|
|
235 |
/* 02a8 */ 0x00000000L,
|
|
|
236 |
/* 02ac */ 0x80880000L, /* jump to_decisions */
|
|
|
237 |
/* 02b0 */ 0x00000344L,
|
|
|
238 |
/* 02b4 */ 0x60000040L, /* clear ack */
|
|
|
239 |
/* 02b8 */ 0x00000000L,
|
|
|
240 |
/* 02bc */ 0x80880000L, /* jump to_decisions */
|
|
|
241 |
/* 02c0 */ 0x00000334L,
|
|
|
242 |
/* 02c4 */ 0x60000040L, /* clear ack */
|
|
|
243 |
/* 02c8 */ 0x00000000L,
|
|
|
244 |
/* 02cc */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
245 |
/* 02d0 */ 0x00000004L,
|
|
|
246 |
/* 02d4 */ 0x0f000001L, /* move 1, scratcha1, when msg_in */
|
|
|
247 |
/* 02d8 */ 0x00000035L,
|
|
|
248 |
/* 02dc */ 0x808c0003L, /* jump ext_3, if 3 */
|
|
|
249 |
/* 02e0 */ 0x00000030L,
|
|
|
250 |
/* 02e4 */ 0x808c0002L, /* jump ext_2, if 2 */
|
|
|
251 |
/* 02e8 */ 0x00000098L,
|
|
|
252 |
/* 02ec */ 0x98040001L, /* int error_weird_message, if not 1 */
|
|
|
253 |
/* 02f0 */ 0x00000005L,
|
|
|
254 |
/* 02f4 */ 0x60000040L, /* clear ack */
|
|
|
255 |
/* 02f8 */ 0x00000000L,
|
|
|
256 |
/* 02fc */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
257 |
/* 0300 */ 0x00000004L,
|
|
|
258 |
/* 0304 */ 0x0f000001L, /* move 1, scratcha1, when msg_in */
|
|
|
259 |
/* 0308 */ 0x00000035L,
|
|
|
260 |
/* 030c */ 0x80880000L, /* jump ext_done */
|
|
|
261 |
/* 0310 */ 0x000000c8L,
|
|
|
262 |
/* 0314 */ 0x60000040L, /* ext_3: clear ack */
|
|
|
263 |
/* 0318 */ 0x00000000L,
|
|
|
264 |
/* 031c */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
265 |
/* 0320 */ 0x00000004L,
|
|
|
266 |
/* 0324 */ 0x0f000001L, /* move 1, scratcha1, when msg_in */
|
|
|
267 |
/* 0328 */ 0x00000035L,
|
|
|
268 |
/* 032c */ 0x60000040L, /* clear ack */
|
|
|
269 |
/* 0330 */ 0x00000000L,
|
|
|
270 |
/* 0334 */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
271 |
/* 0338 */ 0x00000004L,
|
|
|
272 |
/* 033c */ 0x0f000001L, /* move 1, scratcha2, when msg_in */
|
|
|
273 |
/* 0340 */ 0x00000036L,
|
|
|
274 |
/* 0344 */ 0x60000040L, /* clear ack */
|
|
|
275 |
/* 0348 */ 0x00000000L,
|
|
|
276 |
/* 034c */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
277 |
/* 0350 */ 0x00000004L,
|
|
|
278 |
/* 0354 */ 0x0f000001L, /* move 1, scratcha3, when msg_in */
|
|
|
279 |
/* 0358 */ 0x00000037L,
|
|
|
280 |
/* 035c */ 0x72350000L, /* move scratcha1 to sfbr */
|
|
|
281 |
/* 0360 */ 0x00000000L,
|
|
|
282 |
/* 0364 */ 0x80840001L, /* jump ext_done, if not X_MSG_SDTR */
|
|
|
283 |
/* 0368 */ 0x00000070L,
|
|
|
284 |
/* 036c */ 0x98080000L, /* sdtr: int SIR_MSG_SDTR */
|
|
|
285 |
/* 0370 */ 0x0000000bL,
|
|
|
286 |
/* 0374 */ 0x60000040L, /* clear ack */
|
|
|
287 |
/* 0378 */ 0x00000000L,
|
|
|
288 |
/* 037c */ 0x80880000L, /* jump to_decisions */
|
|
|
289 |
/* 0380 */ 0x00000274L,
|
|
|
290 |
/* 0384 */ 0x60000040L, /* ext_2: clear ack */
|
|
|
291 |
/* 0388 */ 0x00000000L,
|
|
|
292 |
/* 038c */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
293 |
/* 0390 */ 0x00000004L,
|
|
|
294 |
/* 0394 */ 0x0f000001L, /* move 1, scratcha1, when msg_in */
|
|
|
295 |
/* 0398 */ 0x00000035L,
|
|
|
296 |
/* 039c */ 0x60000040L, /* clear ack */
|
|
|
297 |
/* 03a0 */ 0x00000000L,
|
|
|
298 |
/* 03a4 */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
299 |
/* 03a8 */ 0x00000004L,
|
|
|
300 |
/* 03ac */ 0x0f000001L, /* move 1, scratcha2, when msg_in */
|
|
|
301 |
/* 03b0 */ 0x00000036L,
|
|
|
302 |
/* 03b4 */ 0x72350000L, /* move scratcha1 to sfbr */
|
|
|
303 |
/* 03b8 */ 0x00000000L,
|
|
|
304 |
/* 03bc */ 0x80840003L, /* jump ext_done, if not X_MSG_WDTR */
|
|
|
305 |
/* 03c0 */ 0x00000018L,
|
|
|
306 |
/* 03c4 */ 0x98080000L, /* wdtr: int SIR_MSG_WDTR */
|
|
|
307 |
/* 03c8 */ 0x0000000fL,
|
|
|
308 |
/* 03cc */ 0x60000040L, /* clear ack */
|
|
|
309 |
/* 03d0 */ 0x00000000L,
|
|
|
310 |
/* 03d4 */ 0x80880000L, /* jump to_decisions */
|
|
|
311 |
/* 03d8 */ 0x0000021cL,
|
|
|
312 |
/* 03dc */ 0x58000008L, /* set atn */
|
|
|
313 |
/* 03e0 */ 0x00000000L,
|
|
|
314 |
/* 03e4 */ 0x60000040L, /* clear ack */
|
|
|
315 |
/* 03e8 */ 0x00000000L,
|
|
|
316 |
/* 03ec */ 0x78340700L, /* move MSG_REJECT to scratcha */
|
|
|
317 |
/* 03f0 */ 0x00000000L,
|
|
|
318 |
/* 03f4 */ 0x9e030000L, /* int error_unexpected_phase, when not msg_out */
|
|
|
319 |
/* 03f8 */ 0x00000004L,
|
|
|
320 |
/* 03fc */ 0x60000008L, /* clear atn */
|
|
|
321 |
/* 0400 */ 0x00000000L,
|
|
|
322 |
/* 0404 */ 0x0e000001L, /* move 1, scratcha, when msg_out */
|
|
|
323 |
/* 0408 */ 0x00000034L,
|
|
|
324 |
/* 040c */ 0x60000040L, /* clear ack */
|
|
|
325 |
/* 0410 */ 0x00000000L,
|
|
|
326 |
/* 0414 */ 0x868b0000L, /* jump reject, when msg_out */
|
|
|
327 |
/* 0418 */ 0x00ffffc0L,
|
|
|
328 |
/* 041c */ 0x80880000L, /* jump to_decisions */
|
|
|
329 |
/* 0420 */ 0x000001d4L,
|
|
|
330 |
/* 0424 */ 0x60000040L, /* clear ack */
|
|
|
331 |
/* 0428 */ 0x00000000L,
|
|
|
332 |
/* 042c */ 0x9f030000L, /* int error_unexpected_phase, when not msg_in */
|
|
|
333 |
/* 0430 */ 0x00000004L,
|
|
|
334 |
/* 0434 */ 0x0f000001L, /* move 1, scratcha1, when msg_in */
|
|
|
335 |
/* 0438 */ 0x00000035L,
|
|
|
336 |
/* 043c */ 0x98080000L, /* int SIR_MSG_IGNORE_WIDE_RESIDUE */
|
|
|
337 |
/* 0440 */ 0x00000010L,
|
|
|
338 |
/* 0444 */ 0x60000040L, /* clear ack */
|
|
|
339 |
/* 0448 */ 0x00000000L,
|
|
|
340 |
/* 044c */ 0x80880000L, /* jump to_decisions */
|
|
|
341 |
/* 0450 */ 0x000001a4L,
|
|
|
342 |
/* 0454 */ 0x58000008L, /* set atn */
|
|
|
343 |
/* 0458 */ 0x00000000L,
|
|
|
344 |
/* 045c */ 0x60000040L, /* clear ack */
|
|
|
345 |
/* 0460 */ 0x00000000L,
|
|
|
346 |
/* 0464 */ 0x9e030000L, /* int error_unexpected_phase, when not msg_out */
|
|
|
347 |
/* 0468 */ 0x00000004L,
|
|
|
348 |
/* 046c */ 0x1e000000L, /* move from msg_out_buf, when msg_out */
|
|
|
349 |
/* 0470 */ 0x00000001L,
|
|
|
350 |
/* 0474 */ 0x868b0000L, /* jump response_repeat, when msg_out */
|
|
|
351 |
/* 0478 */ 0x00fffff0L,
|
|
|
352 |
/* 047c */ 0x878b0000L, /* jump response_msg_in, when msg_in */
|
|
|
353 |
/* 0480 */ 0x00000010L,
|
|
|
354 |
/* 0484 */ 0x98080000L, /* int SIR_EV_RESPONSE_OK */
|
|
|
355 |
/* 0488 */ 0x0000000cL,
|
|
|
356 |
/* 048c */ 0x80880000L, /* jump to_decisions */
|
|
|
357 |
/* 0490 */ 0x00000164L,
|
|
|
358 |
/* 0494 */ 0x0f000001L, /* move 1, scratcha, when msg_in */
|
|
|
359 |
/* 0498 */ 0x00000034L,
|
|
|
360 |
/* 049c */ 0x808c0007L, /* jump rejected, if MSG_REJECT */
|
|
|
361 |
/* 04a0 */ 0x00fffdf8L,
|
|
|
362 |
/* 04a4 */ 0x98080000L, /* int SIR_EV_RESPONSE_OK */
|
|
|
363 |
/* 04a8 */ 0x0000000cL,
|
|
|
364 |
/* 04ac */ 0x80880000L, /* jump msg_in_not_reject */
|
|
|
365 |
/* 04b0 */ 0x00fffd60L,
|
|
|
366 |
/* 04b4 */ 0x7c027e00L, /* move scntl2&0x7e to scntl2 */
|
|
|
367 |
/* 04b8 */ 0x00000000L,
|
|
|
368 |
/* 04bc */ 0x60000040L, /* clear ack */
|
|
|
369 |
/* 04c0 */ 0x00000000L,
|
|
|
370 |
/* 04c4 */ 0x48000000L, /* wait disconnect */
|
|
|
371 |
/* 04c8 */ 0x00000000L,
|
|
|
372 |
/* 04cc */ 0xc0000004L, /* move memory 4, state, scratcha */
|
|
|
373 |
/* 04d0 */ 0x00000640L,
|
|
|
374 |
/* 04d4 */ 0x00000034L,
|
|
|
375 |
/* 04d8 */ 0x78340300L, /* move STATE_DISCONNECTED to scratcha0 */
|
|
|
376 |
/* 04dc */ 0x00000000L,
|
|
|
377 |
/* 04e0 */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
378 |
/* 04e4 */ 0x00000034L,
|
|
|
379 |
/* 04e8 */ 0x00000640L,
|
|
|
380 |
/* 04ec */ 0x88880000L, /* call save_state */
|
|
|
381 |
/* 04f0 */ 0x00000238L,
|
|
|
382 |
/* 04f4 */ 0x74020100L, /* move scntl2&0x01 to sfbr */
|
|
|
383 |
/* 04f8 */ 0x00000000L,
|
|
|
384 |
/* 04fc */ 0x98040000L, /* int SIR_NOTIFY_WSR, if not 0 */
|
|
|
385 |
/* 0500 */ 0x00000073L,
|
|
|
386 |
/* 0504 */ 0x80880000L, /* jump issue_check */
|
|
|
387 |
/* 0508 */ 0x00000248L,
|
|
|
388 |
/* 050c */ 0x98080000L, /* int SIR_NOTIFY_RESELECTED_ON_SELECT */
|
|
|
389 |
/* 0510 */ 0x00000075L,
|
|
|
390 |
/* 0514 */ 0x80880000L, /* jump reselected */
|
|
|
391 |
/* 0518 */ 0x00000008L,
|
|
|
392 |
/* 051c */ 0x54000000L, /* wait reselect sigp_set */
|
|
|
393 |
/* 0520 */ 0x00000228L,
|
|
|
394 |
/* 0524 */ 0x60000200L, /* clear target */
|
|
|
395 |
/* 0528 */ 0x00000000L,
|
|
|
396 |
/* 052c */ 0x9f030000L, /* int SIR_ERROR_NOT_MSG_IN_AFTER_RESELECT, when not msg_in */
|
|
|
397 |
/* 0530 */ 0x00000006L,
|
|
|
398 |
/* 0534 */ 0x0f000001L, /* move 1, scratchb, when msg_in */
|
|
|
399 |
/* 0538 */ 0x0000005cL,
|
|
|
400 |
/* 053c */ 0x98041f80L, /* int error_not_identify_after_reselect, if not MSG_IDENTIFY and mask 0x1f */
|
|
|
401 |
/* 0540 */ 0x00000007L,
|
|
|
402 |
/* 0544 */ 0xc0000004L, /* move memory 4, dsa_head, dsa */
|
|
|
403 |
/* 0548 */ 0x00000008L,
|
|
|
404 |
/* 054c */ 0x00000010L,
|
|
|
405 |
/* 0550 */ 0x88880000L, /* call load_state */
|
|
|
406 |
/* 0554 */ 0x00000100L,
|
|
|
407 |
/* 0558 */ 0xc0000004L, /* move memory 4, state, scratcha */
|
|
|
408 |
/* 055c */ 0x00000640L,
|
|
|
409 |
/* 0560 */ 0x00000034L,
|
|
|
410 |
/* 0564 */ 0x72340000L, /* move scratcha0 to sfbr */
|
|
|
411 |
/* 0568 */ 0x00000000L,
|
|
|
412 |
/* 056c */ 0x80840003L, /* jump find_dsa_next, if not STATE_DISCONNECTED */
|
|
|
413 |
/* 0570 */ 0x00000040L,
|
|
|
414 |
/* 0574 */ 0x980c0005L, /* int error_reselected, if STATE_END */
|
|
|
415 |
/* 0578 */ 0x00000003L,
|
|
|
416 |
/* 057c */ 0x740a0900L, /* move ssid & ssid_mask to sfbr */
|
|
|
417 |
/* 0580 */ 0x00000000L,
|
|
|
418 |
/* 0584 */ 0xc0000001L, /* move memory 1, targ, find_dsa_smc1 */
|
|
|
419 |
/* 0588 */ 0x00000648L,
|
|
|
420 |
/* 058c */ 0x00000590L,
|
|
|
421 |
/* 0590 */ 0x808400ffL, /* jump find_dsa_next, if not 255 */
|
|
|
422 |
/* 0594 */ 0x0000001cL,
|
|
|
423 |
/* 0598 */ 0xc0000001L, /* move memory 1, lun, find_dsa_smc2 */
|
|
|
424 |
/* 059c */ 0x0000064cL,
|
|
|
425 |
/* 05a0 */ 0x000005acL,
|
|
|
426 |
/* 05a4 */ 0x725c0000L, /* move scratchb0 to sfbr */
|
|
|
427 |
/* 05a8 */ 0x00000000L,
|
|
|
428 |
/* 05ac */ 0x808cf8ffL, /* jump reload_sync, if 255 and mask ~7 */
|
|
|
429 |
/* 05b0 */ 0x00000034L,
|
|
|
430 |
/* 05b4 */ 0xc0000004L, /* move memory 4, next, dsa */
|
|
|
431 |
/* 05b8 */ 0x00000654L,
|
|
|
432 |
/* 05bc */ 0x00000010L,
|
|
|
433 |
/* 05c0 */ 0x80880000L, /* jump find_dsa_loop */
|
|
|
434 |
/* 05c4 */ 0x00ffff88L,
|
|
|
435 |
/* 05c8 */ 0x60000008L, /* clear atn */
|
|
|
436 |
/* 05cc */ 0x00000000L,
|
|
|
437 |
/* 05d0 */ 0x878b0000L, /* jump msg_in_phase, when msg_in */
|
|
|
438 |
/* 05d4 */ 0x00fffc2cL,
|
|
|
439 |
/* 05d8 */ 0x98080000L, /* int SIR_MSG_REJECT */
|
|
|
440 |
/* 05dc */ 0x0000000aL,
|
|
|
441 |
/* 05e0 */ 0x80880000L, /* jump to_decisions */
|
|
|
442 |
/* 05e4 */ 0x00000010L,
|
|
|
443 |
/* 05e8 */ 0x88880000L, /* call load_sync */
|
|
|
444 |
/* 05ec */ 0x000001b0L,
|
|
|
445 |
/* 05f0 */ 0x60000040L, /* clear ack */
|
|
|
446 |
/* 05f4 */ 0x00000000L,
|
|
|
447 |
/* 05f8 */ 0x818b0000L, /* jump data_in_phase, when data_in */
|
|
|
448 |
/* 05fc */ 0x00fffa58L,
|
|
|
449 |
/* 0600 */ 0x828a0000L, /* jump cmd_phase, if cmd */
|
|
|
450 |
/* 0604 */ 0x00fffa38L,
|
|
|
451 |
/* 0608 */ 0x808a0000L, /* jump data_out_phase, if data_out */
|
|
|
452 |
/* 060c */ 0x00fffb24L,
|
|
|
453 |
/* 0610 */ 0x838a0000L, /* jump status_phase, if status */
|
|
|
454 |
/* 0614 */ 0x00fffbdcL,
|
|
|
455 |
/* 0618 */ 0x878a0000L, /* jump msg_in_phase, if msg_in */
|
|
|
456 |
/* 061c */ 0x00fffbe4L,
|
|
|
457 |
/* 0620 */ 0x98080000L, /* int error_unexpected_phase */
|
|
|
458 |
/* 0624 */ 0x00000004L,
|
|
|
459 |
/* 0628 */ 0x838b0000L, /* jump status_phase, when status */
|
|
|
460 |
/* 062c */ 0x00fffbc4L,
|
|
|
461 |
/* 0630 */ 0x878a0000L, /* jump msg_in_phase, if msg_in */
|
|
|
462 |
/* 0634 */ 0x00fffbccL,
|
|
|
463 |
/* 0638 */ 0x98080000L, /* int error_unexpected_phase */
|
|
|
464 |
/* 063c */ 0x00000004L,
|
|
|
465 |
/* 0640 */ 0x00000000L, /* state: defw 0 */
|
|
|
466 |
/* 0644 */ 0x00000000L, /* dmaaddr: defw 0 */
|
|
|
467 |
/* 0648 */ 0x00000000L, /* targ: defw 0 */
|
|
|
468 |
/* 064c */ 0x00000000L, /* lun: defw 0 */
|
|
|
469 |
/* 0650 */ 0x00000000L, /* sync: defw 0 */
|
|
|
470 |
/* 0654 */ 0x00000000L, /* next: defw 0 */
|
|
|
471 |
/* dsa_load_len = dsa_load_end - dsa_copy */
|
|
|
472 |
/* dsa_save_len = dsa_save_end - dsa_copy */
|
|
|
473 |
/* 0658 */ 0x80880000L, /* jump load_state_okay */
|
|
|
474 |
/* 065c */ 0x000000acL,
|
|
|
475 |
/* 0660 */ 0x72100000L, /* move dsa0 to sfbr */
|
|
|
476 |
/* 0664 */ 0x00000000L,
|
|
|
477 |
/* 0668 */ 0x80840000L, /* jump load_state_okay, if not 0 */
|
|
|
478 |
/* 066c */ 0x0000009cL,
|
|
|
479 |
/* 0670 */ 0x72110000L, /* move dsa1 to sfbr */
|
|
|
480 |
/* 0674 */ 0x00000000L,
|
|
|
481 |
/* 0678 */ 0x80840000L, /* jump load_state_okay, if not 0 */
|
|
|
482 |
/* 067c */ 0x0000008cL,
|
|
|
483 |
/* 0680 */ 0x72120000L, /* move dsa2 to sfbr */
|
|
|
484 |
/* 0684 */ 0x00000000L,
|
|
|
485 |
/* 0688 */ 0x80840000L, /* jump load_state_okay, if not 0 */
|
|
|
486 |
/* 068c */ 0x0000007cL,
|
|
|
487 |
/* 0690 */ 0x72130000L, /* move dsa3 to sfbr */
|
|
|
488 |
/* 0694 */ 0x00000000L,
|
|
|
489 |
/* 0698 */ 0x80840000L, /* jump load_state_okay, if not 0 */
|
|
|
490 |
/* 069c */ 0x0000006cL,
|
|
|
491 |
/* 06a0 */ 0xc0000004L, /* move memory 4, dsa, dmaaddr */
|
|
|
492 |
/* 06a4 */ 0x00000010L,
|
|
|
493 |
/* 06a8 */ 0x00000644L,
|
|
|
494 |
/* 06ac */ 0xc0000004L, /* move memory 4, dsa, targ */
|
|
|
495 |
/* 06b0 */ 0x00000010L,
|
|
|
496 |
/* 06b4 */ 0x00000648L,
|
|
|
497 |
/* 06b8 */ 0xc0000004L, /* move memory 4, dsa, lun */
|
|
|
498 |
/* 06bc */ 0x00000010L,
|
|
|
499 |
/* 06c0 */ 0x0000064cL,
|
|
|
500 |
/* 06c4 */ 0xc0000004L, /* move memory 4, dsa, sync */
|
|
|
501 |
/* 06c8 */ 0x00000010L,
|
|
|
502 |
/* 06cc */ 0x00000650L,
|
|
|
503 |
/* 06d0 */ 0xc0000004L, /* move memory 4, dsa, next */
|
|
|
504 |
/* 06d4 */ 0x00000010L,
|
|
|
505 |
/* 06d8 */ 0x00000654L,
|
|
|
506 |
/* 06dc */ 0xc0000004L, /* move memory 4, dsa, scratcha */
|
|
|
507 |
/* 06e0 */ 0x00000010L,
|
|
|
508 |
/* 06e4 */ 0x00000034L,
|
|
|
509 |
/* 06e8 */ 0x68080500L, /* move STATE_END to sfbr */
|
|
|
510 |
/* 06ec */ 0x00000000L,
|
|
|
511 |
/* 06f0 */ 0x6a340000L, /* move sfbr to scratcha0 */
|
|
|
512 |
/* 06f4 */ 0x00000000L,
|
|
|
513 |
/* 06f8 */ 0xc0000004L, /* move memory 4, scratcha, state */
|
|
|
514 |
/* 06fc */ 0x00000034L,
|
|
|
515 |
/* 0700 */ 0x00000640L,
|
|
|
516 |
/* 0704 */ 0x90080000L, /* return */
|
|
|
517 |
/* 0708 */ 0x00000000L,
|
|
|
518 |
/* 070c */ 0xc0000004L, /* move memory 4, dsa, load_state_smc0 + 4 */
|
|
|
519 |
/* 0710 */ 0x00000010L,
|
|
|
520 |
/* 0714 */ 0x0000071cL,
|
|
|
521 |
/* 0718 */ 0xc0000018L, /* move memory dsa_load_len, 0, dsa_copy */
|
|
|
522 |
/* 071c */ 0x00000000L,
|
|
|
523 |
/* 0720 */ 0x00000640L,
|
|
|
524 |
/* 0724 */ 0x90080000L, /* return */
|
|
|
525 |
/* 0728 */ 0x00000000L,
|
|
|
526 |
/* 072c */ 0xc0000004L, /* move memory 4, dsa, save_state_smc0 + 8 */
|
|
|
527 |
/* 0730 */ 0x00000010L,
|
|
|
528 |
/* 0734 */ 0x00000740L,
|
|
|
529 |
/* 0738 */ 0xc0000008L, /* move memory dsa_save_len, dsa_copy, 0 */
|
|
|
530 |
/* 073c */ 0x00000640L,
|
|
|
531 |
/* 0740 */ 0x00000000L,
|
|
|
532 |
/* 0744 */ 0x90080000L, /* return */
|
|
|
533 |
/* 0748 */ 0x00000000L,
|
|
|
534 |
/* 074c */ 0x721a0000L, /* move ctest2 to sfbr */
|
|
|
535 |
/* 0750 */ 0x00000000L,
|
|
|
536 |
/* 0754 */ 0xc0000004L, /* move memory 4, dsa_head, dsa */
|
|
|
537 |
/* 0758 */ 0x00000008L,
|
|
|
538 |
/* 075c */ 0x00000010L,
|
|
|
539 |
/* 0760 */ 0x88880000L, /* call load_state */
|
|
|
540 |
/* 0764 */ 0x00fffef0L,
|
|
|
541 |
/* 0768 */ 0xc0000004L, /* move memory 4, state, scratcha */
|
|
|
542 |
/* 076c */ 0x00000640L,
|
|
|
543 |
/* 0770 */ 0x00000034L,
|
|
|
544 |
/* 0774 */ 0x72340000L, /* move scratcha0 to sfbr */
|
|
|
545 |
/* 0778 */ 0x00000000L,
|
|
|
546 |
/* 077c */ 0x808c0002L, /* jump start, if STATE_ISSUE */
|
|
|
547 |
/* 0780 */ 0x00fff884L,
|
|
|
548 |
/* 0784 */ 0x808c0005L, /* jump wait_for_reselection, if STATE_END */
|
|
|
549 |
/* 0788 */ 0x00fffd90L,
|
|
|
550 |
/* 078c */ 0xc0000004L, /* move memory 4, next, dsa */
|
|
|
551 |
/* 0790 */ 0x00000654L,
|
|
|
552 |
/* 0794 */ 0x00000010L,
|
|
|
553 |
/* 0798 */ 0x80880000L, /* jump issue_check_loop */
|
|
|
554 |
/* 079c */ 0x00ffffc0L,
|
|
|
555 |
/* 07a0 */ 0xc0000004L, /* move memory 4, sync, scratcha */
|
|
|
556 |
/* 07a4 */ 0x00000650L,
|
|
|
557 |
/* 07a8 */ 0x00000034L,
|
|
|
558 |
/* 07ac */ 0x72340000L, /* move scratcha0 to sfbr */
|
|
|
559 |
/* 07b0 */ 0x00000000L,
|
|
|
560 |
/* 07b4 */ 0x6a030000L, /* move sfbr to scntl3 */
|
|
|
561 |
/* 07b8 */ 0x00000000L,
|
|
|
562 |
/* 07bc */ 0x72350000L, /* move scratcha1 to sfbr */
|
|
|
563 |
/* 07c0 */ 0x00000000L,
|
|
|
564 |
/* 07c4 */ 0x6a050000L, /* move sfbr to sxfer */
|
|
|
565 |
/* 07c8 */ 0x00000000L,
|
|
|
566 |
/* 07cc */ 0x90080000L, /* return */
|
|
|
567 |
/* 07d0 */ 0x00000000L,
|
|
|
568 |
};
|
|
|
569 |
|
|
|
570 |
#define NA_SCRIPT_SIZE 501
|
|
|
571 |
|
|
|
572 |
struct na_patch na_patches[] = {
|
|
|
573 |
{ 0x0006, 5 }, /* 00000018 */
|
|
|
574 |
{ 0x000b, 4 }, /* 0000002c */
|
|
|
575 |
{ 0x0013, 4 }, /* 0000004c */
|
|
|
576 |
{ 0x0017, 1 }, /* 0000005c */
|
|
|
577 |
{ 0x0018, 2 }, /* 00000060 */
|
|
|
578 |
{ 0x001a, 1 }, /* 00000068 */
|
|
|
579 |
{ 0x001b, 2 }, /* 0000006c */
|
|
|
580 |
{ 0x0021, 1 }, /* 00000084 */
|
|
|
581 |
{ 0x002b, 2 }, /* 000000ac */
|
|
|
582 |
{ 0x002c, 1 }, /* 000000b0 */
|
|
|
583 |
{ 0x0030, 2 }, /* 000000c0 */
|
|
|
584 |
{ 0x0031, 1 }, /* 000000c4 */
|
|
|
585 |
{ 0x0037, 2 }, /* 000000dc */
|
|
|
586 |
{ 0x0038, 1 }, /* 000000e0 */
|
|
|
587 |
{ 0x003a, 2 }, /* 000000e8 */
|
|
|
588 |
{ 0x003b, 1 }, /* 000000ec */
|
|
|
589 |
{ 0x0043, 4 }, /* 0000010c */
|
|
|
590 |
{ 0x0047, 2 }, /* 0000011c */
|
|
|
591 |
{ 0x0048, 1 }, /* 00000120 */
|
|
|
592 |
{ 0x004e, 1 }, /* 00000138 */
|
|
|
593 |
{ 0x004f, 2 }, /* 0000013c */
|
|
|
594 |
{ 0x0051, 1 }, /* 00000144 */
|
|
|
595 |
{ 0x0052, 2 }, /* 00000148 */
|
|
|
596 |
{ 0x0058, 1 }, /* 00000160 */
|
|
|
597 |
{ 0x0059, 2 }, /* 00000164 */
|
|
|
598 |
{ 0x005b, 1 }, /* 0000016c */
|
|
|
599 |
{ 0x0065, 2 }, /* 00000194 */
|
|
|
600 |
{ 0x0066, 1 }, /* 00000198 */
|
|
|
601 |
{ 0x006a, 2 }, /* 000001a8 */
|
|
|
602 |
{ 0x006b, 1 }, /* 000001ac */
|
|
|
603 |
{ 0x0073, 4 }, /* 000001cc */
|
|
|
604 |
{ 0x0077, 2 }, /* 000001dc */
|
|
|
605 |
{ 0x0078, 1 }, /* 000001e0 */
|
|
|
606 |
{ 0x007e, 4 }, /* 000001f8 */
|
|
|
607 |
{ 0x0082, 2 }, /* 00000208 */
|
|
|
608 |
{ 0x0098, 1 }, /* 00000260 */
|
|
|
609 |
{ 0x0099, 2 }, /* 00000264 */
|
|
|
610 |
{ 0x009f, 2 }, /* 0000027c */
|
|
|
611 |
{ 0x00a0, 1 }, /* 00000280 */
|
|
|
612 |
{ 0x00b6, 2 }, /* 000002d8 */
|
|
|
613 |
{ 0x00c2, 2 }, /* 00000308 */
|
|
|
614 |
{ 0x00ca, 2 }, /* 00000328 */
|
|
|
615 |
{ 0x00d0, 2 }, /* 00000340 */
|
|
|
616 |
{ 0x00d6, 2 }, /* 00000358 */
|
|
|
617 |
{ 0x00e6, 2 }, /* 00000398 */
|
|
|
618 |
{ 0x00ec, 2 }, /* 000003b0 */
|
|
|
619 |
{ 0x0102, 2 }, /* 00000408 */
|
|
|
620 |
{ 0x010e, 2 }, /* 00000438 */
|
|
|
621 |
{ 0x011c, 4 }, /* 00000470 */
|
|
|
622 |
{ 0x0126, 2 }, /* 00000498 */
|
|
|
623 |
{ 0x0134, 1 }, /* 000004d0 */
|
|
|
624 |
{ 0x0135, 2 }, /* 000004d4 */
|
|
|
625 |
{ 0x0139, 2 }, /* 000004e4 */
|
|
|
626 |
{ 0x013a, 1 }, /* 000004e8 */
|
|
|
627 |
{ 0x014e, 2 }, /* 00000538 */
|
|
|
628 |
{ 0x0152, 4 }, /* 00000548 */
|
|
|
629 |
{ 0x0153, 2 }, /* 0000054c */
|
|
|
630 |
{ 0x0157, 1 }, /* 0000055c */
|
|
|
631 |
{ 0x0158, 2 }, /* 00000560 */
|
|
|
632 |
{ 0x015f, 3 }, /* 0000057c */
|
|
|
633 |
{ 0x0162, 1 }, /* 00000588 */
|
|
|
634 |
{ 0x0163, 1 }, /* 0000058c */
|
|
|
635 |
{ 0x0167, 1 }, /* 0000059c */
|
|
|
636 |
{ 0x0168, 1 }, /* 000005a0 */
|
|
|
637 |
{ 0x016e, 1 }, /* 000005b8 */
|
|
|
638 |
{ 0x016f, 2 }, /* 000005bc */
|
|
|
639 |
{ 0x01a9, 2 }, /* 000006a4 */
|
|
|
640 |
{ 0x01aa, 1 }, /* 000006a8 */
|
|
|
641 |
{ 0x01ac, 2 }, /* 000006b0 */
|
|
|
642 |
{ 0x01ad, 1 }, /* 000006b4 */
|
|
|
643 |
{ 0x01af, 2 }, /* 000006bc */
|
|
|
644 |
{ 0x01b0, 1 }, /* 000006c0 */
|
|
|
645 |
{ 0x01b2, 2 }, /* 000006c8 */
|
|
|
646 |
{ 0x01b3, 1 }, /* 000006cc */
|
|
|
647 |
{ 0x01b5, 2 }, /* 000006d4 */
|
|
|
648 |
{ 0x01b6, 1 }, /* 000006d8 */
|
|
|
649 |
{ 0x01b8, 2 }, /* 000006e0 */
|
|
|
650 |
{ 0x01b9, 2 }, /* 000006e4 */
|
|
|
651 |
{ 0x01bf, 2 }, /* 000006fc */
|
|
|
652 |
{ 0x01c0, 1 }, /* 00000700 */
|
|
|
653 |
{ 0x01c4, 2 }, /* 00000710 */
|
|
|
654 |
{ 0x01c5, 1 }, /* 00000714 */
|
|
|
655 |
{ 0x01c8, 1 }, /* 00000720 */
|
|
|
656 |
{ 0x01cc, 2 }, /* 00000730 */
|
|
|
657 |
{ 0x01cd, 1 }, /* 00000734 */
|
|
|
658 |
{ 0x01cf, 1 }, /* 0000073c */
|
|
|
659 |
{ 0x01d6, 4 }, /* 00000758 */
|
|
|
660 |
{ 0x01d7, 2 }, /* 0000075c */
|
|
|
661 |
{ 0x01db, 1 }, /* 0000076c */
|
|
|
662 |
{ 0x01dc, 2 }, /* 00000770 */
|
|
|
663 |
{ 0x01e4, 1 }, /* 00000790 */
|
|
|
664 |
{ 0x01e5, 2 }, /* 00000794 */
|
|
|
665 |
{ 0x01e9, 1 }, /* 000007a4 */
|
|
|
666 |
{ 0x01ea, 2 }, /* 000007a8 */
|
|
|
667 |
};
|
|
|
668 |
#define NA_PATCHES 94
|
|
|
669 |
|
|
|
670 |
enum na_external {
|
|
|
671 |
X_scsi_id_buf,
|
|
|
672 |
X_msg_out_buf,
|
|
|
673 |
X_cmd_buf,
|
|
|
674 |
X_data_buf,
|
|
|
675 |
X_status_buf,
|
|
|
676 |
X_msgin_buf,
|
|
|
677 |
X_dsa_0,
|
|
|
678 |
X_dsa_1,
|
|
|
679 |
X_dsa_head,
|
|
|
680 |
X_ssid_mask,
|
|
|
681 |
};
|
|
|
682 |
|
|
|
683 |
enum {
|
|
|
684 |
E_issue_check_loop = 1888,
|
|
|
685 |
E_save_state_smc0 = 1848,
|
|
|
686 |
E_load_state_smc0 = 1816,
|
|
|
687 |
E_load_state_okay = 1804,
|
|
|
688 |
E_dsa_load_end = 1624,
|
|
|
689 |
E_sync = 1616,
|
|
|
690 |
E_dsa_save_end = 1608,
|
|
|
691 |
E_dsa_copy = 1600,
|
|
|
692 |
E_id_out_mismatch_recover = 1480,
|
|
|
693 |
E_next = 1620,
|
|
|
694 |
E_reload_sync = 1512,
|
|
|
695 |
E_find_dsa_smc2 = 1452,
|
|
|
696 |
E_lun = 1612,
|
|
|
697 |
E_find_dsa_smc1 = 1424,
|
|
|
698 |
E_targ = 1608,
|
|
|
699 |
E_find_dsa_next = 1460,
|
|
|
700 |
E_load_state = 1624,
|
|
|
701 |
E_find_dsa_loop = 1360,
|
|
|
702 |
E_find_dsa = 1348,
|
|
|
703 |
E_sigp_set = 1868,
|
|
|
704 |
E_reselected = 1316,
|
|
|
705 |
E_wsr_check = 1268,
|
|
|
706 |
E_response_msg_in = 1172,
|
|
|
707 |
E_response_repeat = 1132,
|
|
|
708 |
E_response = 1108,
|
|
|
709 |
E_reject = 988,
|
|
|
710 |
E_wdtr = 964,
|
|
|
711 |
E_sdtr = 876,
|
|
|
712 |
E_ext_done = 988,
|
|
|
713 |
E_ext_1 = 756,
|
|
|
714 |
E_ext_2 = 900,
|
|
|
715 |
E_ext_3 = 788,
|
|
|
716 |
E_issue_check = 1876,
|
|
|
717 |
E_extended = 708,
|
|
|
718 |
E_ignore_wide = 1060,
|
|
|
719 |
E_msg_in_skip = 692,
|
|
|
720 |
E_disconnected = 1204,
|
|
|
721 |
E_msg_in_not_reject = 532,
|
|
|
722 |
E_rejected = 668,
|
|
|
723 |
E_msg_in_phase = 516,
|
|
|
724 |
E_status_phase = 500,
|
|
|
725 |
E_data_out_mismatch = 464,
|
|
|
726 |
E_data_out_block_mismatch = 368,
|
|
|
727 |
E_data_out_normal = 440,
|
|
|
728 |
E_data_out_block_loop = 332,
|
|
|
729 |
E_data_out_phase = 308,
|
|
|
730 |
E_post_data_to_decisions = 1576,
|
|
|
731 |
E_data_in_mismatch = 272,
|
|
|
732 |
E_data_mismatch_recover = 228,
|
|
|
733 |
E_data_block_mismatch_recover = 216,
|
|
|
734 |
E_save_state = 1836,
|
|
|
735 |
E_data_in_block_mismatch = 136,
|
|
|
736 |
E_data_in_normal = 248,
|
|
|
737 |
E_data_in_block_loop = 112,
|
|
|
738 |
E_dmaaddr = 1604,
|
|
|
739 |
E_state = 1600,
|
|
|
740 |
E_data_in_phase = 88,
|
|
|
741 |
E_cmd_out_mismatch = 80,
|
|
|
742 |
E_cmd_phase = 64,
|
|
|
743 |
E_to_decisions = 1528,
|
|
|
744 |
E_id_out_mismatch = 48,
|
|
|
745 |
E_start1 = 40,
|
|
|
746 |
E_reselected_on_select = 1292,
|
|
|
747 |
E_load_sync = 1952,
|
|
|
748 |
E_start = 8,
|
|
|
749 |
E_wait_for_reselection = 1308,
|
|
|
750 |
};
|
|
|
751 |
#define A_dsa_save_len 8
|
|
|
752 |
#define A_dsa_load_len 24
|
|
|
753 |
#define A_BSIZE 512
|
|
|
754 |
#define A_MSG_REJECT 7
|
|
|
755 |
#define A_X_MSG_WDTR 3
|
|
|
756 |
#define A_X_MSG_SDTR 1
|
|
|
757 |
#define A_X_MSG 1
|
|
|
758 |
#define A_MSG_IGNORE_WIDE_RESIDUE 35
|
|
|
759 |
#define A_MSG_RESTORE_POINTERS 3
|
|
|
760 |
#define A_MSG_SAVE_DATA_POINTER 2
|
|
|
761 |
#define A_MSG_DISCONNECT 4
|
|
|
762 |
#define A_MSG_IDENTIFY 128
|
|
|
763 |
#define A_RESULT_OK 0
|
|
|
764 |
#define A_STATE_END 5
|
|
|
765 |
#define A_STATE_DONE 4
|
|
|
766 |
#define A_STATE_DISCONNECTED 3
|
|
|
767 |
#define A_STATE_ISSUE 2
|
|
|
768 |
#define A_STATE_ALLOCATED 1
|
|
|
769 |
#define A_STATE_FREE 0
|
|
|
770 |
#define A_SIR_NOTIFY_LOAD_STATE 118
|
|
|
771 |
#define A_SIR_NOTIFY_RESELECTED_ON_SELECT 117
|
|
|
772 |
#define A_SIR_NOTIFY_LOAD_SYNC 116
|
|
|
773 |
#define A_SIR_NOTIFY_WSR 115
|
|
|
774 |
#define A_SIR_NOTIFY_BLOCK_DATA_IN 114
|
|
|
775 |
#define A_SIR_NOTIFY_DATA_OUT 113
|
|
|
776 |
#define A_SIR_NOTIFY_DATA_IN 112
|
|
|
777 |
#define A_SIR_NOTIFY_COMMAND 111
|
|
|
778 |
#define A_SIR_NOTIFY_DUMP_NEXT_CODE 110
|
|
|
779 |
#define A_SIR_NOTIFY_ISSUE_CHECK 109
|
|
|
780 |
#define A_SIR_NOTIFY_WAIT_RESELECT 108
|
|
|
781 |
#define A_SIR_NOTIFY_ISSUE 107
|
|
|
782 |
#define A_SIR_NOTIFY_SIGP 106
|
|
|
783 |
#define A_SIR_NOTIFY_DUMP2 105
|
|
|
784 |
#define A_SIR_NOTIFY_DUMP 104
|
|
|
785 |
#define A_SIR_NOTIFY_STATUS 103
|
|
|
786 |
#define A_SIR_NOTIFY_MSG_IN 102
|
|
|
787 |
#define A_SIR_NOTIFY_RESELECT 101
|
|
|
788 |
#define A_SIR_NOTIFY_DISC 100
|
|
|
789 |
#define A_SIR_MSG_IGNORE_WIDE_RESIDUE 16
|
|
|
790 |
#define A_SIR_MSG_WDTR 15
|
|
|
791 |
#define A_SIR_EV_PHASE_SWITCH_AFTER_ID 14
|
|
|
792 |
#define A_error_sigp_set 13
|
|
|
793 |
#define A_SIR_EV_RESPONSE_OK 12
|
|
|
794 |
#define A_SIR_MSG_SDTR 11
|
|
|
795 |
#define A_SIR_MSG_REJECT 10
|
|
|
796 |
#define A_error_too_little_data 9
|
|
|
797 |
#define A_error_too_much_data 8
|
|
|
798 |
#define A_error_not_identify_after_reselect 7
|
|
|
799 |
#define A_SIR_ERROR_NOT_MSG_IN_AFTER_RESELECT 6
|
|
|
800 |
#define A_error_weird_message 5
|
|
|
801 |
#define A_error_unexpected_phase 4
|
|
|
802 |
#define A_error_reselected 3
|
|
|
803 |
#define A_error_disconnected 2
|
|
|
804 |
#define A_error_not_cmd_complete 1
|
|
|
805 |
#define A_SIR_MSG_IO_COMPLETE 0
|