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