xref: /freebsd/sys/dev/aic7xxx/aic79xx_seq.h (revision a03411e84728e9b267056fd31c7d1d9d1dc1b01e)
1 /*
2  * DO NOT EDIT - This file is automatically generated
3  *		 from the following source files:
4  *
5  * $Id: //depot/aic7xxx/aic7xxx/aic79xx.seq#119 $
6  * $Id: //depot/aic7xxx/aic7xxx/aic79xx.reg#76 $
7  */
8 static uint8_t seqprog[] = {
9 	0xff, 0x02, 0x06, 0x78,
10 	0x00, 0xea, 0x6e, 0x59,
11 	0x01, 0xea, 0x04, 0x30,
12 	0xff, 0x04, 0x0c, 0x78,
13 	0x19, 0xea, 0x6e, 0x59,
14 	0x19, 0xea, 0x04, 0x00,
15 	0x33, 0xea, 0x68, 0x59,
16 	0x33, 0xea, 0x00, 0x00,
17 	0x60, 0x3a, 0x3a, 0x68,
18 	0x04, 0x4d, 0x35, 0x78,
19 	0x01, 0x34, 0xc1, 0x31,
20 	0x00, 0x32, 0x21, 0x60,
21 	0x01, 0x35, 0xc1, 0x31,
22 	0x00, 0x33, 0x21, 0x60,
23 	0xfb, 0x4d, 0x9b, 0x0a,
24 	0x00, 0xe2, 0x34, 0x40,
25 	0x50, 0x4b, 0x3a, 0x68,
26 	0xff, 0x31, 0x3b, 0x70,
27 	0x02, 0x30, 0x51, 0x31,
28 	0xff, 0x8d, 0x2d, 0x70,
29 	0x02, 0x8c, 0x51, 0x31,
30 	0xff, 0x8d, 0x29, 0x60,
31 	0x02, 0x28, 0x19, 0x33,
32 	0x02, 0x30, 0x51, 0x32,
33 	0xff, 0xea, 0x62, 0x02,
34 	0x00, 0xe2, 0x3a, 0x40,
35 	0xff, 0x21, 0x3b, 0x70,
36 	0x40, 0x4b, 0xb4, 0x69,
37 	0x00, 0xe2, 0x72, 0x59,
38 	0x40, 0x4b, 0xb4, 0x69,
39 	0x20, 0x4b, 0xa0, 0x69,
40 	0xfc, 0x42, 0x44, 0x78,
41 	0x10, 0x40, 0x44, 0x78,
42 	0x00, 0xe2, 0x10, 0x5e,
43 	0x20, 0x4d, 0x48, 0x78,
44 	0x00, 0xe2, 0x10, 0x5e,
45 	0x30, 0x3f, 0xc0, 0x09,
46 	0x30, 0xe0, 0x50, 0x60,
47 	0x7f, 0x4a, 0x94, 0x08,
48 	0x00, 0xe2, 0x52, 0x40,
49 	0xc0, 0x4a, 0x94, 0x00,
50 	0x00, 0xe2, 0x5e, 0x58,
51 	0x00, 0xe2, 0x76, 0x58,
52 	0x00, 0xe2, 0x86, 0x58,
53 	0x00, 0xe2, 0x06, 0x40,
54 	0x33, 0xea, 0x68, 0x59,
55 	0x33, 0xea, 0x00, 0x00,
56 	0x01, 0x52, 0x84, 0x78,
57 	0x02, 0x58, 0x50, 0x31,
58 	0xff, 0xea, 0x10, 0x0b,
59 	0xff, 0x97, 0x6f, 0x78,
60 	0x50, 0x4b, 0x6a, 0x68,
61 	0xbf, 0x3a, 0x74, 0x08,
62 	0x14, 0xea, 0x6e, 0x59,
63 	0x14, 0xea, 0x04, 0x00,
64 	0x08, 0x92, 0x25, 0x03,
65 	0xff, 0x90, 0x5f, 0x68,
66 	0x00, 0xe2, 0x8a, 0x5b,
67 	0x00, 0xe2, 0x5e, 0x40,
68 	0x00, 0xea, 0x68, 0x59,
69 	0x01, 0xea, 0x00, 0x30,
70 	0x80, 0xf9, 0x7e, 0x68,
71 	0x00, 0xe2, 0x66, 0x59,
72 	0x11, 0xea, 0x68, 0x59,
73 	0x11, 0xea, 0x00, 0x00,
74 	0x80, 0xf9, 0x66, 0x79,
75 	0xff, 0xea, 0xd4, 0x0d,
76 	0x22, 0xea, 0x68, 0x59,
77 	0x22, 0xea, 0x00, 0x00,
78 	0x10, 0x16, 0x90, 0x78,
79 	0x10, 0x16, 0x2c, 0x00,
80 	0x01, 0x0b, 0xae, 0x32,
81 	0x18, 0xad, 0x1c, 0x79,
82 	0x04, 0xad, 0xdc, 0x68,
83 	0x80, 0xad, 0x84, 0x78,
84 	0x10, 0xad, 0xaa, 0x78,
85 	0xe7, 0xad, 0x5a, 0x09,
86 	0x02, 0x8c, 0x59, 0x32,
87 	0xff, 0x8d, 0xa1, 0x60,
88 	0xff, 0xea, 0x5e, 0x02,
89 	0xff, 0x88, 0xa7, 0x78,
90 	0x02, 0x30, 0x19, 0x33,
91 	0x02, 0xa8, 0x60, 0x36,
92 	0x02, 0x28, 0x19, 0x33,
93 	0x02, 0xa8, 0x50, 0x36,
94 	0xe7, 0xad, 0x5a, 0x09,
95 	0x00, 0xe2, 0xb8, 0x58,
96 	0xff, 0xea, 0x56, 0x02,
97 	0x04, 0x7c, 0x88, 0x32,
98 	0x20, 0x16, 0x84, 0x78,
99 	0x04, 0x40, 0x89, 0x32,
100 	0x80, 0x3d, 0x7b, 0x16,
101 	0xff, 0x2d, 0xc7, 0x60,
102 	0xff, 0x29, 0xc7, 0x60,
103 	0x40, 0x57, 0xd7, 0x78,
104 	0xff, 0x55, 0xc7, 0x68,
105 	0xff, 0x53, 0xc1, 0x19,
106 	0x00, 0x54, 0xd5, 0x19,
107 	0x00, 0xe2, 0xd6, 0x50,
108 	0x01, 0x52, 0xc1, 0x31,
109 	0x00, 0x56, 0xd5, 0x19,
110 	0x00, 0xe2, 0xd6, 0x48,
111 	0x80, 0x18, 0x84, 0x78,
112 	0x02, 0x50, 0x1d, 0x30,
113 	0x10, 0xea, 0x18, 0x00,
114 	0x60, 0x18, 0x30, 0x00,
115 	0x7f, 0x18, 0x30, 0x0c,
116 	0x02, 0xea, 0x02, 0x00,
117 	0xff, 0xea, 0xac, 0x0a,
118 	0x80, 0x18, 0x30, 0x04,
119 	0x40, 0xad, 0x84, 0x78,
120 	0xe7, 0xad, 0x5a, 0x09,
121 	0xff, 0xea, 0xc0, 0x09,
122 	0x01, 0x54, 0xa9, 0x1a,
123 	0x00, 0x55, 0xab, 0x22,
124 	0x01, 0x94, 0x6d, 0x33,
125 	0xff, 0xea, 0x20, 0x0b,
126 	0x04, 0xac, 0x49, 0x32,
127 	0xff, 0xea, 0x5a, 0x03,
128 	0xff, 0xea, 0x5e, 0x03,
129 	0x01, 0x10, 0xd4, 0x31,
130 	0x02, 0xa8, 0x40, 0x31,
131 	0x01, 0x92, 0xc1, 0x31,
132 	0x3d, 0x93, 0xc5, 0x29,
133 	0xfe, 0xe2, 0xc4, 0x09,
134 	0x01, 0xea, 0xc6, 0x01,
135 	0x02, 0xe2, 0xc8, 0x31,
136 	0x02, 0xec, 0x50, 0x31,
137 	0x02, 0xa0, 0xda, 0x31,
138 	0xff, 0xa9, 0x10, 0x71,
139 	0x10, 0xe0, 0x0e, 0x79,
140 	0x10, 0x92, 0x0f, 0x79,
141 	0x01, 0x4d, 0x9b, 0x02,
142 	0x02, 0xa0, 0xc0, 0x32,
143 	0x01, 0x93, 0xc5, 0x36,
144 	0x02, 0xa0, 0x58, 0x37,
145 	0xff, 0x21, 0x19, 0x71,
146 	0x02, 0x22, 0x51, 0x31,
147 	0x02, 0xa0, 0x5c, 0x33,
148 	0x02, 0xa0, 0x44, 0x36,
149 	0x02, 0xa0, 0x40, 0x32,
150 	0x02, 0xa0, 0x44, 0x36,
151 	0x05, 0x4d, 0x21, 0x69,
152 	0x40, 0x16, 0x52, 0x69,
153 	0xff, 0x2d, 0x57, 0x61,
154 	0xff, 0x29, 0x85, 0x70,
155 	0x02, 0x28, 0x55, 0x32,
156 	0x01, 0xea, 0x5a, 0x01,
157 	0x04, 0x44, 0xf9, 0x30,
158 	0x01, 0x44, 0xc1, 0x31,
159 	0x02, 0x28, 0x51, 0x31,
160 	0x02, 0xa8, 0x60, 0x31,
161 	0x01, 0xa4, 0x61, 0x31,
162 	0x01, 0x3d, 0x61, 0x31,
163 	0x01, 0x14, 0xd4, 0x31,
164 	0x01, 0x56, 0xad, 0x1a,
165 	0xff, 0x54, 0xa9, 0x1a,
166 	0xff, 0x55, 0xab, 0x22,
167 	0xff, 0x8d, 0x4b, 0x71,
168 	0x80, 0xac, 0x4a, 0x71,
169 	0x20, 0x16, 0x4a, 0x69,
170 	0x00, 0xac, 0xc4, 0x19,
171 	0x07, 0xe2, 0x4a, 0xf9,
172 	0x02, 0x8c, 0x51, 0x31,
173 	0x00, 0xe2, 0x2e, 0x41,
174 	0x01, 0xac, 0x08, 0x31,
175 	0x09, 0xea, 0x5a, 0x01,
176 	0x02, 0x8c, 0x51, 0x32,
177 	0xff, 0xea, 0x1a, 0x07,
178 	0x04, 0x24, 0xf9, 0x30,
179 	0x1d, 0xea, 0x5c, 0x41,
180 	0x02, 0x2c, 0x51, 0x31,
181 	0x04, 0xa8, 0xf9, 0x30,
182 	0x19, 0xea, 0x5c, 0x41,
183 	0x06, 0xea, 0x08, 0x81,
184 	0x01, 0xe2, 0x5a, 0x35,
185 	0x02, 0xf2, 0xf0, 0x31,
186 	0xff, 0xea, 0xd4, 0x0d,
187 	0x02, 0xf2, 0xf0, 0x31,
188 	0x02, 0xf8, 0xe4, 0x35,
189 	0x80, 0xea, 0xb2, 0x01,
190 	0x01, 0xe2, 0x00, 0x30,
191 	0xff, 0xea, 0xb2, 0x0d,
192 	0x01, 0xe2, 0x04, 0x30,
193 	0x01, 0xea, 0x04, 0x34,
194 	0x02, 0x20, 0xbd, 0x30,
195 	0x02, 0x20, 0xb9, 0x30,
196 	0x02, 0x20, 0x51, 0x31,
197 	0x4c, 0x93, 0xd7, 0x28,
198 	0x10, 0x92, 0x81, 0x79,
199 	0x01, 0x6b, 0xc0, 0x30,
200 	0x02, 0x64, 0xc8, 0x00,
201 	0x40, 0x3a, 0x74, 0x04,
202 	0x00, 0xe2, 0x76, 0x58,
203 	0x33, 0xea, 0x68, 0x59,
204 	0x33, 0xea, 0x00, 0x00,
205 	0x30, 0x3f, 0xc0, 0x09,
206 	0x30, 0xe0, 0x82, 0x61,
207 	0x20, 0x3f, 0x98, 0x69,
208 	0x10, 0x3f, 0x82, 0x79,
209 	0x02, 0xea, 0x7e, 0x00,
210 	0x00, 0xea, 0x68, 0x59,
211 	0x01, 0xea, 0x00, 0x30,
212 	0x02, 0x4e, 0x51, 0x35,
213 	0x01, 0xea, 0x7e, 0x00,
214 	0x11, 0xea, 0x68, 0x59,
215 	0x11, 0xea, 0x00, 0x00,
216 	0x02, 0x4e, 0x51, 0x35,
217 	0xc0, 0x4a, 0x94, 0x00,
218 	0x04, 0x41, 0xa6, 0x79,
219 	0x08, 0xea, 0x98, 0x00,
220 	0x08, 0x57, 0xae, 0x00,
221 	0x08, 0x3c, 0x78, 0x00,
222 	0xf0, 0x49, 0x74, 0x0a,
223 	0x0f, 0x67, 0xc0, 0x09,
224 	0x00, 0x3a, 0x75, 0x02,
225 	0x20, 0xea, 0x96, 0x00,
226 	0x00, 0xe2, 0x28, 0x42,
227 	0xc0, 0x4a, 0x94, 0x00,
228 	0x40, 0x3a, 0xd2, 0x69,
229 	0x02, 0x55, 0x06, 0x68,
230 	0x02, 0x56, 0xd2, 0x69,
231 	0xff, 0x5b, 0xd2, 0x61,
232 	0x02, 0x20, 0x51, 0x31,
233 	0x80, 0xea, 0xb2, 0x01,
234 	0x44, 0xea, 0x00, 0x00,
235 	0x01, 0x33, 0xc0, 0x31,
236 	0x33, 0xea, 0x00, 0x00,
237 	0xff, 0xea, 0xb2, 0x09,
238 	0xff, 0xe0, 0xc0, 0x19,
239 	0xff, 0xe0, 0xd4, 0x79,
240 	0x02, 0xac, 0x51, 0x31,
241 	0x00, 0xe2, 0xca, 0x41,
242 	0x02, 0x5e, 0x50, 0x31,
243 	0x02, 0xa8, 0xb8, 0x30,
244 	0x02, 0x5c, 0x50, 0x31,
245 	0xff, 0xad, 0xe5, 0x71,
246 	0x02, 0xac, 0x41, 0x31,
247 	0x02, 0x22, 0x51, 0x31,
248 	0x02, 0xa0, 0x5c, 0x33,
249 	0x02, 0xa0, 0x44, 0x32,
250 	0x00, 0xe2, 0xf8, 0x41,
251 	0x01, 0x4d, 0xf1, 0x79,
252 	0x01, 0x62, 0xc1, 0x31,
253 	0x00, 0x93, 0xf1, 0x61,
254 	0xfe, 0x4d, 0x9b, 0x0a,
255 	0x02, 0x60, 0x41, 0x31,
256 	0x00, 0xe2, 0xdc, 0x41,
257 	0x3d, 0x93, 0xc9, 0x29,
258 	0x01, 0xe4, 0xc8, 0x01,
259 	0x01, 0xea, 0xca, 0x01,
260 	0xff, 0xea, 0xda, 0x01,
261 	0x02, 0x20, 0x51, 0x31,
262 	0x02, 0xae, 0x41, 0x32,
263 	0xff, 0x21, 0x01, 0x62,
264 	0xff, 0xea, 0x46, 0x02,
265 	0x02, 0x5c, 0x50, 0x31,
266 	0x40, 0xea, 0x96, 0x00,
267 	0x02, 0x56, 0x20, 0x6e,
268 	0x01, 0x55, 0x20, 0x6e,
269 	0x10, 0x92, 0x0d, 0x7a,
270 	0x10, 0x40, 0x16, 0x6a,
271 	0x01, 0x56, 0x16, 0x7a,
272 	0xff, 0x97, 0x07, 0x78,
273 	0x13, 0xea, 0x6e, 0x59,
274 	0x13, 0xea, 0x04, 0x00,
275 	0x00, 0xe2, 0x06, 0x40,
276 	0xbf, 0x3a, 0x74, 0x08,
277 	0x04, 0x41, 0x1c, 0x7a,
278 	0x08, 0xea, 0x98, 0x00,
279 	0x08, 0x57, 0xae, 0x00,
280 	0x01, 0x93, 0x75, 0x32,
281 	0x01, 0x94, 0x77, 0x32,
282 	0x40, 0xea, 0x72, 0x02,
283 	0x08, 0x3c, 0x78, 0x00,
284 	0x80, 0xea, 0x6e, 0x02,
285 	0x00, 0xe2, 0xf6, 0x5b,
286 	0x01, 0x3c, 0xc1, 0x31,
287 	0x9f, 0xe0, 0x98, 0x7c,
288 	0x80, 0xe0, 0x3c, 0x72,
289 	0xa0, 0xe0, 0x78, 0x72,
290 	0xc0, 0xe0, 0x6e, 0x72,
291 	0xe0, 0xe0, 0xa8, 0x72,
292 	0x01, 0xea, 0x6e, 0x59,
293 	0x01, 0xea, 0x04, 0x00,
294 	0x00, 0xe2, 0x28, 0x42,
295 	0x80, 0x39, 0x43, 0x7a,
296 	0x03, 0xea, 0x6e, 0x59,
297 	0x03, 0xea, 0x04, 0x00,
298 	0xee, 0x00, 0x4a, 0x6a,
299 	0x05, 0xea, 0xb4, 0x00,
300 	0x33, 0xea, 0x68, 0x59,
301 	0x33, 0xea, 0x00, 0x00,
302 	0x02, 0xa8, 0x9c, 0x32,
303 	0x00, 0xe2, 0x88, 0x59,
304 	0xef, 0x96, 0xd5, 0x19,
305 	0x00, 0xe2, 0x5a, 0x52,
306 	0x09, 0x80, 0xe1, 0x30,
307 	0x02, 0xea, 0x36, 0x00,
308 	0xa8, 0xea, 0x32, 0x00,
309 	0x00, 0xe2, 0x60, 0x42,
310 	0x01, 0x96, 0xd1, 0x30,
311 	0x10, 0x80, 0x89, 0x31,
312 	0x20, 0xea, 0x32, 0x00,
313 	0xbf, 0x39, 0x73, 0x0a,
314 	0x10, 0x4c, 0x6a, 0x6a,
315 	0x20, 0x19, 0x62, 0x6a,
316 	0x20, 0x19, 0x66, 0x6a,
317 	0x02, 0x4d, 0x28, 0x6a,
318 	0x40, 0x39, 0x73, 0x02,
319 	0x00, 0xe2, 0x28, 0x42,
320 	0x80, 0x39, 0xe9, 0x6a,
321 	0x01, 0x44, 0x10, 0x33,
322 	0x08, 0x92, 0x25, 0x03,
323 	0x00, 0xe2, 0x28, 0x42,
324 	0x10, 0xea, 0x80, 0x00,
325 	0x01, 0x37, 0xc5, 0x31,
326 	0x80, 0xe2, 0x94, 0x62,
327 	0x10, 0x92, 0xb9, 0x6a,
328 	0xc0, 0x94, 0xc5, 0x01,
329 	0x40, 0x92, 0x85, 0x6a,
330 	0xbf, 0xe2, 0xc4, 0x09,
331 	0x20, 0x92, 0x99, 0x7a,
332 	0x01, 0xe2, 0x88, 0x30,
333 	0x00, 0xe2, 0xf6, 0x5b,
334 	0xa0, 0x3c, 0xa1, 0x62,
335 	0x23, 0x92, 0x89, 0x08,
336 	0x00, 0xe2, 0xf6, 0x5b,
337 	0xa0, 0x3c, 0xa1, 0x62,
338 	0x00, 0xa8, 0x98, 0x42,
339 	0xff, 0xe2, 0x98, 0x62,
340 	0x00, 0xe2, 0xb8, 0x42,
341 	0x40, 0xea, 0x98, 0x00,
342 	0x01, 0xe2, 0x88, 0x30,
343 	0x00, 0xe2, 0xf6, 0x5b,
344 	0xa0, 0x3c, 0x77, 0x72,
345 	0x40, 0xea, 0x98, 0x00,
346 	0x01, 0x37, 0x95, 0x32,
347 	0x08, 0xea, 0x6e, 0x02,
348 	0x00, 0xe2, 0x28, 0x42,
349 	0xe0, 0xea, 0x12, 0x5c,
350 	0x80, 0xe0, 0xf4, 0x6a,
351 	0x04, 0xe0, 0xa6, 0x73,
352 	0x02, 0xe0, 0xd8, 0x73,
353 	0x00, 0xea, 0x52, 0x73,
354 	0x03, 0xe0, 0xe8, 0x73,
355 	0x23, 0xe0, 0xca, 0x72,
356 	0x08, 0xe0, 0xf0, 0x72,
357 	0x00, 0xe2, 0xf6, 0x5b,
358 	0x07, 0xea, 0x6e, 0x59,
359 	0x07, 0xea, 0x04, 0x00,
360 	0x08, 0x48, 0x29, 0x72,
361 	0x04, 0x48, 0xc7, 0x62,
362 	0x01, 0x49, 0x89, 0x30,
363 	0x00, 0xe2, 0xb8, 0x42,
364 	0x01, 0x44, 0xd4, 0x31,
365 	0x00, 0xe2, 0xb8, 0x42,
366 	0x01, 0x00, 0x6c, 0x32,
367 	0x33, 0xea, 0x68, 0x59,
368 	0x33, 0xea, 0x00, 0x00,
369 	0x4c, 0x3a, 0xc1, 0x28,
370 	0x01, 0x64, 0xc0, 0x31,
371 	0x00, 0x36, 0x69, 0x59,
372 	0x01, 0x36, 0x01, 0x30,
373 	0x01, 0xe0, 0xee, 0x7a,
374 	0xa0, 0xea, 0x08, 0x5c,
375 	0x01, 0xa0, 0xee, 0x62,
376 	0x01, 0x84, 0xe3, 0x7a,
377 	0x01, 0x95, 0xf1, 0x6a,
378 	0x05, 0xea, 0x6e, 0x59,
379 	0x05, 0xea, 0x04, 0x00,
380 	0x00, 0xe2, 0xf0, 0x42,
381 	0x03, 0xea, 0x6e, 0x59,
382 	0x03, 0xea, 0x04, 0x00,
383 	0x00, 0xe2, 0xf0, 0x42,
384 	0x07, 0xea, 0x1a, 0x5c,
385 	0x01, 0x44, 0xd4, 0x31,
386 	0x00, 0xe2, 0x28, 0x42,
387 	0x3f, 0xe0, 0x76, 0x0a,
388 	0xc0, 0x3a, 0xc1, 0x09,
389 	0x00, 0x3b, 0x51, 0x01,
390 	0xff, 0xea, 0x52, 0x09,
391 	0x30, 0x3a, 0xc5, 0x09,
392 	0x3d, 0xe2, 0xc4, 0x29,
393 	0xb8, 0xe2, 0xc4, 0x19,
394 	0x01, 0xea, 0xc6, 0x01,
395 	0x02, 0xe2, 0xc8, 0x31,
396 	0x02, 0xec, 0x40, 0x31,
397 	0xff, 0xa1, 0x10, 0x73,
398 	0x02, 0xe8, 0xda, 0x31,
399 	0x02, 0xa0, 0x50, 0x31,
400 	0x00, 0xe2, 0x32, 0x43,
401 	0x80, 0x39, 0x73, 0x02,
402 	0x01, 0x44, 0xd4, 0x31,
403 	0x00, 0xe2, 0xf6, 0x5b,
404 	0x01, 0x39, 0x73, 0x02,
405 	0xe0, 0x3c, 0x4d, 0x63,
406 	0x02, 0x39, 0x73, 0x02,
407 	0x20, 0x46, 0x46, 0x63,
408 	0xff, 0xea, 0x52, 0x09,
409 	0xa8, 0xea, 0x08, 0x5c,
410 	0x04, 0x92, 0x2d, 0x7b,
411 	0x01, 0x3a, 0xc1, 0x31,
412 	0x00, 0x93, 0x2d, 0x63,
413 	0x01, 0x3b, 0xc1, 0x31,
414 	0x00, 0x94, 0x37, 0x73,
415 	0x01, 0xa9, 0x52, 0x11,
416 	0xff, 0xa9, 0x22, 0x6b,
417 	0x00, 0xe2, 0x46, 0x43,
418 	0x10, 0x39, 0x73, 0x02,
419 	0x04, 0x92, 0x47, 0x7b,
420 	0xfb, 0x92, 0x25, 0x0b,
421 	0xff, 0xea, 0x72, 0x0a,
422 	0x01, 0xa4, 0x41, 0x6b,
423 	0x02, 0xa8, 0x9c, 0x32,
424 	0x00, 0xe2, 0x88, 0x59,
425 	0x10, 0x92, 0xf1, 0x7a,
426 	0xff, 0xea, 0x1a, 0x5c,
427 	0x00, 0xe2, 0xf0, 0x42,
428 	0x04, 0xea, 0x6e, 0x59,
429 	0x04, 0xea, 0x04, 0x00,
430 	0x00, 0xe2, 0xf0, 0x42,
431 	0x04, 0xea, 0x6e, 0x59,
432 	0x04, 0xea, 0x04, 0x00,
433 	0x00, 0xe2, 0x28, 0x42,
434 	0x08, 0x92, 0xe9, 0x7a,
435 	0xc0, 0x39, 0x5d, 0x7b,
436 	0x80, 0x39, 0xe9, 0x6a,
437 	0xff, 0x88, 0x5d, 0x6b,
438 	0x40, 0x39, 0xe9, 0x6a,
439 	0x10, 0x92, 0x63, 0x7b,
440 	0x0a, 0xea, 0x6e, 0x59,
441 	0x0a, 0xea, 0x04, 0x00,
442 	0x00, 0xe2, 0x82, 0x5b,
443 	0x00, 0xe2, 0xc2, 0x43,
444 	0x50, 0x4b, 0x6a, 0x6b,
445 	0xbf, 0x3a, 0x74, 0x08,
446 	0x01, 0xe0, 0xf4, 0x31,
447 	0xff, 0xea, 0xc0, 0x09,
448 	0x01, 0x32, 0x65, 0x1a,
449 	0x00, 0x33, 0x67, 0x22,
450 	0x04, 0x4d, 0x9b, 0x02,
451 	0x01, 0xfa, 0xc0, 0x35,
452 	0x02, 0xa8, 0x90, 0x32,
453 	0x02, 0xea, 0xb4, 0x00,
454 	0x33, 0xea, 0x68, 0x59,
455 	0x33, 0xea, 0x00, 0x00,
456 	0x02, 0x48, 0x51, 0x31,
457 	0xff, 0x90, 0x85, 0x68,
458 	0xff, 0x88, 0x8f, 0x6b,
459 	0x01, 0xa4, 0x8b, 0x6b,
460 	0x02, 0xa4, 0x93, 0x6b,
461 	0x01, 0x84, 0x93, 0x7b,
462 	0x02, 0x28, 0x19, 0x33,
463 	0x02, 0xa8, 0x50, 0x36,
464 	0xff, 0x88, 0x93, 0x73,
465 	0x00, 0xe2, 0x66, 0x5b,
466 	0x02, 0xa8, 0x20, 0x33,
467 	0x04, 0xa4, 0x49, 0x03,
468 	0xff, 0xea, 0x1a, 0x03,
469 	0xff, 0x2d, 0x9f, 0x63,
470 	0x02, 0xa8, 0x58, 0x32,
471 	0x02, 0xa8, 0x5c, 0x36,
472 	0x02, 0xa8, 0x40, 0x31,
473 	0x02, 0x2e, 0x51, 0x31,
474 	0x02, 0xa0, 0x18, 0x33,
475 	0x02, 0xa0, 0x5c, 0x36,
476 	0xc0, 0x39, 0xe9, 0x6a,
477 	0x04, 0x92, 0x25, 0x03,
478 	0x20, 0x92, 0xc3, 0x6b,
479 	0x02, 0xa8, 0x40, 0x31,
480 	0xc0, 0x3a, 0xc1, 0x09,
481 	0x00, 0x3b, 0x51, 0x01,
482 	0xff, 0xea, 0x52, 0x09,
483 	0x30, 0x3a, 0xc5, 0x09,
484 	0x3d, 0xe2, 0xc4, 0x29,
485 	0xb8, 0xe2, 0xc4, 0x19,
486 	0x01, 0xea, 0xc6, 0x01,
487 	0x02, 0xe2, 0xc8, 0x31,
488 	0x02, 0xa0, 0xda, 0x31,
489 	0x02, 0xa0, 0x50, 0x31,
490 	0xf7, 0x57, 0xae, 0x08,
491 	0x08, 0xea, 0x98, 0x00,
492 	0x01, 0x44, 0xd4, 0x31,
493 	0xee, 0x00, 0xcc, 0x6b,
494 	0x02, 0xea, 0xb4, 0x00,
495 	0xc0, 0xea, 0x72, 0x02,
496 	0x09, 0x4c, 0xce, 0x7b,
497 	0x01, 0xea, 0x78, 0x02,
498 	0x08, 0x4c, 0x06, 0x68,
499 	0x0b, 0xea, 0x6e, 0x59,
500 	0x0b, 0xea, 0x04, 0x00,
501 	0x01, 0x44, 0xd4, 0x31,
502 	0x20, 0x39, 0x29, 0x7a,
503 	0x00, 0xe2, 0xe0, 0x5b,
504 	0x00, 0xe2, 0x28, 0x42,
505 	0x01, 0x84, 0xe5, 0x7b,
506 	0x01, 0xa4, 0x49, 0x07,
507 	0x08, 0x60, 0x30, 0x33,
508 	0x08, 0x80, 0x41, 0x37,
509 	0xdf, 0x39, 0x73, 0x0a,
510 	0xee, 0x00, 0xf2, 0x6b,
511 	0x05, 0xea, 0xb4, 0x00,
512 	0x33, 0xea, 0x68, 0x59,
513 	0x33, 0xea, 0x00, 0x00,
514 	0x00, 0xe2, 0x88, 0x59,
515 	0x00, 0xe2, 0xf0, 0x42,
516 	0xff, 0x42, 0x02, 0x6c,
517 	0x01, 0x41, 0xf6, 0x6b,
518 	0x02, 0x41, 0xf6, 0x7b,
519 	0xff, 0x42, 0x02, 0x6c,
520 	0x01, 0x41, 0xf6, 0x6b,
521 	0x02, 0x41, 0xf6, 0x7b,
522 	0xff, 0x42, 0x02, 0x7c,
523 	0x04, 0x4c, 0xf6, 0x6b,
524 	0xe0, 0x41, 0x78, 0x0e,
525 	0x01, 0x44, 0xd4, 0x31,
526 	0xff, 0x42, 0x0a, 0x7c,
527 	0x04, 0x4c, 0x0a, 0x6c,
528 	0xe0, 0x41, 0x78, 0x0a,
529 	0xe0, 0x3c, 0x29, 0x62,
530 	0xff, 0xea, 0xca, 0x09,
531 	0x01, 0xe2, 0xc8, 0x31,
532 	0x01, 0x46, 0xda, 0x35,
533 	0x01, 0x44, 0xd4, 0x35,
534 	0x10, 0xea, 0x80, 0x00,
535 	0x01, 0xe2, 0x6e, 0x36,
536 	0x04, 0xa6, 0x22, 0x7c,
537 	0xff, 0xea, 0x5a, 0x09,
538 	0xff, 0xea, 0x4c, 0x0d,
539 	0x01, 0xa6, 0x4e, 0x6c,
540 	0x10, 0xad, 0x84, 0x78,
541 	0x80, 0xad, 0x46, 0x6c,
542 	0x08, 0xad, 0x84, 0x68,
543 	0x20, 0x19, 0x3a, 0x7c,
544 	0x80, 0xea, 0xb2, 0x01,
545 	0x11, 0x00, 0x00, 0x10,
546 	0x02, 0xa6, 0x36, 0x7c,
547 	0xff, 0xea, 0xb2, 0x0d,
548 	0x11, 0x00, 0x00, 0x10,
549 	0xff, 0xea, 0xb2, 0x09,
550 	0x04, 0x84, 0xf9, 0x30,
551 	0x00, 0xea, 0x08, 0x81,
552 	0xff, 0xea, 0xd4, 0x09,
553 	0x02, 0x84, 0xf9, 0x88,
554 	0x0d, 0xea, 0x5a, 0x01,
555 	0x04, 0xa6, 0x4c, 0x05,
556 	0x04, 0xa6, 0x84, 0x78,
557 	0xff, 0xea, 0x5a, 0x09,
558 	0x03, 0x84, 0x59, 0x89,
559 	0x03, 0xea, 0x4c, 0x01,
560 	0x80, 0x1a, 0x84, 0x78,
561 	0x08, 0x19, 0x84, 0x78,
562 	0x08, 0xb0, 0xe0, 0x30,
563 	0x04, 0xb0, 0xe0, 0x30,
564 	0x03, 0xb0, 0xf0, 0x30,
565 	0x01, 0xb0, 0x06, 0x33,
566 	0x7f, 0x83, 0xe9, 0x08,
567 	0x04, 0xac, 0x58, 0x19,
568 	0xff, 0xea, 0xc0, 0x09,
569 	0x04, 0x84, 0x09, 0x9b,
570 	0x00, 0x85, 0x0b, 0x23,
571 	0x00, 0x86, 0x0d, 0x23,
572 	0x00, 0x87, 0x0f, 0x23,
573 	0x01, 0x84, 0xc5, 0x31,
574 	0x80, 0x83, 0x71, 0x7c,
575 	0x02, 0xe2, 0xc4, 0x01,
576 	0xff, 0xea, 0x4c, 0x09,
577 	0x01, 0xe2, 0x36, 0x30,
578 	0xc8, 0x19, 0x32, 0x00,
579 	0x88, 0x19, 0x32, 0x00,
580 	0x01, 0xac, 0xd4, 0x99,
581 	0x00, 0xe2, 0x84, 0x50,
582 	0xfe, 0xa6, 0x4c, 0x0d,
583 	0x0b, 0x98, 0xe1, 0x30,
584 	0xfd, 0xa4, 0x49, 0x09,
585 	0x80, 0xa3, 0x85, 0x7c,
586 	0x02, 0xa4, 0x48, 0x01,
587 	0x01, 0xa4, 0x36, 0x30,
588 	0xa8, 0xea, 0x32, 0x00,
589 	0xfd, 0xa4, 0x49, 0x0b,
590 	0x05, 0xa3, 0x07, 0x33,
591 	0x80, 0x83, 0x91, 0x6c,
592 	0x02, 0xea, 0x4c, 0x05,
593 	0xff, 0xea, 0x4c, 0x0d,
594 	0x00, 0xe2, 0x60, 0x59,
595 	0x02, 0xa6, 0x24, 0x6c,
596 	0x80, 0xf9, 0xf2, 0x05,
597 	0xc0, 0x39, 0x9f, 0x7c,
598 	0x03, 0xea, 0x6e, 0x59,
599 	0x03, 0xea, 0x04, 0x00,
600 	0x20, 0x39, 0xc3, 0x7c,
601 	0x01, 0x84, 0xa9, 0x6c,
602 	0x06, 0xea, 0x6e, 0x59,
603 	0x06, 0xea, 0x04, 0x00,
604 	0x00, 0xe2, 0xc6, 0x44,
605 	0x01, 0x00, 0x6c, 0x32,
606 	0xee, 0x00, 0xb2, 0x6c,
607 	0x05, 0xea, 0xb4, 0x00,
608 	0x33, 0xea, 0x68, 0x59,
609 	0x33, 0xea, 0x00, 0x00,
610 	0x80, 0x3d, 0x7a, 0x00,
611 	0xfc, 0x42, 0xb4, 0x7c,
612 	0x7f, 0x3d, 0x7a, 0x08,
613 	0x00, 0x36, 0x69, 0x59,
614 	0x01, 0x36, 0x01, 0x30,
615 	0x09, 0xea, 0x6e, 0x59,
616 	0x09, 0xea, 0x04, 0x00,
617 	0x00, 0xe2, 0x28, 0x42,
618 	0x01, 0xa4, 0xa9, 0x6c,
619 	0x00, 0xe2, 0x7c, 0x5c,
620 	0x20, 0x39, 0x73, 0x02,
621 	0x01, 0x00, 0x6c, 0x32,
622 	0x02, 0xa6, 0xce, 0x7c,
623 	0x00, 0xe2, 0x92, 0x5c,
624 	0x00, 0xe2, 0x76, 0x58,
625 	0x00, 0xe2, 0x86, 0x58,
626 	0x00, 0xe2, 0x5a, 0x58,
627 	0x00, 0x36, 0x69, 0x59,
628 	0x01, 0x36, 0x01, 0x30,
629 	0x20, 0x19, 0xce, 0x6c,
630 	0x00, 0xe2, 0xfe, 0x5c,
631 	0x04, 0x19, 0xe8, 0x6c,
632 	0x02, 0x19, 0x32, 0x00,
633 	0x01, 0x84, 0xe9, 0x7c,
634 	0x01, 0x1b, 0xe2, 0x7c,
635 	0x01, 0x1a, 0xe8, 0x6c,
636 	0x00, 0xe2, 0x98, 0x44,
637 	0x80, 0x4b, 0xee, 0x6c,
638 	0x01, 0x4c, 0xea, 0x7c,
639 	0x03, 0x42, 0x98, 0x6c,
640 	0x00, 0xe2, 0x1e, 0x5c,
641 	0x80, 0xf9, 0xf2, 0x01,
642 	0x04, 0x39, 0x29, 0x7a,
643 	0x00, 0xe2, 0x28, 0x42,
644 	0x08, 0x5d, 0x06, 0x6d,
645 	0x00, 0xe2, 0x76, 0x58,
646 	0x00, 0x36, 0x69, 0x59,
647 	0x01, 0x36, 0x01, 0x30,
648 	0x02, 0x1b, 0xf6, 0x7c,
649 	0x08, 0x5d, 0x04, 0x7d,
650 	0x03, 0x68, 0x00, 0x37,
651 	0x01, 0x84, 0x09, 0x07,
652 	0x80, 0x1b, 0x10, 0x7d,
653 	0x80, 0x84, 0x11, 0x6d,
654 	0xff, 0x85, 0x0b, 0x1b,
655 	0xff, 0x86, 0x0d, 0x23,
656 	0xff, 0x87, 0x0f, 0x23,
657 	0xf8, 0x1b, 0x08, 0x0b,
658 	0xff, 0xea, 0x06, 0x0b,
659 	0x03, 0x68, 0x00, 0x37,
660 	0x00, 0xe2, 0xd6, 0x58,
661 	0x10, 0xea, 0x18, 0x00,
662 	0xf9, 0xd9, 0xb2, 0x0d,
663 	0x01, 0xd9, 0xb2, 0x05,
664 	0x01, 0x52, 0x48, 0x31,
665 	0x20, 0xa4, 0x3a, 0x7d,
666 	0x20, 0x5b, 0x3a, 0x7d,
667 	0x80, 0xf9, 0x48, 0x7d,
668 	0x02, 0xea, 0xb4, 0x00,
669 	0x11, 0x00, 0x00, 0x10,
670 	0x04, 0x19, 0x54, 0x7d,
671 	0xdf, 0x19, 0x32, 0x08,
672 	0x60, 0x5b, 0x54, 0x6d,
673 	0x01, 0x4c, 0x2e, 0x7d,
674 	0x20, 0x19, 0x32, 0x00,
675 	0x01, 0xd9, 0xb2, 0x05,
676 	0x02, 0xea, 0xb4, 0x00,
677 	0x01, 0xd9, 0xb2, 0x05,
678 	0x10, 0x5b, 0x4c, 0x6d,
679 	0x08, 0x5b, 0x56, 0x6d,
680 	0x20, 0x5b, 0x46, 0x6d,
681 	0x02, 0x5b, 0x76, 0x6d,
682 	0x0e, 0xea, 0x6e, 0x59,
683 	0x0e, 0xea, 0x04, 0x00,
684 	0x80, 0xf9, 0x36, 0x6d,
685 	0xdf, 0x5c, 0xb8, 0x08,
686 	0x01, 0xd9, 0xb2, 0x05,
687 	0x01, 0xa4, 0x37, 0x6e,
688 	0x00, 0xe2, 0x7c, 0x5c,
689 	0x00, 0xe2, 0x80, 0x5d,
690 	0x01, 0x90, 0x21, 0x1b,
691 	0x01, 0xd9, 0xb2, 0x05,
692 	0x00, 0xe2, 0x66, 0x5b,
693 	0xf3, 0x96, 0xd5, 0x19,
694 	0x00, 0xe2, 0x64, 0x55,
695 	0x80, 0x96, 0x65, 0x6d,
696 	0x0f, 0xea, 0x6e, 0x59,
697 	0x0f, 0xea, 0x04, 0x00,
698 	0x00, 0xe2, 0x6c, 0x45,
699 	0x04, 0x8c, 0xe1, 0x30,
700 	0x01, 0xea, 0xf2, 0x00,
701 	0x02, 0xea, 0x36, 0x00,
702 	0xa8, 0xea, 0x32, 0x00,
703 	0xff, 0x97, 0x73, 0x7d,
704 	0x14, 0xea, 0x6e, 0x59,
705 	0x14, 0xea, 0x04, 0x00,
706 	0x00, 0xe2, 0xe2, 0x5d,
707 	0x01, 0xd9, 0xb2, 0x05,
708 	0x09, 0x80, 0xe1, 0x30,
709 	0x02, 0xea, 0x36, 0x00,
710 	0xa8, 0xea, 0x32, 0x00,
711 	0x00, 0xe2, 0xda, 0x5d,
712 	0x01, 0xd9, 0xb2, 0x05,
713 	0x02, 0xa6, 0x90, 0x7d,
714 	0x00, 0xe2, 0x60, 0x59,
715 	0x20, 0x5b, 0x9e, 0x6d,
716 	0xfc, 0x42, 0x8a, 0x7d,
717 	0x10, 0x40, 0x8c, 0x6d,
718 	0x20, 0x4d, 0x8e, 0x7d,
719 	0x08, 0x5d, 0x9e, 0x6d,
720 	0x02, 0xa6, 0x24, 0x6c,
721 	0x00, 0xe2, 0x60, 0x59,
722 	0x20, 0x5b, 0x9e, 0x6d,
723 	0x01, 0x1b, 0xbe, 0x6d,
724 	0xfc, 0x42, 0x9a, 0x7d,
725 	0x10, 0x40, 0x9c, 0x6d,
726 	0x20, 0x4d, 0x84, 0x78,
727 	0x08, 0x5d, 0x84, 0x78,
728 	0x02, 0x19, 0x32, 0x00,
729 	0x01, 0x5b, 0x40, 0x31,
730 	0x00, 0xe2, 0xfe, 0x5c,
731 	0x00, 0xe2, 0xe0, 0x5b,
732 	0x20, 0xea, 0xb6, 0x00,
733 	0x00, 0xe2, 0x1e, 0x5c,
734 	0x20, 0x5c, 0xb8, 0x00,
735 	0x04, 0x19, 0xb4, 0x6d,
736 	0x01, 0x1a, 0xb4, 0x6d,
737 	0x00, 0xe2, 0x60, 0x59,
738 	0x01, 0x1a, 0x84, 0x78,
739 	0x80, 0xf9, 0xf2, 0x01,
740 	0x20, 0xa0, 0x18, 0x7e,
741 	0xff, 0x90, 0x21, 0x1b,
742 	0x08, 0x92, 0x77, 0x6b,
743 	0x02, 0xea, 0xb4, 0x04,
744 	0x01, 0xa4, 0x49, 0x03,
745 	0x40, 0x5b, 0xce, 0x6d,
746 	0x00, 0xe2, 0x60, 0x59,
747 	0x40, 0x5b, 0xce, 0x6d,
748 	0x04, 0x5d, 0x38, 0x7e,
749 	0x01, 0x1a, 0x38, 0x7e,
750 	0x20, 0x4d, 0x84, 0x78,
751 	0x40, 0x5b, 0x18, 0x7e,
752 	0x04, 0x5d, 0x38, 0x7e,
753 	0x01, 0x1a, 0x38, 0x7e,
754 	0x80, 0xf9, 0xf2, 0x01,
755 	0xff, 0x90, 0x21, 0x1b,
756 	0x08, 0x92, 0x77, 0x6b,
757 	0x02, 0xea, 0xb4, 0x04,
758 	0x00, 0xe2, 0x60, 0x59,
759 	0x01, 0x1b, 0x84, 0x78,
760 	0x80, 0xf9, 0xf2, 0x01,
761 	0x02, 0xea, 0xb4, 0x04,
762 	0x00, 0xe2, 0x60, 0x59,
763 	0x01, 0x1b, 0xf6, 0x6d,
764 	0x40, 0x5b, 0x04, 0x7e,
765 	0x01, 0x1b, 0xf6, 0x6d,
766 	0x02, 0x19, 0x32, 0x00,
767 	0x01, 0x1a, 0x84, 0x78,
768 	0x80, 0xf9, 0xf2, 0x01,
769 	0xff, 0xea, 0x10, 0x03,
770 	0x08, 0x92, 0x25, 0x03,
771 	0x00, 0xe2, 0x76, 0x43,
772 	0x01, 0x1a, 0x00, 0x7e,
773 	0x40, 0x5b, 0xfc, 0x7d,
774 	0x01, 0x1a, 0xea, 0x6d,
775 	0xfc, 0x42, 0x84, 0x78,
776 	0x01, 0x1a, 0x04, 0x6e,
777 	0x10, 0xea, 0x6e, 0x59,
778 	0x10, 0xea, 0x04, 0x00,
779 	0xfc, 0x42, 0x84, 0x78,
780 	0x10, 0x40, 0x0a, 0x6e,
781 	0x20, 0x4d, 0x84, 0x78,
782 	0x40, 0x5b, 0xea, 0x6d,
783 	0x01, 0x1a, 0x84, 0x78,
784 	0x01, 0x90, 0x21, 0x1b,
785 	0x30, 0x3f, 0xc0, 0x09,
786 	0x30, 0xe0, 0x84, 0x60,
787 	0x40, 0x4b, 0x84, 0x68,
788 	0xff, 0xea, 0x52, 0x01,
789 	0xee, 0x00, 0x20, 0x6e,
790 	0x80, 0xf9, 0xf2, 0x01,
791 	0xff, 0x90, 0x21, 0x1b,
792 	0x02, 0xea, 0xb4, 0x00,
793 	0x20, 0xea, 0x9a, 0x00,
794 	0x04, 0x41, 0x26, 0x7e,
795 	0x08, 0xea, 0x98, 0x00,
796 	0x08, 0x57, 0xae, 0x00,
797 	0xf3, 0x42, 0x30, 0x6e,
798 	0x12, 0xea, 0x6e, 0x59,
799 	0x12, 0xea, 0x04, 0x00,
800 	0x00, 0xe2, 0x28, 0x42,
801 	0x0d, 0xea, 0x6e, 0x59,
802 	0x0d, 0xea, 0x04, 0x00,
803 	0x00, 0xe2, 0x28, 0x42,
804 	0x01, 0x90, 0x21, 0x1b,
805 	0x11, 0xea, 0x6e, 0x59,
806 	0x11, 0xea, 0x04, 0x00,
807 	0x00, 0xe2, 0x66, 0x5b,
808 	0x08, 0x5a, 0xb4, 0x00,
809 	0x00, 0xe2, 0x5e, 0x5e,
810 	0xa8, 0xea, 0x32, 0x00,
811 	0x00, 0xe2, 0x60, 0x59,
812 	0x80, 0x1a, 0x4c, 0x7e,
813 	0x00, 0xe2, 0x5e, 0x5e,
814 	0x80, 0x19, 0x32, 0x00,
815 	0x40, 0x5b, 0x52, 0x6e,
816 	0x08, 0x5a, 0x52, 0x7e,
817 	0x20, 0x4d, 0x84, 0x78,
818 	0x02, 0x84, 0x09, 0x03,
819 	0x40, 0x5b, 0x18, 0x7e,
820 	0xff, 0x90, 0x21, 0x1b,
821 	0x80, 0xf9, 0xf2, 0x01,
822 	0x08, 0x92, 0x77, 0x6b,
823 	0x02, 0xea, 0xb4, 0x04,
824 	0x01, 0x40, 0xe1, 0x30,
825 	0x05, 0x41, 0xe3, 0x98,
826 	0x01, 0xe0, 0xf4, 0x31,
827 	0xff, 0xea, 0xc0, 0x09,
828 	0x00, 0x42, 0xe5, 0x20,
829 	0x00, 0x43, 0xe7, 0x20,
830 	0x01, 0xfa, 0xc0, 0x31,
831 	0x04, 0xea, 0xe8, 0x30,
832 	0xff, 0xea, 0xf0, 0x08,
833 	0x02, 0xea, 0xf2, 0x00,
834 	0xff, 0xea, 0xf4, 0x0c
835 };
836 
837 typedef int ahd_patch_func_t (struct ahd_softc *ahd);
838 static ahd_patch_func_t ahd_patch23_func;
839 
840 static int
841 ahd_patch23_func(struct ahd_softc *ahd)
842 {
843 	return ((ahd->bugs & AHD_PKT_BITBUCKET_BUG) != 0);
844 }
845 
846 static ahd_patch_func_t ahd_patch22_func;
847 
848 static int
849 ahd_patch22_func(struct ahd_softc *ahd)
850 {
851 	return ((ahd->bugs & AHD_PKT_BITBUCKET_BUG) == 0);
852 }
853 
854 static ahd_patch_func_t ahd_patch21_func;
855 
856 static int
857 ahd_patch21_func(struct ahd_softc *ahd)
858 {
859 	return ((ahd->flags & AHD_INITIATORROLE) != 0);
860 }
861 
862 static ahd_patch_func_t ahd_patch20_func;
863 
864 static int
865 ahd_patch20_func(struct ahd_softc *ahd)
866 {
867 	return ((ahd->flags & AHD_TARGETROLE) != 0);
868 }
869 
870 static ahd_patch_func_t ahd_patch19_func;
871 
872 static int
873 ahd_patch19_func(struct ahd_softc *ahd)
874 {
875 	return ((ahd->bugs & AHD_AUTOFLUSH_BUG) != 0);
876 }
877 
878 static ahd_patch_func_t ahd_patch18_func;
879 
880 static int
881 ahd_patch18_func(struct ahd_softc *ahd)
882 {
883 	return ((ahd->features & AHD_NEW_DFCNTRL_OPTS) != 0);
884 }
885 
886 static ahd_patch_func_t ahd_patch17_func;
887 
888 static int
889 ahd_patch17_func(struct ahd_softc *ahd)
890 {
891 	return ((ahd->flags & AHD_39BIT_ADDRESSING) != 0);
892 }
893 
894 static ahd_patch_func_t ahd_patch16_func;
895 
896 static int
897 ahd_patch16_func(struct ahd_softc *ahd)
898 {
899 	return ((ahd->flags & AHD_64BIT_ADDRESSING) != 0);
900 }
901 
902 static ahd_patch_func_t ahd_patch15_func;
903 
904 static int
905 ahd_patch15_func(struct ahd_softc *ahd)
906 {
907 	return ((ahd->features & AHD_NEW_DFCNTRL_OPTS) == 0);
908 }
909 
910 static ahd_patch_func_t ahd_patch14_func;
911 
912 static int
913 ahd_patch14_func(struct ahd_softc *ahd)
914 {
915 	return ((ahd->bugs & AHD_REG_SLOW_SETTLE_BUG) != 0);
916 }
917 
918 static ahd_patch_func_t ahd_patch13_func;
919 
920 static int
921 ahd_patch13_func(struct ahd_softc *ahd)
922 {
923 	return ((ahd->features & AHD_RTI) == 0);
924 }
925 
926 static ahd_patch_func_t ahd_patch12_func;
927 
928 static int
929 ahd_patch12_func(struct ahd_softc *ahd)
930 {
931 	return ((ahd->bugs & AHD_EARLY_REQ_BUG) != 0);
932 }
933 
934 static ahd_patch_func_t ahd_patch11_func;
935 
936 static int
937 ahd_patch11_func(struct ahd_softc *ahd)
938 {
939 	return ((ahd->bugs & AHD_BUSFREEREV_BUG) == 0);
940 }
941 
942 static ahd_patch_func_t ahd_patch10_func;
943 
944 static int
945 ahd_patch10_func(struct ahd_softc *ahd)
946 {
947 	return ((ahd->flags & AHD_SEQUENCER_DEBUG) != 0);
948 }
949 
950 static ahd_patch_func_t ahd_patch9_func;
951 
952 static int
953 ahd_patch9_func(struct ahd_softc *ahd)
954 {
955 	return ((ahd->features & AHD_FAST_CDB_DELIVERY) != 0);
956 }
957 
958 static ahd_patch_func_t ahd_patch8_func;
959 
960 static int
961 ahd_patch8_func(struct ahd_softc *ahd)
962 {
963 	return ((ahd->bugs & AHD_LQO_ATNO_BUG) != 0);
964 }
965 
966 static ahd_patch_func_t ahd_patch7_func;
967 
968 static int
969 ahd_patch7_func(struct ahd_softc *ahd)
970 {
971 	return ((ahd->bugs & AHD_BUSFREEREV_BUG) != 0);
972 }
973 
974 static ahd_patch_func_t ahd_patch6_func;
975 
976 static int
977 ahd_patch6_func(struct ahd_softc *ahd)
978 {
979 	return ((ahd->bugs & AHD_NONPACKFIFO_BUG) != 0);
980 }
981 
982 static ahd_patch_func_t ahd_patch5_func;
983 
984 static int
985 ahd_patch5_func(struct ahd_softc *ahd)
986 {
987 	return ((ahd->bugs & AHD_SENT_SCB_UPDATE_BUG) != 0);
988 }
989 
990 static ahd_patch_func_t ahd_patch4_func;
991 
992 static int
993 ahd_patch4_func(struct ahd_softc *ahd)
994 {
995 	return ((ahd->bugs & AHD_PKT_LUN_BUG) != 0);
996 }
997 
998 static ahd_patch_func_t ahd_patch3_func;
999 
1000 static int
1001 ahd_patch3_func(struct ahd_softc *ahd)
1002 {
1003 	return ((ahd->bugs & AHD_FAINT_LED_BUG) != 0);
1004 }
1005 
1006 static ahd_patch_func_t ahd_patch2_func;
1007 
1008 static int
1009 ahd_patch2_func(struct ahd_softc *ahd)
1010 {
1011 	return ((ahd->bugs & AHD_SET_MODE_BUG) != 0);
1012 }
1013 
1014 static ahd_patch_func_t ahd_patch1_func;
1015 
1016 static int
1017 ahd_patch1_func(struct ahd_softc *ahd)
1018 {
1019 	return ((ahd->bugs & AHD_INTCOLLISION_BUG) != 0);
1020 }
1021 
1022 static ahd_patch_func_t ahd_patch0_func;
1023 
1024 static int
1025 ahd_patch0_func(struct ahd_softc *ahd)
1026 {
1027 	return (0);
1028 }
1029 
1030 static struct patch {
1031 	ahd_patch_func_t		*patch_func;
1032 	uint32_t		 begin		:10,
1033 				 skip_instr	:10,
1034 				 skip_patch	:12;
1035 } patches[] = {
1036 	{ ahd_patch1_func, 0, 3, 3 },
1037 	{ ahd_patch1_func, 1, 1, 2 },
1038 	{ ahd_patch0_func, 2, 1, 1 },
1039 	{ ahd_patch1_func, 3, 3, 3 },
1040 	{ ahd_patch1_func, 4, 1, 2 },
1041 	{ ahd_patch0_func, 5, 1, 1 },
1042 	{ ahd_patch2_func, 6, 1, 2 },
1043 	{ ahd_patch0_func, 7, 1, 1 },
1044 	{ ahd_patch3_func, 36, 5, 1 },
1045 	{ ahd_patch2_func, 45, 1, 2 },
1046 	{ ahd_patch0_func, 46, 1, 1 },
1047 	{ ahd_patch1_func, 53, 1, 2 },
1048 	{ ahd_patch0_func, 54, 1, 1 },
1049 	{ ahd_patch2_func, 59, 1, 2 },
1050 	{ ahd_patch0_func, 60, 1, 1 },
1051 	{ ahd_patch2_func, 63, 1, 2 },
1052 	{ ahd_patch0_func, 64, 1, 1 },
1053 	{ ahd_patch2_func, 67, 1, 2 },
1054 	{ ahd_patch0_func, 68, 1, 1 },
1055 	{ ahd_patch4_func, 115, 1, 1 },
1056 	{ ahd_patch2_func, 180, 3, 1 },
1057 	{ ahd_patch1_func, 183, 2, 1 },
1058 	{ ahd_patch5_func, 185, 1, 1 },
1059 	{ ahd_patch2_func, 194, 1, 2 },
1060 	{ ahd_patch0_func, 195, 1, 1 },
1061 	{ ahd_patch6_func, 196, 2, 2 },
1062 	{ ahd_patch0_func, 198, 6, 3 },
1063 	{ ahd_patch2_func, 201, 1, 2 },
1064 	{ ahd_patch0_func, 202, 1, 1 },
1065 	{ ahd_patch2_func, 205, 1, 2 },
1066 	{ ahd_patch0_func, 206, 1, 1 },
1067 	{ ahd_patch3_func, 208, 1, 1 },
1068 	{ ahd_patch7_func, 209, 3, 1 },
1069 	{ ahd_patch3_func, 218, 1, 1 },
1070 	{ ahd_patch5_func, 219, 16, 2 },
1071 	{ ahd_patch0_func, 235, 1, 1 },
1072 	{ ahd_patch8_func, 260, 2, 1 },
1073 	{ ahd_patch1_func, 264, 1, 2 },
1074 	{ ahd_patch0_func, 265, 1, 1 },
1075 	{ ahd_patch7_func, 268, 3, 1 },
1076 	{ ahd_patch1_func, 283, 1, 2 },
1077 	{ ahd_patch0_func, 284, 1, 1 },
1078 	{ ahd_patch1_func, 287, 1, 2 },
1079 	{ ahd_patch0_func, 288, 1, 1 },
1080 	{ ahd_patch2_func, 291, 1, 2 },
1081 	{ ahd_patch0_func, 292, 1, 1 },
1082 	{ ahd_patch9_func, 305, 2, 2 },
1083 	{ ahd_patch0_func, 307, 1, 1 },
1084 	{ ahd_patch1_func, 349, 1, 2 },
1085 	{ ahd_patch0_func, 350, 1, 1 },
1086 	{ ahd_patch2_func, 358, 1, 2 },
1087 	{ ahd_patch0_func, 359, 1, 1 },
1088 	{ ahd_patch2_func, 362, 1, 2 },
1089 	{ ahd_patch0_func, 363, 1, 1 },
1090 	{ ahd_patch1_func, 369, 1, 2 },
1091 	{ ahd_patch0_func, 370, 1, 1 },
1092 	{ ahd_patch1_func, 372, 1, 2 },
1093 	{ ahd_patch0_func, 373, 1, 1 },
1094 	{ ahd_patch10_func, 392, 1, 1 },
1095 	{ ahd_patch10_func, 395, 1, 1 },
1096 	{ ahd_patch10_func, 397, 1, 1 },
1097 	{ ahd_patch10_func, 409, 1, 1 },
1098 	{ ahd_patch1_func, 419, 1, 2 },
1099 	{ ahd_patch0_func, 420, 1, 1 },
1100 	{ ahd_patch1_func, 422, 1, 2 },
1101 	{ ahd_patch0_func, 423, 1, 1 },
1102 	{ ahd_patch1_func, 431, 1, 2 },
1103 	{ ahd_patch0_func, 432, 1, 1 },
1104 	{ ahd_patch2_func, 445, 1, 2 },
1105 	{ ahd_patch0_func, 446, 1, 1 },
1106 	{ ahd_patch11_func, 482, 1, 1 },
1107 	{ ahd_patch1_func, 490, 1, 2 },
1108 	{ ahd_patch0_func, 491, 1, 1 },
1109 	{ ahd_patch2_func, 503, 1, 2 },
1110 	{ ahd_patch0_func, 504, 1, 1 },
1111 	{ ahd_patch12_func, 507, 6, 2 },
1112 	{ ahd_patch0_func, 513, 1, 1 },
1113 	{ ahd_patch13_func, 534, 7, 1 },
1114 	{ ahd_patch14_func, 543, 1, 1 },
1115 	{ ahd_patch15_func, 552, 1, 1 },
1116 	{ ahd_patch16_func, 553, 1, 2 },
1117 	{ ahd_patch0_func, 554, 1, 1 },
1118 	{ ahd_patch17_func, 557, 1, 1 },
1119 	{ ahd_patch16_func, 558, 1, 1 },
1120 	{ ahd_patch18_func, 569, 1, 2 },
1121 	{ ahd_patch0_func, 570, 1, 1 },
1122 	{ ahd_patch1_func, 589, 1, 2 },
1123 	{ ahd_patch0_func, 590, 1, 1 },
1124 	{ ahd_patch1_func, 593, 1, 2 },
1125 	{ ahd_patch0_func, 594, 1, 1 },
1126 	{ ahd_patch2_func, 599, 1, 2 },
1127 	{ ahd_patch0_func, 600, 1, 1 },
1128 	{ ahd_patch2_func, 604, 1, 2 },
1129 	{ ahd_patch0_func, 605, 1, 1 },
1130 	{ ahd_patch1_func, 606, 1, 2 },
1131 	{ ahd_patch0_func, 607, 1, 1 },
1132 	{ ahd_patch2_func, 618, 1, 2 },
1133 	{ ahd_patch0_func, 619, 1, 1 },
1134 	{ ahd_patch19_func, 623, 1, 1 },
1135 	{ ahd_patch20_func, 628, 1, 1 },
1136 	{ ahd_patch21_func, 629, 2, 1 },
1137 	{ ahd_patch20_func, 633, 1, 2 },
1138 	{ ahd_patch0_func, 634, 1, 1 },
1139 	{ ahd_patch2_func, 637, 1, 2 },
1140 	{ ahd_patch0_func, 638, 1, 1 },
1141 	{ ahd_patch2_func, 653, 1, 2 },
1142 	{ ahd_patch0_func, 654, 1, 1 },
1143 	{ ahd_patch13_func, 655, 14, 1 },
1144 	{ ahd_patch1_func, 673, 1, 2 },
1145 	{ ahd_patch0_func, 674, 1, 1 },
1146 	{ ahd_patch13_func, 675, 1, 1 },
1147 	{ ahd_patch1_func, 687, 1, 2 },
1148 	{ ahd_patch0_func, 688, 1, 1 },
1149 	{ ahd_patch1_func, 695, 1, 2 },
1150 	{ ahd_patch0_func, 696, 1, 1 },
1151 	{ ahd_patch19_func, 719, 1, 1 },
1152 	{ ahd_patch19_func, 757, 1, 1 },
1153 	{ ahd_patch1_func, 768, 1, 2 },
1154 	{ ahd_patch0_func, 769, 1, 1 },
1155 	{ ahd_patch7_func, 785, 3, 1 },
1156 	{ ahd_patch1_func, 789, 1, 2 },
1157 	{ ahd_patch0_func, 790, 1, 1 },
1158 	{ ahd_patch1_func, 792, 1, 2 },
1159 	{ ahd_patch0_func, 793, 1, 1 },
1160 	{ ahd_patch1_func, 796, 1, 2 },
1161 	{ ahd_patch0_func, 797, 1, 1 },
1162 	{ ahd_patch22_func, 799, 1, 2 },
1163 	{ ahd_patch0_func, 800, 2, 1 },
1164 	{ ahd_patch23_func, 803, 4, 2 },
1165 	{ ahd_patch0_func, 807, 1, 1 },
1166 	{ ahd_patch23_func, 815, 11, 1 }
1167 };
1168 
1169 static struct cs {
1170 	uint16_t	begin;
1171 	uint16_t	end;
1172 } critical_sections[] = {
1173 	{ 17, 30 },
1174 	{ 47, 58 },
1175 	{ 61, 63 },
1176 	{ 65, 66 },
1177 	{ 72, 92 },
1178 	{ 110, 142 },
1179 	{ 143, 180 },
1180 	{ 185, 193 },
1181 	{ 218, 274 },
1182 	{ 435, 443 },
1183 	{ 453, 455 },
1184 	{ 458, 467 },
1185 	{ 719, 749 },
1186 	{ 759, 763 }
1187 };
1188 
1189 static const int num_critical_sections = sizeof(critical_sections)
1190 				       / sizeof(*critical_sections);
1191