xref: /freebsd/sys/dev/aic7xxx/aic79xx_reg_print.c (revision 6b7b2d80ed4d728d3ffd12c422e57798c1b63a84)
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 
9 #include <sys/cdefs.h>
10 __FBSDID("$FreeBSD$");
11 #include <dev/aic7xxx/aic79xx_osm.h>
12 
13 static ahd_reg_parse_entry_t MODE_PTR_parse_table[] = {
14 	{ "SRC_MODE",		0x07, 0x07 },
15 	{ "DST_MODE",		0x70, 0x70 }
16 };
17 
18 int
19 ahd_mode_ptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
20 {
21 	return (ahd_print_register(MODE_PTR_parse_table, 2, "MODE_PTR",
22 	    0x00, regvalue, cur_col, wrap));
23 }
24 
25 static ahd_reg_parse_entry_t INTSTAT_parse_table[] = {
26 	{ "SPLTINT",		0x01, 0x01 },
27 	{ "CMDCMPLT",		0x02, 0x02 },
28 	{ "SEQINT",		0x04, 0x04 },
29 	{ "SCSIINT",		0x08, 0x08 },
30 	{ "PCIINT",		0x10, 0x10 },
31 	{ "SWTMINT",		0x20, 0x20 },
32 	{ "BRKADRINT",		0x40, 0x40 },
33 	{ "HWERRINT",		0x80, 0x80 },
34 	{ "INT_PEND",		0xff, 0xff }
35 };
36 
37 int
38 ahd_intstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
39 {
40 	return (ahd_print_register(INTSTAT_parse_table, 9, "INTSTAT",
41 	    0x01, regvalue, cur_col, wrap));
42 }
43 
44 static ahd_reg_parse_entry_t SEQINTCODE_parse_table[] = {
45 	{ "NO_SEQINT",		0x00, 0xff },
46 	{ "BAD_PHASE",		0x01, 0xff },
47 	{ "SEND_REJECT",	0x02, 0xff },
48 	{ "PROTO_VIOLATION",	0x03, 0xff },
49 	{ "NO_MATCH",		0x04, 0xff },
50 	{ "IGN_WIDE_RES",	0x05, 0xff },
51 	{ "PDATA_REINIT",	0x06, 0xff },
52 	{ "HOST_MSG_LOOP",	0x07, 0xff },
53 	{ "BAD_STATUS",		0x08, 0xff },
54 	{ "DATA_OVERRUN",	0x09, 0xff },
55 	{ "MKMSG_FAILED",	0x0a, 0xff },
56 	{ "MISSED_BUSFREE",	0x0b, 0xff },
57 	{ "DUMP_CARD_STATE",	0x0c, 0xff },
58 	{ "ILLEGAL_PHASE",	0x0d, 0xff },
59 	{ "INVALID_SEQINT",	0x0e, 0xff },
60 	{ "CFG4ISTAT_INTR",	0x0f, 0xff },
61 	{ "STATUS_OVERRUN",	0x10, 0xff },
62 	{ "CFG4OVERRUN",	0x11, 0xff },
63 	{ "ENTERING_NONPACK",	0x12, 0xff },
64 	{ "TASKMGMT_FUNC_COMPLETE",0x13, 0xff },
65 	{ "TASKMGMT_CMD_CMPLT_OKAY",0x14, 0xff },
66 	{ "TRACEPOINT0",	0x15, 0xff },
67 	{ "TRACEPOINT1",	0x16, 0xff },
68 	{ "TRACEPOINT2",	0x17, 0xff },
69 	{ "TRACEPOINT3",	0x18, 0xff },
70 	{ "SAW_HWERR",		0x19, 0xff },
71 	{ "BAD_SCB_STATUS",	0x1a, 0xff }
72 };
73 
74 int
75 ahd_seqintcode_print(u_int regvalue, u_int *cur_col, u_int wrap)
76 {
77 	return (ahd_print_register(SEQINTCODE_parse_table, 27, "SEQINTCODE",
78 	    0x02, regvalue, cur_col, wrap));
79 }
80 
81 static ahd_reg_parse_entry_t CLRINT_parse_table[] = {
82 	{ "CLRSPLTINT",		0x01, 0x01 },
83 	{ "CLRCMDINT",		0x02, 0x02 },
84 	{ "CLRSEQINT",		0x04, 0x04 },
85 	{ "CLRSCSIINT",		0x08, 0x08 },
86 	{ "CLRPCIINT",		0x10, 0x10 },
87 	{ "CLRSWTMINT",		0x20, 0x20 },
88 	{ "CLRBRKADRINT",	0x40, 0x40 },
89 	{ "CLRHWERRINT",	0x80, 0x80 }
90 };
91 
92 int
93 ahd_clrint_print(u_int regvalue, u_int *cur_col, u_int wrap)
94 {
95 	return (ahd_print_register(CLRINT_parse_table, 8, "CLRINT",
96 	    0x03, regvalue, cur_col, wrap));
97 }
98 
99 static ahd_reg_parse_entry_t ERROR_parse_table[] = {
100 	{ "DSCTMOUT",		0x02, 0x02 },
101 	{ "ILLOPCODE",		0x04, 0x04 },
102 	{ "SQPARERR",		0x08, 0x08 },
103 	{ "DPARERR",		0x10, 0x10 },
104 	{ "MPARERR",		0x20, 0x20 },
105 	{ "CIOACCESFAIL",	0x40, 0x40 },
106 	{ "CIOPARERR",		0x80, 0x80 }
107 };
108 
109 int
110 ahd_error_print(u_int regvalue, u_int *cur_col, u_int wrap)
111 {
112 	return (ahd_print_register(ERROR_parse_table, 7, "ERROR",
113 	    0x04, regvalue, cur_col, wrap));
114 }
115 
116 static ahd_reg_parse_entry_t CLRERR_parse_table[] = {
117 	{ "CLRDSCTMOUT",	0x02, 0x02 },
118 	{ "CLRILLOPCODE",	0x04, 0x04 },
119 	{ "CLRSQPARERR",	0x08, 0x08 },
120 	{ "CLRDPARERR",		0x10, 0x10 },
121 	{ "CLRMPARERR",		0x20, 0x20 },
122 	{ "CLRCIOACCESFAIL",	0x40, 0x40 },
123 	{ "CLRCIOPARERR",	0x80, 0x80 }
124 };
125 
126 int
127 ahd_clrerr_print(u_int regvalue, u_int *cur_col, u_int wrap)
128 {
129 	return (ahd_print_register(CLRERR_parse_table, 7, "CLRERR",
130 	    0x04, regvalue, cur_col, wrap));
131 }
132 
133 static ahd_reg_parse_entry_t HCNTRL_parse_table[] = {
134 	{ "CHIPRST",		0x01, 0x01 },
135 	{ "CHIPRSTACK",		0x01, 0x01 },
136 	{ "INTEN",		0x02, 0x02 },
137 	{ "PAUSE",		0x04, 0x04 },
138 	{ "SWTIMER_START_B",	0x08, 0x08 },
139 	{ "SWINT",		0x10, 0x10 },
140 	{ "POWRDN",		0x40, 0x40 },
141 	{ "SEQ_RESET",		0x80, 0x80 }
142 };
143 
144 int
145 ahd_hcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
146 {
147 	return (ahd_print_register(HCNTRL_parse_table, 8, "HCNTRL",
148 	    0x05, regvalue, cur_col, wrap));
149 }
150 
151 int
152 ahd_hnscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
153 {
154 	return (ahd_print_register(NULL, 0, "HNSCB_QOFF",
155 	    0x06, regvalue, cur_col, wrap));
156 }
157 
158 int
159 ahd_hescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
160 {
161 	return (ahd_print_register(NULL, 0, "HESCB_QOFF",
162 	    0x08, regvalue, cur_col, wrap));
163 }
164 
165 static ahd_reg_parse_entry_t HS_MAILBOX_parse_table[] = {
166 	{ "ENINT_COALESCE",	0x40, 0x40 },
167 	{ "HOST_TQINPOS",	0x80, 0x80 }
168 };
169 
170 int
171 ahd_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)
172 {
173 	return (ahd_print_register(HS_MAILBOX_parse_table, 2, "HS_MAILBOX",
174 	    0x0b, regvalue, cur_col, wrap));
175 }
176 
177 static ahd_reg_parse_entry_t SEQINTSTAT_parse_table[] = {
178 	{ "SEQ_SPLTINT",	0x01, 0x01 },
179 	{ "SEQ_PCIINT",		0x02, 0x02 },
180 	{ "SEQ_SCSIINT",	0x04, 0x04 },
181 	{ "SEQ_SEQINT",		0x08, 0x08 },
182 	{ "SEQ_SWTMRTO",	0x10, 0x10 }
183 };
184 
185 int
186 ahd_seqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
187 {
188 	return (ahd_print_register(SEQINTSTAT_parse_table, 5, "SEQINTSTAT",
189 	    0x0c, regvalue, cur_col, wrap));
190 }
191 
192 static ahd_reg_parse_entry_t CLRSEQINTSTAT_parse_table[] = {
193 	{ "CLRSEQ_SPLTINT",	0x01, 0x01 },
194 	{ "CLRSEQ_PCIINT",	0x02, 0x02 },
195 	{ "CLRSEQ_SCSIINT",	0x04, 0x04 },
196 	{ "CLRSEQ_SEQINT",	0x08, 0x08 },
197 	{ "CLRSEQ_SWTMRTO",	0x10, 0x10 }
198 };
199 
200 int
201 ahd_clrseqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
202 {
203 	return (ahd_print_register(CLRSEQINTSTAT_parse_table, 5, "CLRSEQINTSTAT",
204 	    0x0c, regvalue, cur_col, wrap));
205 }
206 
207 int
208 ahd_swtimer_print(u_int regvalue, u_int *cur_col, u_int wrap)
209 {
210 	return (ahd_print_register(NULL, 0, "SWTIMER",
211 	    0x0e, regvalue, cur_col, wrap));
212 }
213 
214 int
215 ahd_snscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
216 {
217 	return (ahd_print_register(NULL, 0, "SNSCB_QOFF",
218 	    0x10, regvalue, cur_col, wrap));
219 }
220 
221 int
222 ahd_sescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
223 {
224 	return (ahd_print_register(NULL, 0, "SESCB_QOFF",
225 	    0x12, regvalue, cur_col, wrap));
226 }
227 
228 int
229 ahd_sdscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
230 {
231 	return (ahd_print_register(NULL, 0, "SDSCB_QOFF",
232 	    0x14, regvalue, cur_col, wrap));
233 }
234 
235 static ahd_reg_parse_entry_t QOFF_CTLSTA_parse_table[] = {
236 	{ "SCB_QSIZE_4",	0x00, 0x0f },
237 	{ "SCB_QSIZE_8",	0x01, 0x0f },
238 	{ "SCB_QSIZE_16",	0x02, 0x0f },
239 	{ "SCB_QSIZE_32",	0x03, 0x0f },
240 	{ "SCB_QSIZE_64",	0x04, 0x0f },
241 	{ "SCB_QSIZE_128",	0x05, 0x0f },
242 	{ "SCB_QSIZE_256",	0x06, 0x0f },
243 	{ "SCB_QSIZE_512",	0x07, 0x0f },
244 	{ "SCB_QSIZE_1024",	0x08, 0x0f },
245 	{ "SCB_QSIZE_2048",	0x09, 0x0f },
246 	{ "SCB_QSIZE_4096",	0x0a, 0x0f },
247 	{ "SCB_QSIZE_8192",	0x0b, 0x0f },
248 	{ "SCB_QSIZE_16384",	0x0c, 0x0f },
249 	{ "SCB_QSIZE",		0x0f, 0x0f },
250 	{ "HS_MAILBOX_ACT",	0x10, 0x10 },
251 	{ "SDSCB_ROLLOVR",	0x20, 0x20 },
252 	{ "NEW_SCB_AVAIL",	0x40, 0x40 },
253 	{ "EMPTY_SCB_AVAIL",	0x80, 0x80 }
254 };
255 
256 int
257 ahd_qoff_ctlsta_print(u_int regvalue, u_int *cur_col, u_int wrap)
258 {
259 	return (ahd_print_register(QOFF_CTLSTA_parse_table, 18, "QOFF_CTLSTA",
260 	    0x16, regvalue, cur_col, wrap));
261 }
262 
263 static ahd_reg_parse_entry_t INTCTL_parse_table[] = {
264 	{ "SPLTINTEN",		0x01, 0x01 },
265 	{ "SEQINTEN",		0x02, 0x02 },
266 	{ "SCSIINTEN",		0x04, 0x04 },
267 	{ "PCIINTEN",		0x08, 0x08 },
268 	{ "AUTOCLRCMDINT",	0x10, 0x10 },
269 	{ "SWTIMER_START",	0x20, 0x20 },
270 	{ "SWTMINTEN",		0x40, 0x40 },
271 	{ "SWTMINTMASK",	0x80, 0x80 }
272 };
273 
274 int
275 ahd_intctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
276 {
277 	return (ahd_print_register(INTCTL_parse_table, 8, "INTCTL",
278 	    0x18, regvalue, cur_col, wrap));
279 }
280 
281 static ahd_reg_parse_entry_t DFCNTRL_parse_table[] = {
282 	{ "DIRECTIONEN",	0x01, 0x01 },
283 	{ "FIFOFLUSH",		0x02, 0x02 },
284 	{ "FIFOFLUSHACK",	0x02, 0x02 },
285 	{ "DIRECTION",		0x04, 0x04 },
286 	{ "DIRECTIONACK",	0x04, 0x04 },
287 	{ "HDMAEN",		0x08, 0x08 },
288 	{ "HDMAENACK",		0x08, 0x08 },
289 	{ "SCSIEN",		0x20, 0x20 },
290 	{ "SCSIENACK",		0x20, 0x20 },
291 	{ "SCSIENWRDIS",	0x40, 0x40 },
292 	{ "PRELOADEN",		0x80, 0x80 }
293 };
294 
295 int
296 ahd_dfcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
297 {
298 	return (ahd_print_register(DFCNTRL_parse_table, 11, "DFCNTRL",
299 	    0x19, regvalue, cur_col, wrap));
300 }
301 
302 static ahd_reg_parse_entry_t DSCOMMAND0_parse_table[] = {
303 	{ "CIOPARCKEN",		0x01, 0x01 },
304 	{ "DISABLE_TWATE",	0x02, 0x02 },
305 	{ "EXTREQLCK",		0x10, 0x10 },
306 	{ "MPARCKEN",		0x20, 0x20 },
307 	{ "DPARCKEN",		0x40, 0x40 },
308 	{ "CACHETHEN",		0x80, 0x80 }
309 };
310 
311 int
312 ahd_dscommand0_print(u_int regvalue, u_int *cur_col, u_int wrap)
313 {
314 	return (ahd_print_register(DSCOMMAND0_parse_table, 6, "DSCOMMAND0",
315 	    0x19, regvalue, cur_col, wrap));
316 }
317 
318 static ahd_reg_parse_entry_t DFSTATUS_parse_table[] = {
319 	{ "FIFOEMP",		0x01, 0x01 },
320 	{ "FIFOFULL",		0x02, 0x02 },
321 	{ "DFTHRESH",		0x04, 0x04 },
322 	{ "HDONE",		0x08, 0x08 },
323 	{ "MREQPEND",		0x10, 0x10 },
324 	{ "PKT_PRELOAD_AVAIL",	0x40, 0x40 },
325 	{ "PRELOAD_AVAIL",	0x80, 0x80 }
326 };
327 
328 int
329 ahd_dfstatus_print(u_int regvalue, u_int *cur_col, u_int wrap)
330 {
331 	return (ahd_print_register(DFSTATUS_parse_table, 7, "DFSTATUS",
332 	    0x1a, regvalue, cur_col, wrap));
333 }
334 
335 static ahd_reg_parse_entry_t SG_CACHE_SHADOW_parse_table[] = {
336 	{ "LAST_SEG_DONE",	0x01, 0x01 },
337 	{ "LAST_SEG",		0x02, 0x02 },
338 	{ "ODD_SEG",		0x04, 0x04 },
339 	{ "SG_ADDR_MASK",	0xf8, 0xf8 }
340 };
341 
342 int
343 ahd_sg_cache_shadow_print(u_int regvalue, u_int *cur_col, u_int wrap)
344 {
345 	return (ahd_print_register(SG_CACHE_SHADOW_parse_table, 4, "SG_CACHE_SHADOW",
346 	    0x1b, regvalue, cur_col, wrap));
347 }
348 
349 static ahd_reg_parse_entry_t SG_CACHE_PRE_parse_table[] = {
350 	{ "LAST_SEG",		0x02, 0x02 },
351 	{ "ODD_SEG",		0x04, 0x04 },
352 	{ "SG_ADDR_MASK",	0xf8, 0xf8 }
353 };
354 
355 int
356 ahd_sg_cache_pre_print(u_int regvalue, u_int *cur_col, u_int wrap)
357 {
358 	return (ahd_print_register(SG_CACHE_PRE_parse_table, 3, "SG_CACHE_PRE",
359 	    0x1b, regvalue, cur_col, wrap));
360 }
361 
362 static ahd_reg_parse_entry_t ARBCTL_parse_table[] = {
363 	{ "USE_TIME",		0x07, 0x07 },
364 	{ "RETRY_SWEN",		0x08, 0x08 },
365 	{ "RESET_HARB",		0x80, 0x80 }
366 };
367 
368 int
369 ahd_arbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
370 {
371 	return (ahd_print_register(ARBCTL_parse_table, 3, "ARBCTL",
372 	    0x1b, regvalue, cur_col, wrap));
373 }
374 
375 int
376 ahd_lqin_print(u_int regvalue, u_int *cur_col, u_int wrap)
377 {
378 	return (ahd_print_register(NULL, 0, "LQIN",
379 	    0x20, regvalue, cur_col, wrap));
380 }
381 
382 int
383 ahd_typeptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
384 {
385 	return (ahd_print_register(NULL, 0, "TYPEPTR",
386 	    0x20, regvalue, cur_col, wrap));
387 }
388 
389 int
390 ahd_tagptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
391 {
392 	return (ahd_print_register(NULL, 0, "TAGPTR",
393 	    0x21, regvalue, cur_col, wrap));
394 }
395 
396 int
397 ahd_lunptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
398 {
399 	return (ahd_print_register(NULL, 0, "LUNPTR",
400 	    0x22, regvalue, cur_col, wrap));
401 }
402 
403 int
404 ahd_datalenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
405 {
406 	return (ahd_print_register(NULL, 0, "DATALENPTR",
407 	    0x23, regvalue, cur_col, wrap));
408 }
409 
410 int
411 ahd_statlenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
412 {
413 	return (ahd_print_register(NULL, 0, "STATLENPTR",
414 	    0x24, regvalue, cur_col, wrap));
415 }
416 
417 int
418 ahd_cmdlenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
419 {
420 	return (ahd_print_register(NULL, 0, "CMDLENPTR",
421 	    0x25, regvalue, cur_col, wrap));
422 }
423 
424 int
425 ahd_attrptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
426 {
427 	return (ahd_print_register(NULL, 0, "ATTRPTR",
428 	    0x26, regvalue, cur_col, wrap));
429 }
430 
431 int
432 ahd_flagptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
433 {
434 	return (ahd_print_register(NULL, 0, "FLAGPTR",
435 	    0x27, regvalue, cur_col, wrap));
436 }
437 
438 int
439 ahd_cmdptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
440 {
441 	return (ahd_print_register(NULL, 0, "CMDPTR",
442 	    0x28, regvalue, cur_col, wrap));
443 }
444 
445 int
446 ahd_qnextptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
447 {
448 	return (ahd_print_register(NULL, 0, "QNEXTPTR",
449 	    0x29, regvalue, cur_col, wrap));
450 }
451 
452 int
453 ahd_idptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
454 {
455 	return (ahd_print_register(NULL, 0, "IDPTR",
456 	    0x2a, regvalue, cur_col, wrap));
457 }
458 
459 int
460 ahd_abrtbyteptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
461 {
462 	return (ahd_print_register(NULL, 0, "ABRTBYTEPTR",
463 	    0x2b, regvalue, cur_col, wrap));
464 }
465 
466 int
467 ahd_abrtbitptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
468 {
469 	return (ahd_print_register(NULL, 0, "ABRTBITPTR",
470 	    0x2c, regvalue, cur_col, wrap));
471 }
472 
473 int
474 ahd_maxcmdbytes_print(u_int regvalue, u_int *cur_col, u_int wrap)
475 {
476 	return (ahd_print_register(NULL, 0, "MAXCMDBYTES",
477 	    0x2d, regvalue, cur_col, wrap));
478 }
479 
480 int
481 ahd_maxcmd2rcv_print(u_int regvalue, u_int *cur_col, u_int wrap)
482 {
483 	return (ahd_print_register(NULL, 0, "MAXCMD2RCV",
484 	    0x2e, regvalue, cur_col, wrap));
485 }
486 
487 int
488 ahd_shortthresh_print(u_int regvalue, u_int *cur_col, u_int wrap)
489 {
490 	return (ahd_print_register(NULL, 0, "SHORTTHRESH",
491 	    0x2f, regvalue, cur_col, wrap));
492 }
493 
494 static ahd_reg_parse_entry_t LUNLEN_parse_table[] = {
495 	{ "ILUNLEN",		0x0f, 0x0f },
496 	{ "TLUNLEN",		0xf0, 0xf0 }
497 };
498 
499 int
500 ahd_lunlen_print(u_int regvalue, u_int *cur_col, u_int wrap)
501 {
502 	return (ahd_print_register(LUNLEN_parse_table, 2, "LUNLEN",
503 	    0x30, regvalue, cur_col, wrap));
504 }
505 
506 int
507 ahd_cdblimit_print(u_int regvalue, u_int *cur_col, u_int wrap)
508 {
509 	return (ahd_print_register(NULL, 0, "CDBLIMIT",
510 	    0x31, regvalue, cur_col, wrap));
511 }
512 
513 int
514 ahd_maxcmd_print(u_int regvalue, u_int *cur_col, u_int wrap)
515 {
516 	return (ahd_print_register(NULL, 0, "MAXCMD",
517 	    0x32, regvalue, cur_col, wrap));
518 }
519 
520 int
521 ahd_maxcmdcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
522 {
523 	return (ahd_print_register(NULL, 0, "MAXCMDCNT",
524 	    0x33, regvalue, cur_col, wrap));
525 }
526 
527 int
528 ahd_lqrsvd01_print(u_int regvalue, u_int *cur_col, u_int wrap)
529 {
530 	return (ahd_print_register(NULL, 0, "LQRSVD01",
531 	    0x34, regvalue, cur_col, wrap));
532 }
533 
534 int
535 ahd_lqrsvd16_print(u_int regvalue, u_int *cur_col, u_int wrap)
536 {
537 	return (ahd_print_register(NULL, 0, "LQRSVD16",
538 	    0x35, regvalue, cur_col, wrap));
539 }
540 
541 int
542 ahd_lqrsvd17_print(u_int regvalue, u_int *cur_col, u_int wrap)
543 {
544 	return (ahd_print_register(NULL, 0, "LQRSVD17",
545 	    0x36, regvalue, cur_col, wrap));
546 }
547 
548 int
549 ahd_cmdrsvd0_print(u_int regvalue, u_int *cur_col, u_int wrap)
550 {
551 	return (ahd_print_register(NULL, 0, "CMDRSVD0",
552 	    0x37, regvalue, cur_col, wrap));
553 }
554 
555 static ahd_reg_parse_entry_t LQCTL0_parse_table[] = {
556 	{ "LQ0INITGCLT",	0x03, 0x03 },
557 	{ "LQ0TARGCLT",		0x0c, 0x0c },
558 	{ "LQIINITGCLT",	0x30, 0x30 },
559 	{ "LQITARGCLT",		0xc0, 0xc0 }
560 };
561 
562 int
563 ahd_lqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
564 {
565 	return (ahd_print_register(LQCTL0_parse_table, 4, "LQCTL0",
566 	    0x38, regvalue, cur_col, wrap));
567 }
568 
569 static ahd_reg_parse_entry_t LQCTL1_parse_table[] = {
570 	{ "ABORTPENDING",	0x01, 0x01 },
571 	{ "SINGLECMD",		0x02, 0x02 },
572 	{ "PCI2PCI",		0x04, 0x04 }
573 };
574 
575 int
576 ahd_lqctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
577 {
578 	return (ahd_print_register(LQCTL1_parse_table, 3, "LQCTL1",
579 	    0x38, regvalue, cur_col, wrap));
580 }
581 
582 static ahd_reg_parse_entry_t LQCTL2_parse_table[] = {
583 	{ "LQOPAUSE",		0x01, 0x01 },
584 	{ "LQOTOIDLE",		0x02, 0x02 },
585 	{ "LQOCONTINUE",	0x04, 0x04 },
586 	{ "LQORETRY",		0x08, 0x08 },
587 	{ "LQIPAUSE",		0x10, 0x10 },
588 	{ "LQITOIDLE",		0x20, 0x20 },
589 	{ "LQICONTINUE",	0x40, 0x40 },
590 	{ "LQIRETRY",		0x80, 0x80 }
591 };
592 
593 int
594 ahd_lqctl2_print(u_int regvalue, u_int *cur_col, u_int wrap)
595 {
596 	return (ahd_print_register(LQCTL2_parse_table, 8, "LQCTL2",
597 	    0x39, regvalue, cur_col, wrap));
598 }
599 
600 static ahd_reg_parse_entry_t SCSBIST0_parse_table[] = {
601 	{ "OSBISTRUN",		0x01, 0x01 },
602 	{ "OSBISTDONE",		0x02, 0x02 },
603 	{ "OSBISTERR",		0x04, 0x04 },
604 	{ "GSBISTRUN",		0x10, 0x10 },
605 	{ "GSBISTDONE",		0x20, 0x20 },
606 	{ "GSBISTERR",		0x40, 0x40 }
607 };
608 
609 int
610 ahd_scsbist0_print(u_int regvalue, u_int *cur_col, u_int wrap)
611 {
612 	return (ahd_print_register(SCSBIST0_parse_table, 6, "SCSBIST0",
613 	    0x39, regvalue, cur_col, wrap));
614 }
615 
616 static ahd_reg_parse_entry_t SCSISEQ0_parse_table[] = {
617 	{ "SCSIRSTO",		0x01, 0x01 },
618 	{ "FORCEBUSFREE",	0x10, 0x10 },
619 	{ "ENARBO",		0x20, 0x20 },
620 	{ "ENSELO",		0x40, 0x40 },
621 	{ "TEMODEO",		0x80, 0x80 }
622 };
623 
624 int
625 ahd_scsiseq0_print(u_int regvalue, u_int *cur_col, u_int wrap)
626 {
627 	return (ahd_print_register(SCSISEQ0_parse_table, 5, "SCSISEQ0",
628 	    0x3a, regvalue, cur_col, wrap));
629 }
630 
631 static ahd_reg_parse_entry_t SCSBIST1_parse_table[] = {
632 	{ "NTBISTRUN",		0x01, 0x01 },
633 	{ "NTBISTDONE",		0x02, 0x02 },
634 	{ "NTBISTERR",		0x04, 0x04 }
635 };
636 
637 int
638 ahd_scsbist1_print(u_int regvalue, u_int *cur_col, u_int wrap)
639 {
640 	return (ahd_print_register(SCSBIST1_parse_table, 3, "SCSBIST1",
641 	    0x3a, regvalue, cur_col, wrap));
642 }
643 
644 static ahd_reg_parse_entry_t SCSISEQ1_parse_table[] = {
645 	{ "ALTSTIM",		0x01, 0x01 },
646 	{ "ENAUTOATNP",		0x02, 0x02 },
647 	{ "MANUALP",		0x0c, 0x0c },
648 	{ "ENRSELI",		0x10, 0x10 },
649 	{ "ENSELI",		0x20, 0x20 },
650 	{ "MANUALCTL",		0x40, 0x40 }
651 };
652 
653 int
654 ahd_scsiseq1_print(u_int regvalue, u_int *cur_col, u_int wrap)
655 {
656 	return (ahd_print_register(SCSISEQ1_parse_table, 6, "SCSISEQ1",
657 	    0x3b, regvalue, cur_col, wrap));
658 }
659 
660 int
661 ahd_businitid_print(u_int regvalue, u_int *cur_col, u_int wrap)
662 {
663 	return (ahd_print_register(NULL, 0, "BUSINITID",
664 	    0x3c, regvalue, cur_col, wrap));
665 }
666 
667 static ahd_reg_parse_entry_t SXFRCTL0_parse_table[] = {
668 	{ "SPIOEN",		0x08, 0x08 },
669 	{ "BIOSCANCELEN",	0x10, 0x10 },
670 	{ "DFPEXP",		0x40, 0x40 },
671 	{ "DFON",		0x80, 0x80 }
672 };
673 
674 int
675 ahd_sxfrctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
676 {
677 	return (ahd_print_register(SXFRCTL0_parse_table, 4, "SXFRCTL0",
678 	    0x3c, regvalue, cur_col, wrap));
679 }
680 
681 int
682 ahd_dlcount_print(u_int regvalue, u_int *cur_col, u_int wrap)
683 {
684 	return (ahd_print_register(NULL, 0, "DLCOUNT",
685 	    0x3c, regvalue, cur_col, wrap));
686 }
687 
688 static ahd_reg_parse_entry_t SXFRCTL1_parse_table[] = {
689 	{ "STPWEN",		0x01, 0x01 },
690 	{ "ACTNEGEN",		0x02, 0x02 },
691 	{ "ENSTIMER",		0x04, 0x04 },
692 	{ "STIMESEL",		0x18, 0x18 },
693 	{ "ENSPCHK",		0x20, 0x20 },
694 	{ "ENSACHK",		0x40, 0x40 },
695 	{ "BITBUCKET",		0x80, 0x80 }
696 };
697 
698 int
699 ahd_sxfrctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
700 {
701 	return (ahd_print_register(SXFRCTL1_parse_table, 7, "SXFRCTL1",
702 	    0x3d, regvalue, cur_col, wrap));
703 }
704 
705 int
706 ahd_bustargid_print(u_int regvalue, u_int *cur_col, u_int wrap)
707 {
708 	return (ahd_print_register(NULL, 0, "BUSTARGID",
709 	    0x3e, regvalue, cur_col, wrap));
710 }
711 
712 static ahd_reg_parse_entry_t SXFRCTL2_parse_table[] = {
713 	{ "ASU",		0x07, 0x07 },
714 	{ "CMDDMAEN",		0x08, 0x08 },
715 	{ "AUTORSTDIS",		0x10, 0x10 }
716 };
717 
718 int
719 ahd_sxfrctl2_print(u_int regvalue, u_int *cur_col, u_int wrap)
720 {
721 	return (ahd_print_register(SXFRCTL2_parse_table, 3, "SXFRCTL2",
722 	    0x3e, regvalue, cur_col, wrap));
723 }
724 
725 static ahd_reg_parse_entry_t DFFSTAT_parse_table[] = {
726 	{ "CURRFIFO_0",		0x00, 0x03 },
727 	{ "CURRFIFO_1",		0x01, 0x03 },
728 	{ "CURRFIFO_NONE",	0x03, 0x03 },
729 	{ "FIFO0FREE",		0x10, 0x10 },
730 	{ "FIFO1FREE",		0x20, 0x20 },
731 	{ "CURRFIFO",		0x03, 0x03 }
732 };
733 
734 int
735 ahd_dffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
736 {
737 	return (ahd_print_register(DFFSTAT_parse_table, 6, "DFFSTAT",
738 	    0x3f, regvalue, cur_col, wrap));
739 }
740 
741 static ahd_reg_parse_entry_t SCSISIGO_parse_table[] = {
742 	{ "P_DATAOUT",		0x00, 0xe0 },
743 	{ "P_DATAOUT_DT",	0x20, 0xe0 },
744 	{ "P_DATAIN",		0x40, 0xe0 },
745 	{ "P_DATAIN_DT",	0x60, 0xe0 },
746 	{ "P_COMMAND",		0x80, 0xe0 },
747 	{ "P_MESGOUT",		0xa0, 0xe0 },
748 	{ "P_STATUS",		0xc0, 0xe0 },
749 	{ "P_MESGIN",		0xe0, 0xe0 },
750 	{ "ACKO",		0x01, 0x01 },
751 	{ "REQO",		0x02, 0x02 },
752 	{ "BSYO",		0x04, 0x04 },
753 	{ "SELO",		0x08, 0x08 },
754 	{ "ATNO",		0x10, 0x10 },
755 	{ "MSGO",		0x20, 0x20 },
756 	{ "IOO",		0x40, 0x40 },
757 	{ "CDO",		0x80, 0x80 },
758 	{ "PHASE_MASK",		0xe0, 0xe0 }
759 };
760 
761 int
762 ahd_scsisigo_print(u_int regvalue, u_int *cur_col, u_int wrap)
763 {
764 	return (ahd_print_register(SCSISIGO_parse_table, 17, "SCSISIGO",
765 	    0x40, regvalue, cur_col, wrap));
766 }
767 
768 int
769 ahd_multargid_print(u_int regvalue, u_int *cur_col, u_int wrap)
770 {
771 	return (ahd_print_register(NULL, 0, "MULTARGID",
772 	    0x40, regvalue, cur_col, wrap));
773 }
774 
775 static ahd_reg_parse_entry_t SCSISIGI_parse_table[] = {
776 	{ "P_DATAOUT",		0x00, 0xe0 },
777 	{ "P_DATAOUT_DT",	0x20, 0xe0 },
778 	{ "P_DATAIN",		0x40, 0xe0 },
779 	{ "P_DATAIN_DT",	0x60, 0xe0 },
780 	{ "P_COMMAND",		0x80, 0xe0 },
781 	{ "P_MESGOUT",		0xa0, 0xe0 },
782 	{ "P_STATUS",		0xc0, 0xe0 },
783 	{ "P_MESGIN",		0xe0, 0xe0 },
784 	{ "ACKI",		0x01, 0x01 },
785 	{ "REQI",		0x02, 0x02 },
786 	{ "BSYI",		0x04, 0x04 },
787 	{ "SELI",		0x08, 0x08 },
788 	{ "ATNI",		0x10, 0x10 },
789 	{ "MSGI",		0x20, 0x20 },
790 	{ "IOI",		0x40, 0x40 },
791 	{ "CDI",		0x80, 0x80 },
792 	{ "PHASE_MASK",		0xe0, 0xe0 }
793 };
794 
795 int
796 ahd_scsisigi_print(u_int regvalue, u_int *cur_col, u_int wrap)
797 {
798 	return (ahd_print_register(SCSISIGI_parse_table, 17, "SCSISIGI",
799 	    0x41, regvalue, cur_col, wrap));
800 }
801 
802 static ahd_reg_parse_entry_t SCSIPHASE_parse_table[] = {
803 	{ "DATA_OUT_PHASE",	0x01, 0x03 },
804 	{ "DATA_IN_PHASE",	0x02, 0x03 },
805 	{ "DATA_PHASE_MASK",	0x03, 0x03 },
806 	{ "MSG_OUT_PHASE",	0x04, 0x04 },
807 	{ "MSG_IN_PHASE",	0x08, 0x08 },
808 	{ "COMMAND_PHASE",	0x10, 0x10 },
809 	{ "STATUS_PHASE",	0x20, 0x20 }
810 };
811 
812 int
813 ahd_scsiphase_print(u_int regvalue, u_int *cur_col, u_int wrap)
814 {
815 	return (ahd_print_register(SCSIPHASE_parse_table, 7, "SCSIPHASE",
816 	    0x42, regvalue, cur_col, wrap));
817 }
818 
819 int
820 ahd_scsidat0_img_print(u_int regvalue, u_int *cur_col, u_int wrap)
821 {
822 	return (ahd_print_register(NULL, 0, "SCSIDAT0_IMG",
823 	    0x43, regvalue, cur_col, wrap));
824 }
825 
826 int
827 ahd_scsidat_print(u_int regvalue, u_int *cur_col, u_int wrap)
828 {
829 	return (ahd_print_register(NULL, 0, "SCSIDAT",
830 	    0x44, regvalue, cur_col, wrap));
831 }
832 
833 int
834 ahd_scsibus_print(u_int regvalue, u_int *cur_col, u_int wrap)
835 {
836 	return (ahd_print_register(NULL, 0, "SCSIBUS",
837 	    0x46, regvalue, cur_col, wrap));
838 }
839 
840 static ahd_reg_parse_entry_t TARGIDIN_parse_table[] = {
841 	{ "TARGID",		0x0f, 0x0f },
842 	{ "CLKOUT",		0x80, 0x80 }
843 };
844 
845 int
846 ahd_targidin_print(u_int regvalue, u_int *cur_col, u_int wrap)
847 {
848 	return (ahd_print_register(TARGIDIN_parse_table, 2, "TARGIDIN",
849 	    0x48, regvalue, cur_col, wrap));
850 }
851 
852 static ahd_reg_parse_entry_t SELID_parse_table[] = {
853 	{ "ONEBIT",		0x08, 0x08 },
854 	{ "SELID_MASK",		0xf0, 0xf0 }
855 };
856 
857 int
858 ahd_selid_print(u_int regvalue, u_int *cur_col, u_int wrap)
859 {
860 	return (ahd_print_register(SELID_parse_table, 2, "SELID",
861 	    0x49, regvalue, cur_col, wrap));
862 }
863 
864 static ahd_reg_parse_entry_t OPTIONMODE_parse_table[] = {
865 	{ "AUTO_MSGOUT_DE",	0x02, 0x02 },
866 	{ "ENDGFORMCHK",	0x04, 0x04 },
867 	{ "BUSFREEREV",		0x10, 0x10 },
868 	{ "BIASCANCTL",		0x20, 0x20 },
869 	{ "AUTOACKEN",		0x40, 0x40 },
870 	{ "BIOSCANCTL",		0x80, 0x80 },
871 	{ "OPTIONMODE_DEFAULTS",0x02, 0x02 }
872 };
873 
874 int
875 ahd_optionmode_print(u_int regvalue, u_int *cur_col, u_int wrap)
876 {
877 	return (ahd_print_register(OPTIONMODE_parse_table, 7, "OPTIONMODE",
878 	    0x4a, regvalue, cur_col, wrap));
879 }
880 
881 static ahd_reg_parse_entry_t SBLKCTL_parse_table[] = {
882 	{ "SELWIDE",		0x02, 0x02 },
883 	{ "ENAB20",		0x04, 0x04 },
884 	{ "ENAB40",		0x08, 0x08 },
885 	{ "DIAGLEDON",		0x40, 0x40 },
886 	{ "DIAGLEDEN",		0x80, 0x80 }
887 };
888 
889 int
890 ahd_sblkctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
891 {
892 	return (ahd_print_register(SBLKCTL_parse_table, 5, "SBLKCTL",
893 	    0x4a, regvalue, cur_col, wrap));
894 }
895 
896 static ahd_reg_parse_entry_t SIMODE0_parse_table[] = {
897 	{ "ENARBDO",		0x01, 0x01 },
898 	{ "ENSPIORDY",		0x02, 0x02 },
899 	{ "ENOVERRUN",		0x04, 0x04 },
900 	{ "ENIOERR",		0x08, 0x08 },
901 	{ "ENSELINGO",		0x10, 0x10 },
902 	{ "ENSELDI",		0x20, 0x20 },
903 	{ "ENSELDO",		0x40, 0x40 }
904 };
905 
906 int
907 ahd_simode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
908 {
909 	return (ahd_print_register(SIMODE0_parse_table, 7, "SIMODE0",
910 	    0x4b, regvalue, cur_col, wrap));
911 }
912 
913 static ahd_reg_parse_entry_t SSTAT0_parse_table[] = {
914 	{ "ARBDO",		0x01, 0x01 },
915 	{ "SPIORDY",		0x02, 0x02 },
916 	{ "OVERRUN",		0x04, 0x04 },
917 	{ "IOERR",		0x08, 0x08 },
918 	{ "SELINGO",		0x10, 0x10 },
919 	{ "SELDI",		0x20, 0x20 },
920 	{ "SELDO",		0x40, 0x40 },
921 	{ "TARGET",		0x80, 0x80 }
922 };
923 
924 int
925 ahd_sstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
926 {
927 	return (ahd_print_register(SSTAT0_parse_table, 8, "SSTAT0",
928 	    0x4b, regvalue, cur_col, wrap));
929 }
930 
931 static ahd_reg_parse_entry_t CLRSINT0_parse_table[] = {
932 	{ "CLRARBDO",		0x01, 0x01 },
933 	{ "CLRSPIORDY",		0x02, 0x02 },
934 	{ "CLROVERRUN",		0x04, 0x04 },
935 	{ "CLRIOERR",		0x08, 0x08 },
936 	{ "CLRSELINGO",		0x10, 0x10 },
937 	{ "CLRSELDI",		0x20, 0x20 },
938 	{ "CLRSELDO",		0x40, 0x40 }
939 };
940 
941 int
942 ahd_clrsint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
943 {
944 	return (ahd_print_register(CLRSINT0_parse_table, 7, "CLRSINT0",
945 	    0x4b, regvalue, cur_col, wrap));
946 }
947 
948 static ahd_reg_parse_entry_t SSTAT1_parse_table[] = {
949 	{ "REQINIT",		0x01, 0x01 },
950 	{ "STRB2FAST",		0x02, 0x02 },
951 	{ "SCSIPERR",		0x04, 0x04 },
952 	{ "BUSFREE",		0x08, 0x08 },
953 	{ "PHASEMIS",		0x10, 0x10 },
954 	{ "SCSIRSTI",		0x20, 0x20 },
955 	{ "ATNTARG",		0x40, 0x40 },
956 	{ "SELTO",		0x80, 0x80 }
957 };
958 
959 int
960 ahd_sstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
961 {
962 	return (ahd_print_register(SSTAT1_parse_table, 8, "SSTAT1",
963 	    0x4c, regvalue, cur_col, wrap));
964 }
965 
966 static ahd_reg_parse_entry_t CLRSINT1_parse_table[] = {
967 	{ "CLRREQINIT",		0x01, 0x01 },
968 	{ "CLRSTRB2FAST",	0x02, 0x02 },
969 	{ "CLRSCSIPERR",	0x04, 0x04 },
970 	{ "CLRBUSFREE",		0x08, 0x08 },
971 	{ "CLRSCSIRSTI",	0x20, 0x20 },
972 	{ "CLRATNO",		0x40, 0x40 },
973 	{ "CLRSELTIMEO",	0x80, 0x80 }
974 };
975 
976 int
977 ahd_clrsint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
978 {
979 	return (ahd_print_register(CLRSINT1_parse_table, 7, "CLRSINT1",
980 	    0x4c, regvalue, cur_col, wrap));
981 }
982 
983 static ahd_reg_parse_entry_t SSTAT2_parse_table[] = {
984 	{ "BUSFREE_LQO",	0x40, 0xc0 },
985 	{ "BUSFREE_DFF0",	0x80, 0xc0 },
986 	{ "BUSFREE_DFF1",	0xc0, 0xc0 },
987 	{ "DMADONE",		0x01, 0x01 },
988 	{ "SDONE",		0x02, 0x02 },
989 	{ "WIDE_RES",		0x04, 0x04 },
990 	{ "BSYX",		0x08, 0x08 },
991 	{ "EXP_ACTIVE",		0x10, 0x10 },
992 	{ "NONPACKREQ",		0x20, 0x20 },
993 	{ "BUSFREETIME",	0xc0, 0xc0 }
994 };
995 
996 int
997 ahd_sstat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
998 {
999 	return (ahd_print_register(SSTAT2_parse_table, 10, "SSTAT2",
1000 	    0x4d, regvalue, cur_col, wrap));
1001 }
1002 
1003 static ahd_reg_parse_entry_t CLRSINT2_parse_table[] = {
1004 	{ "CLRDMADONE",		0x01, 0x01 },
1005 	{ "CLRSDONE",		0x02, 0x02 },
1006 	{ "CLRWIDE_RES",	0x04, 0x04 },
1007 	{ "CLRNONPACKREQ",	0x20, 0x20 }
1008 };
1009 
1010 int
1011 ahd_clrsint2_print(u_int regvalue, u_int *cur_col, u_int wrap)
1012 {
1013 	return (ahd_print_register(CLRSINT2_parse_table, 4, "CLRSINT2",
1014 	    0x4d, regvalue, cur_col, wrap));
1015 }
1016 
1017 static ahd_reg_parse_entry_t SIMODE2_parse_table[] = {
1018 	{ "ENDMADONE",		0x01, 0x01 },
1019 	{ "ENSDONE",		0x02, 0x02 },
1020 	{ "ENWIDE_RES",		0x04, 0x04 }
1021 };
1022 
1023 int
1024 ahd_simode2_print(u_int regvalue, u_int *cur_col, u_int wrap)
1025 {
1026 	return (ahd_print_register(SIMODE2_parse_table, 3, "SIMODE2",
1027 	    0x4d, regvalue, cur_col, wrap));
1028 }
1029 
1030 static ahd_reg_parse_entry_t PERRDIAG_parse_table[] = {
1031 	{ "DTERR",		0x01, 0x01 },
1032 	{ "DGFORMERR",		0x02, 0x02 },
1033 	{ "CRCERR",		0x04, 0x04 },
1034 	{ "AIPERR",		0x08, 0x08 },
1035 	{ "PARITYERR",		0x10, 0x10 },
1036 	{ "PREVPHASE",		0x20, 0x20 },
1037 	{ "HIPERR",		0x40, 0x40 },
1038 	{ "HIZERO",		0x80, 0x80 }
1039 };
1040 
1041 int
1042 ahd_perrdiag_print(u_int regvalue, u_int *cur_col, u_int wrap)
1043 {
1044 	return (ahd_print_register(PERRDIAG_parse_table, 8, "PERRDIAG",
1045 	    0x4e, regvalue, cur_col, wrap));
1046 }
1047 
1048 int
1049 ahd_lqistate_print(u_int regvalue, u_int *cur_col, u_int wrap)
1050 {
1051 	return (ahd_print_register(NULL, 0, "LQISTATE",
1052 	    0x4e, regvalue, cur_col, wrap));
1053 }
1054 
1055 int
1056 ahd_soffcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1057 {
1058 	return (ahd_print_register(NULL, 0, "SOFFCNT",
1059 	    0x4f, regvalue, cur_col, wrap));
1060 }
1061 
1062 int
1063 ahd_lqostate_print(u_int regvalue, u_int *cur_col, u_int wrap)
1064 {
1065 	return (ahd_print_register(NULL, 0, "LQOSTATE",
1066 	    0x4f, regvalue, cur_col, wrap));
1067 }
1068 
1069 static ahd_reg_parse_entry_t LQISTAT0_parse_table[] = {
1070 	{ "LQIATNCMD",		0x01, 0x01 },
1071 	{ "LQIATNLQ",		0x02, 0x02 },
1072 	{ "LQIBADLQT",		0x04, 0x04 },
1073 	{ "LQICRCT2",		0x08, 0x08 },
1074 	{ "LQICRCT1",		0x10, 0x10 },
1075 	{ "LQIATNQAS",		0x20, 0x20 }
1076 };
1077 
1078 int
1079 ahd_lqistat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1080 {
1081 	return (ahd_print_register(LQISTAT0_parse_table, 6, "LQISTAT0",
1082 	    0x50, regvalue, cur_col, wrap));
1083 }
1084 
1085 static ahd_reg_parse_entry_t CLRLQIINT0_parse_table[] = {
1086 	{ "CLRLQIATNCMD",	0x01, 0x01 },
1087 	{ "CLRLQIATNLQ",	0x02, 0x02 },
1088 	{ "CLRLQIBADLQT",	0x04, 0x04 },
1089 	{ "CLRLQICRCT2",	0x08, 0x08 },
1090 	{ "CLRLQICRCT1",	0x10, 0x10 },
1091 	{ "CLRLQIATNQAS",	0x20, 0x20 }
1092 };
1093 
1094 int
1095 ahd_clrlqiint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1096 {
1097 	return (ahd_print_register(CLRLQIINT0_parse_table, 6, "CLRLQIINT0",
1098 	    0x50, regvalue, cur_col, wrap));
1099 }
1100 
1101 static ahd_reg_parse_entry_t LQIMODE0_parse_table[] = {
1102 	{ "ENLQIATNCMD",	0x01, 0x01 },
1103 	{ "ENLQIATNLQ",		0x02, 0x02 },
1104 	{ "ENLQIBADLQT",	0x04, 0x04 },
1105 	{ "ENLQICRCT2",		0x08, 0x08 },
1106 	{ "ENLQICRCT1",		0x10, 0x10 },
1107 	{ "ENLQIATNQASK",	0x20, 0x20 }
1108 };
1109 
1110 int
1111 ahd_lqimode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1112 {
1113 	return (ahd_print_register(LQIMODE0_parse_table, 6, "LQIMODE0",
1114 	    0x50, regvalue, cur_col, wrap));
1115 }
1116 
1117 static ahd_reg_parse_entry_t LQISTAT1_parse_table[] = {
1118 	{ "LQIOVERI_NLQ",	0x01, 0x01 },
1119 	{ "LQIOVERI_LQ",	0x02, 0x02 },
1120 	{ "LQIBADLQI",		0x04, 0x04 },
1121 	{ "LQICRCI_NLQ",	0x08, 0x08 },
1122 	{ "LQICRCI_LQ",		0x10, 0x10 },
1123 	{ "LQIABORT",		0x20, 0x20 },
1124 	{ "LQIPHASE_NLQ",	0x40, 0x40 },
1125 	{ "LQIPHASE_LQ",	0x80, 0x80 }
1126 };
1127 
1128 int
1129 ahd_lqistat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1130 {
1131 	return (ahd_print_register(LQISTAT1_parse_table, 8, "LQISTAT1",
1132 	    0x51, regvalue, cur_col, wrap));
1133 }
1134 
1135 static ahd_reg_parse_entry_t CLRLQIINT1_parse_table[] = {
1136 	{ "CLRLQIOVERI_NLQ",	0x01, 0x01 },
1137 	{ "CLRLQIOVERI_LQ",	0x02, 0x02 },
1138 	{ "CLRLQIBADLQI",	0x04, 0x04 },
1139 	{ "CLRLQICRCI_NLQ",	0x08, 0x08 },
1140 	{ "CLRLQICRCI_LQ",	0x10, 0x10 },
1141 	{ "CLRLIQABORT",	0x20, 0x20 },
1142 	{ "CLRLQIPHASE_NLQ",	0x40, 0x40 },
1143 	{ "CLRLQIPHASE_LQ",	0x80, 0x80 }
1144 };
1145 
1146 int
1147 ahd_clrlqiint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1148 {
1149 	return (ahd_print_register(CLRLQIINT1_parse_table, 8, "CLRLQIINT1",
1150 	    0x51, regvalue, cur_col, wrap));
1151 }
1152 
1153 static ahd_reg_parse_entry_t LQIMODE1_parse_table[] = {
1154 	{ "ENLQIOVERI_NLQ",	0x01, 0x01 },
1155 	{ "ENLQIOVERI_LQ",	0x02, 0x02 },
1156 	{ "ENLQIBADLQI",	0x04, 0x04 },
1157 	{ "ENLQICRCI_NLQ",	0x08, 0x08 },
1158 	{ "ENLQICRCI_LQ",	0x10, 0x10 },
1159 	{ "ENLIQABORT",		0x20, 0x20 },
1160 	{ "ENLQIPHASE_NLQ",	0x40, 0x40 },
1161 	{ "ENLQIPHASE_LQ",	0x80, 0x80 }
1162 };
1163 
1164 int
1165 ahd_lqimode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1166 {
1167 	return (ahd_print_register(LQIMODE1_parse_table, 8, "LQIMODE1",
1168 	    0x51, regvalue, cur_col, wrap));
1169 }
1170 
1171 static ahd_reg_parse_entry_t LQISTAT2_parse_table[] = {
1172 	{ "LQIGSAVAIL",		0x01, 0x01 },
1173 	{ "LQISTOPCMD",		0x02, 0x02 },
1174 	{ "LQISTOPLQ",		0x04, 0x04 },
1175 	{ "LQISTOPPKT",		0x08, 0x08 },
1176 	{ "LQIWAITFIFO",	0x10, 0x10 },
1177 	{ "LQIWORKONLQ",	0x20, 0x20 },
1178 	{ "LQIPHASE_OUTPKT",	0x40, 0x40 },
1179 	{ "PACKETIZED",		0x80, 0x80 }
1180 };
1181 
1182 int
1183 ahd_lqistat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
1184 {
1185 	return (ahd_print_register(LQISTAT2_parse_table, 8, "LQISTAT2",
1186 	    0x52, regvalue, cur_col, wrap));
1187 }
1188 
1189 static ahd_reg_parse_entry_t SSTAT3_parse_table[] = {
1190 	{ "OSRAMPERR",		0x01, 0x01 },
1191 	{ "NTRAMPERR",		0x02, 0x02 }
1192 };
1193 
1194 int
1195 ahd_sstat3_print(u_int regvalue, u_int *cur_col, u_int wrap)
1196 {
1197 	return (ahd_print_register(SSTAT3_parse_table, 2, "SSTAT3",
1198 	    0x53, regvalue, cur_col, wrap));
1199 }
1200 
1201 static ahd_reg_parse_entry_t CLRSINT3_parse_table[] = {
1202 	{ "CLROSRAMPERR",	0x01, 0x01 },
1203 	{ "CLRNTRAMPERR",	0x02, 0x02 }
1204 };
1205 
1206 int
1207 ahd_clrsint3_print(u_int regvalue, u_int *cur_col, u_int wrap)
1208 {
1209 	return (ahd_print_register(CLRSINT3_parse_table, 2, "CLRSINT3",
1210 	    0x53, regvalue, cur_col, wrap));
1211 }
1212 
1213 static ahd_reg_parse_entry_t SIMODE3_parse_table[] = {
1214 	{ "ENOSRAMPERR",	0x01, 0x01 },
1215 	{ "ENNTRAMPERR",	0x02, 0x02 }
1216 };
1217 
1218 int
1219 ahd_simode3_print(u_int regvalue, u_int *cur_col, u_int wrap)
1220 {
1221 	return (ahd_print_register(SIMODE3_parse_table, 2, "SIMODE3",
1222 	    0x53, regvalue, cur_col, wrap));
1223 }
1224 
1225 static ahd_reg_parse_entry_t LQOMODE0_parse_table[] = {
1226 	{ "ENLQOTCRC",		0x01, 0x01 },
1227 	{ "ENLQOATNPKT",	0x02, 0x02 },
1228 	{ "ENLQOATNLQ",		0x04, 0x04 },
1229 	{ "ENLQOSTOPT2",	0x08, 0x08 },
1230 	{ "ENLQOTARGSCBPERR",	0x10, 0x10 }
1231 };
1232 
1233 int
1234 ahd_lqomode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1235 {
1236 	return (ahd_print_register(LQOMODE0_parse_table, 5, "LQOMODE0",
1237 	    0x54, regvalue, cur_col, wrap));
1238 }
1239 
1240 static ahd_reg_parse_entry_t LQOSTAT0_parse_table[] = {
1241 	{ "LQOTCRC",		0x01, 0x01 },
1242 	{ "LQOATNPKT",		0x02, 0x02 },
1243 	{ "LQOATNLQ",		0x04, 0x04 },
1244 	{ "LQOSTOPT2",		0x08, 0x08 },
1245 	{ "LQOTARGSCBPERR",	0x10, 0x10 }
1246 };
1247 
1248 int
1249 ahd_lqostat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1250 {
1251 	return (ahd_print_register(LQOSTAT0_parse_table, 5, "LQOSTAT0",
1252 	    0x54, regvalue, cur_col, wrap));
1253 }
1254 
1255 static ahd_reg_parse_entry_t CLRLQOINT0_parse_table[] = {
1256 	{ "CLRLQOTCRC",		0x01, 0x01 },
1257 	{ "CLRLQOATNPKT",	0x02, 0x02 },
1258 	{ "CLRLQOATNLQ",	0x04, 0x04 },
1259 	{ "CLRLQOSTOPT2",	0x08, 0x08 },
1260 	{ "CLRLQOTARGSCBPERR",	0x10, 0x10 }
1261 };
1262 
1263 int
1264 ahd_clrlqoint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1265 {
1266 	return (ahd_print_register(CLRLQOINT0_parse_table, 5, "CLRLQOINT0",
1267 	    0x54, regvalue, cur_col, wrap));
1268 }
1269 
1270 static ahd_reg_parse_entry_t LQOMODE1_parse_table[] = {
1271 	{ "ENLQOPHACHGINPKT",	0x01, 0x01 },
1272 	{ "ENLQOBUSFREE",	0x02, 0x02 },
1273 	{ "ENLQOBADQAS",	0x04, 0x04 },
1274 	{ "ENLQOSTOPI2",	0x08, 0x08 },
1275 	{ "ENLQOINITSCBPERR",	0x10, 0x10 }
1276 };
1277 
1278 int
1279 ahd_lqomode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1280 {
1281 	return (ahd_print_register(LQOMODE1_parse_table, 5, "LQOMODE1",
1282 	    0x55, regvalue, cur_col, wrap));
1283 }
1284 
1285 static ahd_reg_parse_entry_t LQOSTAT1_parse_table[] = {
1286 	{ "LQOPHACHGINPKT",	0x01, 0x01 },
1287 	{ "LQOBUSFREE",		0x02, 0x02 },
1288 	{ "LQOBADQAS",		0x04, 0x04 },
1289 	{ "LQOSTOPI2",		0x08, 0x08 },
1290 	{ "LQOINITSCBPERR",	0x10, 0x10 }
1291 };
1292 
1293 int
1294 ahd_lqostat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1295 {
1296 	return (ahd_print_register(LQOSTAT1_parse_table, 5, "LQOSTAT1",
1297 	    0x55, regvalue, cur_col, wrap));
1298 }
1299 
1300 static ahd_reg_parse_entry_t CLRLQOINT1_parse_table[] = {
1301 	{ "CLRLQOPHACHGINPKT",	0x01, 0x01 },
1302 	{ "CLRLQOBUSFREE",	0x02, 0x02 },
1303 	{ "CLRLQOBADQAS",	0x04, 0x04 },
1304 	{ "CLRLQOSTOPI2",	0x08, 0x08 },
1305 	{ "CLRLQOINITSCBPERR",	0x10, 0x10 }
1306 };
1307 
1308 int
1309 ahd_clrlqoint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1310 {
1311 	return (ahd_print_register(CLRLQOINT1_parse_table, 5, "CLRLQOINT1",
1312 	    0x55, regvalue, cur_col, wrap));
1313 }
1314 
1315 int
1316 ahd_os_space_cnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1317 {
1318 	return (ahd_print_register(NULL, 0, "OS_SPACE_CNT",
1319 	    0x56, regvalue, cur_col, wrap));
1320 }
1321 
1322 static ahd_reg_parse_entry_t LQOSTAT2_parse_table[] = {
1323 	{ "LQOSTOP0",		0x01, 0x01 },
1324 	{ "LQOPHACHGOUTPKT",	0x02, 0x02 },
1325 	{ "LQOWAITFIFO",	0x10, 0x10 },
1326 	{ "LQOPKT",		0xe0, 0xe0 }
1327 };
1328 
1329 int
1330 ahd_lqostat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
1331 {
1332 	return (ahd_print_register(LQOSTAT2_parse_table, 4, "LQOSTAT2",
1333 	    0x56, regvalue, cur_col, wrap));
1334 }
1335 
1336 static ahd_reg_parse_entry_t SIMODE1_parse_table[] = {
1337 	{ "ENREQINIT",		0x01, 0x01 },
1338 	{ "ENSTRB2FAST",	0x02, 0x02 },
1339 	{ "ENSCSIPERR",		0x04, 0x04 },
1340 	{ "ENBUSFREE",		0x08, 0x08 },
1341 	{ "ENPHASEMIS",		0x10, 0x10 },
1342 	{ "ENSCSIRST",		0x20, 0x20 },
1343 	{ "ENATNTARG",		0x40, 0x40 },
1344 	{ "ENSELTIMO",		0x80, 0x80 }
1345 };
1346 
1347 int
1348 ahd_simode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1349 {
1350 	return (ahd_print_register(SIMODE1_parse_table, 8, "SIMODE1",
1351 	    0x57, regvalue, cur_col, wrap));
1352 }
1353 
1354 int
1355 ahd_gsfifo_print(u_int regvalue, u_int *cur_col, u_int wrap)
1356 {
1357 	return (ahd_print_register(NULL, 0, "GSFIFO",
1358 	    0x58, regvalue, cur_col, wrap));
1359 }
1360 
1361 static ahd_reg_parse_entry_t DFFSXFRCTL_parse_table[] = {
1362 	{ "RSTCHN",		0x01, 0x01 },
1363 	{ "CLRCHN",		0x02, 0x02 },
1364 	{ "CLRSHCNT",		0x04, 0x04 },
1365 	{ "DFFBITBUCKET",	0x08, 0x08 }
1366 };
1367 
1368 int
1369 ahd_dffsxfrctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1370 {
1371 	return (ahd_print_register(DFFSXFRCTL_parse_table, 4, "DFFSXFRCTL",
1372 	    0x5a, regvalue, cur_col, wrap));
1373 }
1374 
1375 int
1376 ahd_nextscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
1377 {
1378 	return (ahd_print_register(NULL, 0, "NEXTSCB",
1379 	    0x5a, regvalue, cur_col, wrap));
1380 }
1381 
1382 static ahd_reg_parse_entry_t LQOSCSCTL_parse_table[] = {
1383 	{ "LQONOCHKOVER",	0x01, 0x01 },
1384 	{ "LQOH2A_VERSION",	0x80, 0x80 }
1385 };
1386 
1387 int
1388 ahd_lqoscsctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1389 {
1390 	return (ahd_print_register(LQOSCSCTL_parse_table, 2, "LQOSCSCTL",
1391 	    0x5a, regvalue, cur_col, wrap));
1392 }
1393 
1394 static ahd_reg_parse_entry_t SEQINTSRC_parse_table[] = {
1395 	{ "CFG4TCMD",		0x01, 0x01 },
1396 	{ "CFG4ICMD",		0x02, 0x02 },
1397 	{ "CFG4TSTAT",		0x04, 0x04 },
1398 	{ "CFG4ISTAT",		0x08, 0x08 },
1399 	{ "CFG4DATA",		0x10, 0x10 },
1400 	{ "SAVEPTRS",		0x20, 0x20 },
1401 	{ "CTXTDONE",		0x40, 0x40 }
1402 };
1403 
1404 int
1405 ahd_seqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)
1406 {
1407 	return (ahd_print_register(SEQINTSRC_parse_table, 7, "SEQINTSRC",
1408 	    0x5b, regvalue, cur_col, wrap));
1409 }
1410 
1411 static ahd_reg_parse_entry_t CLRSEQINTSRC_parse_table[] = {
1412 	{ "CLRCFG4TCMD",	0x01, 0x01 },
1413 	{ "CLRCFG4ICMD",	0x02, 0x02 },
1414 	{ "CLRCFG4TSTAT",	0x04, 0x04 },
1415 	{ "CLRCFG4ISTAT",	0x08, 0x08 },
1416 	{ "CLRCFG4DATA",	0x10, 0x10 },
1417 	{ "CLRSAVEPTRS",	0x20, 0x20 },
1418 	{ "CLRCTXTDONE",	0x40, 0x40 }
1419 };
1420 
1421 int
1422 ahd_clrseqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)
1423 {
1424 	return (ahd_print_register(CLRSEQINTSRC_parse_table, 7, "CLRSEQINTSRC",
1425 	    0x5b, regvalue, cur_col, wrap));
1426 }
1427 
1428 int
1429 ahd_currscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
1430 {
1431 	return (ahd_print_register(NULL, 0, "CURRSCB",
1432 	    0x5c, regvalue, cur_col, wrap));
1433 }
1434 
1435 static ahd_reg_parse_entry_t SEQIMODE_parse_table[] = {
1436 	{ "ENCFG4TCMD",		0x01, 0x01 },
1437 	{ "ENCFG4ICMD",		0x02, 0x02 },
1438 	{ "ENCFG4TSTAT",	0x04, 0x04 },
1439 	{ "ENCFG4ISTAT",	0x08, 0x08 },
1440 	{ "ENCFG4DATA",		0x10, 0x10 },
1441 	{ "ENSAVEPTRS",		0x20, 0x20 },
1442 	{ "ENCTXTDONE",		0x40, 0x40 }
1443 };
1444 
1445 int
1446 ahd_seqimode_print(u_int regvalue, u_int *cur_col, u_int wrap)
1447 {
1448 	return (ahd_print_register(SEQIMODE_parse_table, 7, "SEQIMODE",
1449 	    0x5c, regvalue, cur_col, wrap));
1450 }
1451 
1452 static ahd_reg_parse_entry_t MDFFSTAT_parse_table[] = {
1453 	{ "FIFOFREE",		0x01, 0x01 },
1454 	{ "DATAINFIFO",		0x02, 0x02 },
1455 	{ "DLZERO",		0x04, 0x04 },
1456 	{ "SHVALID",		0x08, 0x08 },
1457 	{ "LASTSDONE",		0x10, 0x10 },
1458 	{ "SHCNTMINUS1",	0x20, 0x20 },
1459 	{ "SHCNTNEGATIVE",	0x40, 0x40 }
1460 };
1461 
1462 int
1463 ahd_mdffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1464 {
1465 	return (ahd_print_register(MDFFSTAT_parse_table, 7, "MDFFSTAT",
1466 	    0x5d, regvalue, cur_col, wrap));
1467 }
1468 
1469 static ahd_reg_parse_entry_t CRCCONTROL_parse_table[] = {
1470 	{ "CRCVALCHKEN",	0x40, 0x40 }
1471 };
1472 
1473 int
1474 ahd_crccontrol_print(u_int regvalue, u_int *cur_col, u_int wrap)
1475 {
1476 	return (ahd_print_register(CRCCONTROL_parse_table, 1, "CRCCONTROL",
1477 	    0x5d, regvalue, cur_col, wrap));
1478 }
1479 
1480 static ahd_reg_parse_entry_t SCSITEST_parse_table[] = {
1481 	{ "SEL_TXPLL_DEBUG",	0x04, 0x04 },
1482 	{ "CNTRTEST",		0x08, 0x08 }
1483 };
1484 
1485 int
1486 ahd_scsitest_print(u_int regvalue, u_int *cur_col, u_int wrap)
1487 {
1488 	return (ahd_print_register(SCSITEST_parse_table, 2, "SCSITEST",
1489 	    0x5e, regvalue, cur_col, wrap));
1490 }
1491 
1492 int
1493 ahd_dfftag_print(u_int regvalue, u_int *cur_col, u_int wrap)
1494 {
1495 	return (ahd_print_register(NULL, 0, "DFFTAG",
1496 	    0x5e, regvalue, cur_col, wrap));
1497 }
1498 
1499 int
1500 ahd_lastscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
1501 {
1502 	return (ahd_print_register(NULL, 0, "LASTSCB",
1503 	    0x5e, regvalue, cur_col, wrap));
1504 }
1505 
1506 static ahd_reg_parse_entry_t IOPDNCTL_parse_table[] = {
1507 	{ "PDN_DIFFSENSE",	0x01, 0x01 },
1508 	{ "PDN_IDIST",		0x04, 0x04 },
1509 	{ "DISABLE_OE",		0x80, 0x80 }
1510 };
1511 
1512 int
1513 ahd_iopdnctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1514 {
1515 	return (ahd_print_register(IOPDNCTL_parse_table, 3, "IOPDNCTL",
1516 	    0x5f, regvalue, cur_col, wrap));
1517 }
1518 
1519 int
1520 ahd_negoaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1521 {
1522 	return (ahd_print_register(NULL, 0, "NEGOADDR",
1523 	    0x60, regvalue, cur_col, wrap));
1524 }
1525 
1526 int
1527 ahd_shaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1528 {
1529 	return (ahd_print_register(NULL, 0, "SHADDR",
1530 	    0x60, regvalue, cur_col, wrap));
1531 }
1532 
1533 int
1534 ahd_dgrpcrci_print(u_int regvalue, u_int *cur_col, u_int wrap)
1535 {
1536 	return (ahd_print_register(NULL, 0, "DGRPCRCI",
1537 	    0x60, regvalue, cur_col, wrap));
1538 }
1539 
1540 int
1541 ahd_negperiod_print(u_int regvalue, u_int *cur_col, u_int wrap)
1542 {
1543 	return (ahd_print_register(NULL, 0, "NEGPERIOD",
1544 	    0x61, regvalue, cur_col, wrap));
1545 }
1546 
1547 int
1548 ahd_packcrci_print(u_int regvalue, u_int *cur_col, u_int wrap)
1549 {
1550 	return (ahd_print_register(NULL, 0, "PACKCRCI",
1551 	    0x62, regvalue, cur_col, wrap));
1552 }
1553 
1554 int
1555 ahd_negoffset_print(u_int regvalue, u_int *cur_col, u_int wrap)
1556 {
1557 	return (ahd_print_register(NULL, 0, "NEGOFFSET",
1558 	    0x62, regvalue, cur_col, wrap));
1559 }
1560 
1561 static ahd_reg_parse_entry_t NEGPPROPTS_parse_table[] = {
1562 	{ "PPROPT_IUT",		0x01, 0x01 },
1563 	{ "PPROPT_DT",		0x02, 0x02 },
1564 	{ "PPROPT_QAS",		0x04, 0x04 },
1565 	{ "PPROPT_PACE",	0x08, 0x08 }
1566 };
1567 
1568 int
1569 ahd_negppropts_print(u_int regvalue, u_int *cur_col, u_int wrap)
1570 {
1571 	return (ahd_print_register(NEGPPROPTS_parse_table, 4, "NEGPPROPTS",
1572 	    0x63, regvalue, cur_col, wrap));
1573 }
1574 
1575 static ahd_reg_parse_entry_t NEGCONOPTS_parse_table[] = {
1576 	{ "WIDEXFER",		0x01, 0x01 },
1577 	{ "ENAUTOATNO",		0x02, 0x02 },
1578 	{ "ENAUTOATNI",		0x04, 0x04 },
1579 	{ "ENSLOWCRC",		0x08, 0x08 },
1580 	{ "RTI_OVRDTRN",	0x10, 0x10 },
1581 	{ "RTI_WRTDIS",		0x20, 0x20 },
1582 	{ "ENSNAPSHOT",		0x40, 0x40 }
1583 };
1584 
1585 int
1586 ahd_negconopts_print(u_int regvalue, u_int *cur_col, u_int wrap)
1587 {
1588 	return (ahd_print_register(NEGCONOPTS_parse_table, 7, "NEGCONOPTS",
1589 	    0x64, regvalue, cur_col, wrap));
1590 }
1591 
1592 int
1593 ahd_annexcol_print(u_int regvalue, u_int *cur_col, u_int wrap)
1594 {
1595 	return (ahd_print_register(NULL, 0, "ANNEXCOL",
1596 	    0x65, regvalue, cur_col, wrap));
1597 }
1598 
1599 int
1600 ahd_annexdat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1601 {
1602 	return (ahd_print_register(NULL, 0, "ANNEXDAT",
1603 	    0x66, regvalue, cur_col, wrap));
1604 }
1605 
1606 static ahd_reg_parse_entry_t SCSCHKN_parse_table[] = {
1607 	{ "LSTSGCLRDIS",	0x01, 0x01 },
1608 	{ "SHVALIDSTDIS",	0x02, 0x02 },
1609 	{ "DFFACTCLR",		0x04, 0x04 },
1610 	{ "SDONEMSKDIS",	0x08, 0x08 },
1611 	{ "WIDERESEN",		0x10, 0x10 },
1612 	{ "CURRFIFODEF",	0x20, 0x20 },
1613 	{ "STSELSKIDDIS",	0x40, 0x40 }
1614 };
1615 
1616 int
1617 ahd_scschkn_print(u_int regvalue, u_int *cur_col, u_int wrap)
1618 {
1619 	return (ahd_print_register(SCSCHKN_parse_table, 7, "SCSCHKN",
1620 	    0x66, regvalue, cur_col, wrap));
1621 }
1622 
1623 int
1624 ahd_iownid_print(u_int regvalue, u_int *cur_col, u_int wrap)
1625 {
1626 	return (ahd_print_register(NULL, 0, "IOWNID",
1627 	    0x67, regvalue, cur_col, wrap));
1628 }
1629 
1630 int
1631 ahd_shcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1632 {
1633 	return (ahd_print_register(NULL, 0, "SHCNT",
1634 	    0x68, regvalue, cur_col, wrap));
1635 }
1636 
1637 static ahd_reg_parse_entry_t PLL960CTL0_parse_table[] = {
1638 	{ "PLL_ENFBM",		0x01, 0x01 },
1639 	{ "PLL_DLPF",		0x02, 0x02 },
1640 	{ "PLL_ENLPF",		0x04, 0x04 },
1641 	{ "PLL_ENLUD",		0x08, 0x08 },
1642 	{ "PLL_NS",		0x30, 0x30 },
1643 	{ "PLL_PWDN",		0x40, 0x40 },
1644 	{ "PLL_VCOSEL",		0x80, 0x80 }
1645 };
1646 
1647 int
1648 ahd_pll960ctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1649 {
1650 	return (ahd_print_register(PLL960CTL0_parse_table, 7, "PLL960CTL0",
1651 	    0x68, regvalue, cur_col, wrap));
1652 }
1653 
1654 static ahd_reg_parse_entry_t PLL960CTL1_parse_table[] = {
1655 	{ "PLL_RST",		0x01, 0x01 },
1656 	{ "PLL_CNTCLR",		0x40, 0x40 },
1657 	{ "PLL_CNTEN",		0x80, 0x80 }
1658 };
1659 
1660 int
1661 ahd_pll960ctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1662 {
1663 	return (ahd_print_register(PLL960CTL1_parse_table, 3, "PLL960CTL1",
1664 	    0x69, regvalue, cur_col, wrap));
1665 }
1666 
1667 int
1668 ahd_townid_print(u_int regvalue, u_int *cur_col, u_int wrap)
1669 {
1670 	return (ahd_print_register(NULL, 0, "TOWNID",
1671 	    0x69, regvalue, cur_col, wrap));
1672 }
1673 
1674 int
1675 ahd_xsig_print(u_int regvalue, u_int *cur_col, u_int wrap)
1676 {
1677 	return (ahd_print_register(NULL, 0, "XSIG",
1678 	    0x6a, regvalue, cur_col, wrap));
1679 }
1680 
1681 int
1682 ahd_pll960cnt0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1683 {
1684 	return (ahd_print_register(NULL, 0, "PLL960CNT0",
1685 	    0x6a, regvalue, cur_col, wrap));
1686 }
1687 
1688 int
1689 ahd_seloid_print(u_int regvalue, u_int *cur_col, u_int wrap)
1690 {
1691 	return (ahd_print_register(NULL, 0, "SELOID",
1692 	    0x6b, regvalue, cur_col, wrap));
1693 }
1694 
1695 int
1696 ahd_fairness_print(u_int regvalue, u_int *cur_col, u_int wrap)
1697 {
1698 	return (ahd_print_register(NULL, 0, "FAIRNESS",
1699 	    0x6c, regvalue, cur_col, wrap));
1700 }
1701 
1702 static ahd_reg_parse_entry_t PLL400CTL0_parse_table[] = {
1703 	{ "PLL_ENFBM",		0x01, 0x01 },
1704 	{ "PLL_DLPF",		0x02, 0x02 },
1705 	{ "PLL_ENLPF",		0x04, 0x04 },
1706 	{ "PLL_ENLUD",		0x08, 0x08 },
1707 	{ "PLL_NS",		0x30, 0x30 },
1708 	{ "PLL_PWDN",		0x40, 0x40 },
1709 	{ "PLL_VCOSEL",		0x80, 0x80 }
1710 };
1711 
1712 int
1713 ahd_pll400ctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1714 {
1715 	return (ahd_print_register(PLL400CTL0_parse_table, 7, "PLL400CTL0",
1716 	    0x6c, regvalue, cur_col, wrap));
1717 }
1718 
1719 static ahd_reg_parse_entry_t PLL400CTL1_parse_table[] = {
1720 	{ "PLL_RST",		0x01, 0x01 },
1721 	{ "PLL_CNTCLR",		0x40, 0x40 },
1722 	{ "PLL_CNTEN",		0x80, 0x80 }
1723 };
1724 
1725 int
1726 ahd_pll400ctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1727 {
1728 	return (ahd_print_register(PLL400CTL1_parse_table, 3, "PLL400CTL1",
1729 	    0x6d, regvalue, cur_col, wrap));
1730 }
1731 
1732 int
1733 ahd_pll400cnt0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1734 {
1735 	return (ahd_print_register(NULL, 0, "PLL400CNT0",
1736 	    0x6e, regvalue, cur_col, wrap));
1737 }
1738 
1739 int
1740 ahd_unfairness_print(u_int regvalue, u_int *cur_col, u_int wrap)
1741 {
1742 	return (ahd_print_register(NULL, 0, "UNFAIRNESS",
1743 	    0x6e, regvalue, cur_col, wrap));
1744 }
1745 
1746 int
1747 ahd_hodmaadr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1748 {
1749 	return (ahd_print_register(NULL, 0, "HODMAADR",
1750 	    0x70, regvalue, cur_col, wrap));
1751 }
1752 
1753 int
1754 ahd_haddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1755 {
1756 	return (ahd_print_register(NULL, 0, "HADDR",
1757 	    0x70, regvalue, cur_col, wrap));
1758 }
1759 
1760 static ahd_reg_parse_entry_t PLLDELAY_parse_table[] = {
1761 	{ "SPLIT_DROP_REQ",	0x80, 0x80 }
1762 };
1763 
1764 int
1765 ahd_plldelay_print(u_int regvalue, u_int *cur_col, u_int wrap)
1766 {
1767 	return (ahd_print_register(PLLDELAY_parse_table, 1, "PLLDELAY",
1768 	    0x70, regvalue, cur_col, wrap));
1769 }
1770 
1771 int
1772 ahd_hcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1773 {
1774 	return (ahd_print_register(NULL, 0, "HCNT",
1775 	    0x78, regvalue, cur_col, wrap));
1776 }
1777 
1778 int
1779 ahd_hodmacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1780 {
1781 	return (ahd_print_register(NULL, 0, "HODMACNT",
1782 	    0x78, regvalue, cur_col, wrap));
1783 }
1784 
1785 int
1786 ahd_hodmaen_print(u_int regvalue, u_int *cur_col, u_int wrap)
1787 {
1788 	return (ahd_print_register(NULL, 0, "HODMAEN",
1789 	    0x7a, regvalue, cur_col, wrap));
1790 }
1791 
1792 int
1793 ahd_scbhaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1794 {
1795 	return (ahd_print_register(NULL, 0, "SCBHADDR",
1796 	    0x7c, regvalue, cur_col, wrap));
1797 }
1798 
1799 int
1800 ahd_sghaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1801 {
1802 	return (ahd_print_register(NULL, 0, "SGHADDR",
1803 	    0x7c, regvalue, cur_col, wrap));
1804 }
1805 
1806 int
1807 ahd_scbhcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1808 {
1809 	return (ahd_print_register(NULL, 0, "SCBHCNT",
1810 	    0x84, regvalue, cur_col, wrap));
1811 }
1812 
1813 int
1814 ahd_sghcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1815 {
1816 	return (ahd_print_register(NULL, 0, "SGHCNT",
1817 	    0x84, regvalue, cur_col, wrap));
1818 }
1819 
1820 static ahd_reg_parse_entry_t DFF_THRSH_parse_table[] = {
1821 	{ "WR_DFTHRSH_MIN",	0x00, 0x70 },
1822 	{ "RD_DFTHRSH_MIN",	0x00, 0x07 },
1823 	{ "RD_DFTHRSH_25",	0x01, 0x07 },
1824 	{ "RD_DFTHRSH_50",	0x02, 0x07 },
1825 	{ "RD_DFTHRSH_63",	0x03, 0x07 },
1826 	{ "RD_DFTHRSH_75",	0x04, 0x07 },
1827 	{ "RD_DFTHRSH_85",	0x05, 0x07 },
1828 	{ "RD_DFTHRSH_90",	0x06, 0x07 },
1829 	{ "RD_DFTHRSH_MAX",	0x07, 0x07 },
1830 	{ "WR_DFTHRSH_25",	0x10, 0x70 },
1831 	{ "WR_DFTHRSH_50",	0x20, 0x70 },
1832 	{ "WR_DFTHRSH_63",	0x30, 0x70 },
1833 	{ "WR_DFTHRSH_75",	0x40, 0x70 },
1834 	{ "WR_DFTHRSH_85",	0x50, 0x70 },
1835 	{ "WR_DFTHRSH_90",	0x60, 0x70 },
1836 	{ "WR_DFTHRSH_MAX",	0x70, 0x70 },
1837 	{ "RD_DFTHRSH",		0x07, 0x07 },
1838 	{ "WR_DFTHRSH",		0x70, 0x70 }
1839 };
1840 
1841 int
1842 ahd_dff_thrsh_print(u_int regvalue, u_int *cur_col, u_int wrap)
1843 {
1844 	return (ahd_print_register(DFF_THRSH_parse_table, 18, "DFF_THRSH",
1845 	    0x88, regvalue, cur_col, wrap));
1846 }
1847 
1848 int
1849 ahd_romaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1850 {
1851 	return (ahd_print_register(NULL, 0, "ROMADDR",
1852 	    0x8a, regvalue, cur_col, wrap));
1853 }
1854 
1855 static ahd_reg_parse_entry_t ROMCNTRL_parse_table[] = {
1856 	{ "RDY",		0x01, 0x01 },
1857 	{ "REPEAT",		0x02, 0x02 },
1858 	{ "ROMSPD",		0x18, 0x18 },
1859 	{ "ROMOP",		0xe0, 0xe0 }
1860 };
1861 
1862 int
1863 ahd_romcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1864 {
1865 	return (ahd_print_register(ROMCNTRL_parse_table, 4, "ROMCNTRL",
1866 	    0x8d, regvalue, cur_col, wrap));
1867 }
1868 
1869 int
1870 ahd_romdata_print(u_int regvalue, u_int *cur_col, u_int wrap)
1871 {
1872 	return (ahd_print_register(NULL, 0, "ROMDATA",
1873 	    0x8e, regvalue, cur_col, wrap));
1874 }
1875 
1876 static ahd_reg_parse_entry_t DCHRXMSG0_parse_table[] = {
1877 	{ "CFNUM",		0x07, 0x07 },
1878 	{ "CDNUM",		0xf8, 0xf8 }
1879 };
1880 
1881 int
1882 ahd_dchrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1883 {
1884 	return (ahd_print_register(DCHRXMSG0_parse_table, 2, "DCHRXMSG0",
1885 	    0x90, regvalue, cur_col, wrap));
1886 }
1887 
1888 static ahd_reg_parse_entry_t OVLYRXMSG0_parse_table[] = {
1889 	{ "CFNUM",		0x07, 0x07 },
1890 	{ "CDNUM",		0xf8, 0xf8 }
1891 };
1892 
1893 int
1894 ahd_ovlyrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1895 {
1896 	return (ahd_print_register(OVLYRXMSG0_parse_table, 2, "OVLYRXMSG0",
1897 	    0x90, regvalue, cur_col, wrap));
1898 }
1899 
1900 static ahd_reg_parse_entry_t CMCRXMSG0_parse_table[] = {
1901 	{ "CFNUM",		0x07, 0x07 },
1902 	{ "CDNUM",		0xf8, 0xf8 }
1903 };
1904 
1905 int
1906 ahd_cmcrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1907 {
1908 	return (ahd_print_register(CMCRXMSG0_parse_table, 2, "CMCRXMSG0",
1909 	    0x90, regvalue, cur_col, wrap));
1910 }
1911 
1912 static ahd_reg_parse_entry_t ROENABLE_parse_table[] = {
1913 	{ "DCH0ROEN",		0x01, 0x01 },
1914 	{ "DCH1ROEN",		0x02, 0x02 },
1915 	{ "SGROEN",		0x04, 0x04 },
1916 	{ "CMCROEN",		0x08, 0x08 },
1917 	{ "OVLYROEN",		0x10, 0x10 },
1918 	{ "MSIROEN",		0x20, 0x20 }
1919 };
1920 
1921 int
1922 ahd_roenable_print(u_int regvalue, u_int *cur_col, u_int wrap)
1923 {
1924 	return (ahd_print_register(ROENABLE_parse_table, 6, "ROENABLE",
1925 	    0x90, regvalue, cur_col, wrap));
1926 }
1927 
1928 static ahd_reg_parse_entry_t DCHRXMSG1_parse_table[] = {
1929 	{ "CBNUM",		0xff, 0xff }
1930 };
1931 
1932 int
1933 ahd_dchrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1934 {
1935 	return (ahd_print_register(DCHRXMSG1_parse_table, 1, "DCHRXMSG1",
1936 	    0x91, regvalue, cur_col, wrap));
1937 }
1938 
1939 static ahd_reg_parse_entry_t OVLYRXMSG1_parse_table[] = {
1940 	{ "CBNUM",		0xff, 0xff }
1941 };
1942 
1943 int
1944 ahd_ovlyrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1945 {
1946 	return (ahd_print_register(OVLYRXMSG1_parse_table, 1, "OVLYRXMSG1",
1947 	    0x91, regvalue, cur_col, wrap));
1948 }
1949 
1950 static ahd_reg_parse_entry_t CMCRXMSG1_parse_table[] = {
1951 	{ "CBNUM",		0xff, 0xff }
1952 };
1953 
1954 int
1955 ahd_cmcrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1956 {
1957 	return (ahd_print_register(CMCRXMSG1_parse_table, 1, "CMCRXMSG1",
1958 	    0x91, regvalue, cur_col, wrap));
1959 }
1960 
1961 static ahd_reg_parse_entry_t NSENABLE_parse_table[] = {
1962 	{ "DCH0NSEN",		0x01, 0x01 },
1963 	{ "DCH1NSEN",		0x02, 0x02 },
1964 	{ "SGNSEN",		0x04, 0x04 },
1965 	{ "CMCNSEN",		0x08, 0x08 },
1966 	{ "OVLYNSEN",		0x10, 0x10 },
1967 	{ "MSINSEN",		0x20, 0x20 }
1968 };
1969 
1970 int
1971 ahd_nsenable_print(u_int regvalue, u_int *cur_col, u_int wrap)
1972 {
1973 	return (ahd_print_register(NSENABLE_parse_table, 6, "NSENABLE",
1974 	    0x91, regvalue, cur_col, wrap));
1975 }
1976 
1977 static ahd_reg_parse_entry_t DCHRXMSG2_parse_table[] = {
1978 	{ "MINDEX",		0xff, 0xff }
1979 };
1980 
1981 int
1982 ahd_dchrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
1983 {
1984 	return (ahd_print_register(DCHRXMSG2_parse_table, 1, "DCHRXMSG2",
1985 	    0x92, regvalue, cur_col, wrap));
1986 }
1987 
1988 static ahd_reg_parse_entry_t OVLYRXMSG2_parse_table[] = {
1989 	{ "MINDEX",		0xff, 0xff }
1990 };
1991 
1992 int
1993 ahd_ovlyrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
1994 {
1995 	return (ahd_print_register(OVLYRXMSG2_parse_table, 1, "OVLYRXMSG2",
1996 	    0x92, regvalue, cur_col, wrap));
1997 }
1998 
1999 static ahd_reg_parse_entry_t CMCRXMSG2_parse_table[] = {
2000 	{ "MINDEX",		0xff, 0xff }
2001 };
2002 
2003 int
2004 ahd_cmcrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
2005 {
2006 	return (ahd_print_register(CMCRXMSG2_parse_table, 1, "CMCRXMSG2",
2007 	    0x92, regvalue, cur_col, wrap));
2008 }
2009 
2010 int
2011 ahd_ost_print(u_int regvalue, u_int *cur_col, u_int wrap)
2012 {
2013 	return (ahd_print_register(NULL, 0, "OST",
2014 	    0x92, regvalue, cur_col, wrap));
2015 }
2016 
2017 static ahd_reg_parse_entry_t DCHRXMSG3_parse_table[] = {
2018 	{ "MCLASS",		0x0f, 0x0f }
2019 };
2020 
2021 int
2022 ahd_dchrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
2023 {
2024 	return (ahd_print_register(DCHRXMSG3_parse_table, 1, "DCHRXMSG3",
2025 	    0x93, regvalue, cur_col, wrap));
2026 }
2027 
2028 static ahd_reg_parse_entry_t OVLYRXMSG3_parse_table[] = {
2029 	{ "MCLASS",		0x0f, 0x0f }
2030 };
2031 
2032 int
2033 ahd_ovlyrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
2034 {
2035 	return (ahd_print_register(OVLYRXMSG3_parse_table, 1, "OVLYRXMSG3",
2036 	    0x93, regvalue, cur_col, wrap));
2037 }
2038 
2039 static ahd_reg_parse_entry_t CMCRXMSG3_parse_table[] = {
2040 	{ "MCLASS",		0x0f, 0x0f }
2041 };
2042 
2043 int
2044 ahd_cmcrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
2045 {
2046 	return (ahd_print_register(CMCRXMSG3_parse_table, 1, "CMCRXMSG3",
2047 	    0x93, regvalue, cur_col, wrap));
2048 }
2049 
2050 static ahd_reg_parse_entry_t PCIXCTL_parse_table[] = {
2051 	{ "CMPABCDIS",		0x01, 0x01 },
2052 	{ "TSCSERREN",		0x02, 0x02 },
2053 	{ "SRSPDPEEN",		0x04, 0x04 },
2054 	{ "SPLTSTADIS",		0x08, 0x08 },
2055 	{ "SPLTSMADIS",		0x10, 0x10 },
2056 	{ "UNEXPSCIEN",		0x20, 0x20 },
2057 	{ "SERRPULSE",		0x80, 0x80 }
2058 };
2059 
2060 int
2061 ahd_pcixctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2062 {
2063 	return (ahd_print_register(PCIXCTL_parse_table, 7, "PCIXCTL",
2064 	    0x93, regvalue, cur_col, wrap));
2065 }
2066 
2067 int
2068 ahd_cmcseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2069 {
2070 	return (ahd_print_register(NULL, 0, "CMCSEQBCNT",
2071 	    0x94, regvalue, cur_col, wrap));
2072 }
2073 
2074 int
2075 ahd_dchseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2076 {
2077 	return (ahd_print_register(NULL, 0, "DCHSEQBCNT",
2078 	    0x94, regvalue, cur_col, wrap));
2079 }
2080 
2081 int
2082 ahd_ovlyseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2083 {
2084 	return (ahd_print_register(NULL, 0, "OVLYSEQBCNT",
2085 	    0x94, regvalue, cur_col, wrap));
2086 }
2087 
2088 static ahd_reg_parse_entry_t CMCSPLTSTAT0_parse_table[] = {
2089 	{ "RXSPLTRSP",		0x01, 0x01 },
2090 	{ "RXSCEMSG",		0x02, 0x02 },
2091 	{ "RXOVRUN",		0x04, 0x04 },
2092 	{ "CNTNOTCMPLT",	0x08, 0x08 },
2093 	{ "SCDATBUCKET",	0x10, 0x10 },
2094 	{ "SCADERR",		0x20, 0x20 },
2095 	{ "SCBCERR",		0x40, 0x40 },
2096 	{ "STAETERM",		0x80, 0x80 }
2097 };
2098 
2099 int
2100 ahd_cmcspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2101 {
2102 	return (ahd_print_register(CMCSPLTSTAT0_parse_table, 8, "CMCSPLTSTAT0",
2103 	    0x96, regvalue, cur_col, wrap));
2104 }
2105 
2106 static ahd_reg_parse_entry_t DCHSPLTSTAT0_parse_table[] = {
2107 	{ "RXSPLTRSP",		0x01, 0x01 },
2108 	{ "RXSCEMSG",		0x02, 0x02 },
2109 	{ "RXOVRUN",		0x04, 0x04 },
2110 	{ "CNTNOTCMPLT",	0x08, 0x08 },
2111 	{ "SCDATBUCKET",	0x10, 0x10 },
2112 	{ "SCADERR",		0x20, 0x20 },
2113 	{ "SCBCERR",		0x40, 0x40 },
2114 	{ "STAETERM",		0x80, 0x80 }
2115 };
2116 
2117 int
2118 ahd_dchspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2119 {
2120 	return (ahd_print_register(DCHSPLTSTAT0_parse_table, 8, "DCHSPLTSTAT0",
2121 	    0x96, regvalue, cur_col, wrap));
2122 }
2123 
2124 static ahd_reg_parse_entry_t OVLYSPLTSTAT0_parse_table[] = {
2125 	{ "RXSPLTRSP",		0x01, 0x01 },
2126 	{ "RXSCEMSG",		0x02, 0x02 },
2127 	{ "RXOVRUN",		0x04, 0x04 },
2128 	{ "CNTNOTCMPLT",	0x08, 0x08 },
2129 	{ "SCDATBUCKET",	0x10, 0x10 },
2130 	{ "SCADERR",		0x20, 0x20 },
2131 	{ "SCBCERR",		0x40, 0x40 },
2132 	{ "STAETERM",		0x80, 0x80 }
2133 };
2134 
2135 int
2136 ahd_ovlyspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2137 {
2138 	return (ahd_print_register(OVLYSPLTSTAT0_parse_table, 8, "OVLYSPLTSTAT0",
2139 	    0x96, regvalue, cur_col, wrap));
2140 }
2141 
2142 static ahd_reg_parse_entry_t CMCSPLTSTAT1_parse_table[] = {
2143 	{ "RXDATABUCKET",	0x01, 0x01 }
2144 };
2145 
2146 int
2147 ahd_cmcspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2148 {
2149 	return (ahd_print_register(CMCSPLTSTAT1_parse_table, 1, "CMCSPLTSTAT1",
2150 	    0x97, regvalue, cur_col, wrap));
2151 }
2152 
2153 static ahd_reg_parse_entry_t DCHSPLTSTAT1_parse_table[] = {
2154 	{ "RXDATABUCKET",	0x01, 0x01 }
2155 };
2156 
2157 int
2158 ahd_dchspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2159 {
2160 	return (ahd_print_register(DCHSPLTSTAT1_parse_table, 1, "DCHSPLTSTAT1",
2161 	    0x97, regvalue, cur_col, wrap));
2162 }
2163 
2164 static ahd_reg_parse_entry_t OVLYSPLTSTAT1_parse_table[] = {
2165 	{ "RXDATABUCKET",	0x01, 0x01 }
2166 };
2167 
2168 int
2169 ahd_ovlyspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2170 {
2171 	return (ahd_print_register(OVLYSPLTSTAT1_parse_table, 1, "OVLYSPLTSTAT1",
2172 	    0x97, regvalue, cur_col, wrap));
2173 }
2174 
2175 static ahd_reg_parse_entry_t SGRXMSG0_parse_table[] = {
2176 	{ "CFNUM",		0x07, 0x07 },
2177 	{ "CDNUM",		0xf8, 0xf8 }
2178 };
2179 
2180 int
2181 ahd_sgrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2182 {
2183 	return (ahd_print_register(SGRXMSG0_parse_table, 2, "SGRXMSG0",
2184 	    0x98, regvalue, cur_col, wrap));
2185 }
2186 
2187 static ahd_reg_parse_entry_t SLVSPLTOUTADR0_parse_table[] = {
2188 	{ "LOWER_ADDR",		0x7f, 0x7f }
2189 };
2190 
2191 int
2192 ahd_slvspltoutadr0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2193 {
2194 	return (ahd_print_register(SLVSPLTOUTADR0_parse_table, 1, "SLVSPLTOUTADR0",
2195 	    0x98, regvalue, cur_col, wrap));
2196 }
2197 
2198 static ahd_reg_parse_entry_t SGRXMSG1_parse_table[] = {
2199 	{ "CBNUM",		0xff, 0xff }
2200 };
2201 
2202 int
2203 ahd_sgrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2204 {
2205 	return (ahd_print_register(SGRXMSG1_parse_table, 1, "SGRXMSG1",
2206 	    0x99, regvalue, cur_col, wrap));
2207 }
2208 
2209 static ahd_reg_parse_entry_t SLVSPLTOUTADR1_parse_table[] = {
2210 	{ "REQ_FNUM",		0x07, 0x07 },
2211 	{ "REQ_DNUM",		0xf8, 0xf8 }
2212 };
2213 
2214 int
2215 ahd_slvspltoutadr1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2216 {
2217 	return (ahd_print_register(SLVSPLTOUTADR1_parse_table, 2, "SLVSPLTOUTADR1",
2218 	    0x99, regvalue, cur_col, wrap));
2219 }
2220 
2221 static ahd_reg_parse_entry_t SGRXMSG2_parse_table[] = {
2222 	{ "MINDEX",		0xff, 0xff }
2223 };
2224 
2225 int
2226 ahd_sgrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
2227 {
2228 	return (ahd_print_register(SGRXMSG2_parse_table, 1, "SGRXMSG2",
2229 	    0x9a, regvalue, cur_col, wrap));
2230 }
2231 
2232 static ahd_reg_parse_entry_t SLVSPLTOUTADR2_parse_table[] = {
2233 	{ "REQ_BNUM",		0xff, 0xff }
2234 };
2235 
2236 int
2237 ahd_slvspltoutadr2_print(u_int regvalue, u_int *cur_col, u_int wrap)
2238 {
2239 	return (ahd_print_register(SLVSPLTOUTADR2_parse_table, 1, "SLVSPLTOUTADR2",
2240 	    0x9a, regvalue, cur_col, wrap));
2241 }
2242 
2243 static ahd_reg_parse_entry_t SGRXMSG3_parse_table[] = {
2244 	{ "MCLASS",		0x0f, 0x0f }
2245 };
2246 
2247 int
2248 ahd_sgrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
2249 {
2250 	return (ahd_print_register(SGRXMSG3_parse_table, 1, "SGRXMSG3",
2251 	    0x9b, regvalue, cur_col, wrap));
2252 }
2253 
2254 static ahd_reg_parse_entry_t SLVSPLTOUTADR3_parse_table[] = {
2255 	{ "RLXORD",		0x10, 0x10 },
2256 	{ "TAG_NUM",		0x1f, 0x1f }
2257 };
2258 
2259 int
2260 ahd_slvspltoutadr3_print(u_int regvalue, u_int *cur_col, u_int wrap)
2261 {
2262 	return (ahd_print_register(SLVSPLTOUTADR3_parse_table, 2, "SLVSPLTOUTADR3",
2263 	    0x9b, regvalue, cur_col, wrap));
2264 }
2265 
2266 static ahd_reg_parse_entry_t SLVSPLTOUTATTR0_parse_table[] = {
2267 	{ "LOWER_BCNT",		0xff, 0xff }
2268 };
2269 
2270 int
2271 ahd_slvspltoutattr0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2272 {
2273 	return (ahd_print_register(SLVSPLTOUTATTR0_parse_table, 1, "SLVSPLTOUTATTR0",
2274 	    0x9c, regvalue, cur_col, wrap));
2275 }
2276 
2277 int
2278 ahd_sgseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2279 {
2280 	return (ahd_print_register(NULL, 0, "SGSEQBCNT",
2281 	    0x9c, regvalue, cur_col, wrap));
2282 }
2283 
2284 static ahd_reg_parse_entry_t SLVSPLTOUTATTR1_parse_table[] = {
2285 	{ "CMPLT_FNUM",		0x07, 0x07 },
2286 	{ "CMPLT_DNUM",		0xf8, 0xf8 }
2287 };
2288 
2289 int
2290 ahd_slvspltoutattr1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2291 {
2292 	return (ahd_print_register(SLVSPLTOUTATTR1_parse_table, 2, "SLVSPLTOUTATTR1",
2293 	    0x9d, regvalue, cur_col, wrap));
2294 }
2295 
2296 static ahd_reg_parse_entry_t SLVSPLTOUTATTR2_parse_table[] = {
2297 	{ "CMPLT_BNUM",		0xff, 0xff }
2298 };
2299 
2300 int
2301 ahd_slvspltoutattr2_print(u_int regvalue, u_int *cur_col, u_int wrap)
2302 {
2303 	return (ahd_print_register(SLVSPLTOUTATTR2_parse_table, 1, "SLVSPLTOUTATTR2",
2304 	    0x9e, regvalue, cur_col, wrap));
2305 }
2306 
2307 static ahd_reg_parse_entry_t SGSPLTSTAT0_parse_table[] = {
2308 	{ "RXSPLTRSP",		0x01, 0x01 },
2309 	{ "RXSCEMSG",		0x02, 0x02 },
2310 	{ "RXOVRUN",		0x04, 0x04 },
2311 	{ "CNTNOTCMPLT",	0x08, 0x08 },
2312 	{ "SCDATBUCKET",	0x10, 0x10 },
2313 	{ "SCADERR",		0x20, 0x20 },
2314 	{ "SCBCERR",		0x40, 0x40 },
2315 	{ "STAETERM",		0x80, 0x80 }
2316 };
2317 
2318 int
2319 ahd_sgspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2320 {
2321 	return (ahd_print_register(SGSPLTSTAT0_parse_table, 8, "SGSPLTSTAT0",
2322 	    0x9e, regvalue, cur_col, wrap));
2323 }
2324 
2325 static ahd_reg_parse_entry_t SFUNCT_parse_table[] = {
2326 	{ "TEST_NUM",		0x0f, 0x0f },
2327 	{ "TEST_GROUP",		0xf0, 0xf0 }
2328 };
2329 
2330 int
2331 ahd_sfunct_print(u_int regvalue, u_int *cur_col, u_int wrap)
2332 {
2333 	return (ahd_print_register(SFUNCT_parse_table, 2, "SFUNCT",
2334 	    0x9f, regvalue, cur_col, wrap));
2335 }
2336 
2337 static ahd_reg_parse_entry_t SGSPLTSTAT1_parse_table[] = {
2338 	{ "RXDATABUCKET",	0x01, 0x01 }
2339 };
2340 
2341 int
2342 ahd_sgspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2343 {
2344 	return (ahd_print_register(SGSPLTSTAT1_parse_table, 1, "SGSPLTSTAT1",
2345 	    0x9f, regvalue, cur_col, wrap));
2346 }
2347 
2348 static ahd_reg_parse_entry_t DF0PCISTAT_parse_table[] = {
2349 	{ "DPR",		0x01, 0x01 },
2350 	{ "TWATERR",		0x02, 0x02 },
2351 	{ "RDPERR",		0x04, 0x04 },
2352 	{ "SCAAPERR",		0x08, 0x08 },
2353 	{ "RTA",		0x10, 0x10 },
2354 	{ "RMA",		0x20, 0x20 },
2355 	{ "SSE",		0x40, 0x40 },
2356 	{ "DPE",		0x80, 0x80 }
2357 };
2358 
2359 int
2360 ahd_df0pcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2361 {
2362 	return (ahd_print_register(DF0PCISTAT_parse_table, 8, "DF0PCISTAT",
2363 	    0xa0, regvalue, cur_col, wrap));
2364 }
2365 
2366 int
2367 ahd_reg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2368 {
2369 	return (ahd_print_register(NULL, 0, "REG0",
2370 	    0xa0, regvalue, cur_col, wrap));
2371 }
2372 
2373 static ahd_reg_parse_entry_t DF1PCISTAT_parse_table[] = {
2374 	{ "DPR",		0x01, 0x01 },
2375 	{ "TWATERR",		0x02, 0x02 },
2376 	{ "RDPERR",		0x04, 0x04 },
2377 	{ "SCAAPERR",		0x08, 0x08 },
2378 	{ "RTA",		0x10, 0x10 },
2379 	{ "RMA",		0x20, 0x20 },
2380 	{ "SSE",		0x40, 0x40 },
2381 	{ "DPE",		0x80, 0x80 }
2382 };
2383 
2384 int
2385 ahd_df1pcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2386 {
2387 	return (ahd_print_register(DF1PCISTAT_parse_table, 8, "DF1PCISTAT",
2388 	    0xa1, regvalue, cur_col, wrap));
2389 }
2390 
2391 static ahd_reg_parse_entry_t SGPCISTAT_parse_table[] = {
2392 	{ "DPR",		0x01, 0x01 },
2393 	{ "RDPERR",		0x04, 0x04 },
2394 	{ "SCAAPERR",		0x08, 0x08 },
2395 	{ "RTA",		0x10, 0x10 },
2396 	{ "RMA",		0x20, 0x20 },
2397 	{ "SSE",		0x40, 0x40 },
2398 	{ "DPE",		0x80, 0x80 }
2399 };
2400 
2401 int
2402 ahd_sgpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2403 {
2404 	return (ahd_print_register(SGPCISTAT_parse_table, 7, "SGPCISTAT",
2405 	    0xa2, regvalue, cur_col, wrap));
2406 }
2407 
2408 int
2409 ahd_reg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2410 {
2411 	return (ahd_print_register(NULL, 0, "REG1",
2412 	    0xa2, regvalue, cur_col, wrap));
2413 }
2414 
2415 static ahd_reg_parse_entry_t CMCPCISTAT_parse_table[] = {
2416 	{ "DPR",		0x01, 0x01 },
2417 	{ "TWATERR",		0x02, 0x02 },
2418 	{ "RDPERR",		0x04, 0x04 },
2419 	{ "SCAAPERR",		0x08, 0x08 },
2420 	{ "RTA",		0x10, 0x10 },
2421 	{ "RMA",		0x20, 0x20 },
2422 	{ "SSE",		0x40, 0x40 },
2423 	{ "DPE",		0x80, 0x80 }
2424 };
2425 
2426 int
2427 ahd_cmcpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2428 {
2429 	return (ahd_print_register(CMCPCISTAT_parse_table, 8, "CMCPCISTAT",
2430 	    0xa3, regvalue, cur_col, wrap));
2431 }
2432 
2433 static ahd_reg_parse_entry_t OVLYPCISTAT_parse_table[] = {
2434 	{ "DPR",		0x01, 0x01 },
2435 	{ "RDPERR",		0x04, 0x04 },
2436 	{ "SCAAPERR",		0x08, 0x08 },
2437 	{ "RTA",		0x10, 0x10 },
2438 	{ "RMA",		0x20, 0x20 },
2439 	{ "SSE",		0x40, 0x40 },
2440 	{ "DPE",		0x80, 0x80 }
2441 };
2442 
2443 int
2444 ahd_ovlypcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2445 {
2446 	return (ahd_print_register(OVLYPCISTAT_parse_table, 7, "OVLYPCISTAT",
2447 	    0xa4, regvalue, cur_col, wrap));
2448 }
2449 
2450 int
2451 ahd_reg_isr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2452 {
2453 	return (ahd_print_register(NULL, 0, "REG_ISR",
2454 	    0xa4, regvalue, cur_col, wrap));
2455 }
2456 
2457 static ahd_reg_parse_entry_t MSIPCISTAT_parse_table[] = {
2458 	{ "DPR",		0x01, 0x01 },
2459 	{ "TWATERR",		0x02, 0x02 },
2460 	{ "CLRPENDMSI",		0x08, 0x08 },
2461 	{ "RTA",		0x10, 0x10 },
2462 	{ "RMA",		0x20, 0x20 },
2463 	{ "SSE",		0x40, 0x40 }
2464 };
2465 
2466 int
2467 ahd_msipcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2468 {
2469 	return (ahd_print_register(MSIPCISTAT_parse_table, 6, "MSIPCISTAT",
2470 	    0xa6, regvalue, cur_col, wrap));
2471 }
2472 
2473 static ahd_reg_parse_entry_t SG_STATE_parse_table[] = {
2474 	{ "SEGS_AVAIL",		0x01, 0x01 },
2475 	{ "LOADING_NEEDED",	0x02, 0x02 },
2476 	{ "FETCH_INPROG",	0x04, 0x04 }
2477 };
2478 
2479 int
2480 ahd_sg_state_print(u_int regvalue, u_int *cur_col, u_int wrap)
2481 {
2482 	return (ahd_print_register(SG_STATE_parse_table, 3, "SG_STATE",
2483 	    0xa6, regvalue, cur_col, wrap));
2484 }
2485 
2486 static ahd_reg_parse_entry_t TARGPCISTAT_parse_table[] = {
2487 	{ "TWATERR",		0x02, 0x02 },
2488 	{ "STA",		0x08, 0x08 },
2489 	{ "SSE",		0x40, 0x40 },
2490 	{ "DPE",		0x80, 0x80 }
2491 };
2492 
2493 int
2494 ahd_targpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2495 {
2496 	return (ahd_print_register(TARGPCISTAT_parse_table, 4, "TARGPCISTAT",
2497 	    0xa7, regvalue, cur_col, wrap));
2498 }
2499 
2500 int
2501 ahd_data_count_odd_print(u_int regvalue, u_int *cur_col, u_int wrap)
2502 {
2503 	return (ahd_print_register(NULL, 0, "DATA_COUNT_ODD",
2504 	    0xa7, regvalue, cur_col, wrap));
2505 }
2506 
2507 int
2508 ahd_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2509 {
2510 	return (ahd_print_register(NULL, 0, "SCBPTR",
2511 	    0xa8, regvalue, cur_col, wrap));
2512 }
2513 
2514 int
2515 ahd_ccscbacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2516 {
2517 	return (ahd_print_register(NULL, 0, "CCSCBACNT",
2518 	    0xab, regvalue, cur_col, wrap));
2519 }
2520 
2521 static ahd_reg_parse_entry_t SCBAUTOPTR_parse_table[] = {
2522 	{ "SCBPTR_OFF",		0x07, 0x07 },
2523 	{ "SCBPTR_ADDR",	0x38, 0x38 },
2524 	{ "AUSCBPTR_EN",	0x80, 0x80 }
2525 };
2526 
2527 int
2528 ahd_scbautoptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2529 {
2530 	return (ahd_print_register(SCBAUTOPTR_parse_table, 3, "SCBAUTOPTR",
2531 	    0xab, regvalue, cur_col, wrap));
2532 }
2533 
2534 int
2535 ahd_ccscbadr_bk_print(u_int regvalue, u_int *cur_col, u_int wrap)
2536 {
2537 	return (ahd_print_register(NULL, 0, "CCSCBADR_BK",
2538 	    0xac, regvalue, cur_col, wrap));
2539 }
2540 
2541 int
2542 ahd_ccsgaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2543 {
2544 	return (ahd_print_register(NULL, 0, "CCSGADDR",
2545 	    0xac, regvalue, cur_col, wrap));
2546 }
2547 
2548 int
2549 ahd_ccscbaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2550 {
2551 	return (ahd_print_register(NULL, 0, "CCSCBADDR",
2552 	    0xac, regvalue, cur_col, wrap));
2553 }
2554 
2555 static ahd_reg_parse_entry_t CCSCBCTL_parse_table[] = {
2556 	{ "CCSCBRESET",		0x01, 0x01 },
2557 	{ "CCSCBDIR",		0x04, 0x04 },
2558 	{ "CCSCBEN",		0x08, 0x08 },
2559 	{ "CCARREN",		0x10, 0x10 },
2560 	{ "ARRDONE",		0x40, 0x40 },
2561 	{ "CCSCBDONE",		0x80, 0x80 }
2562 };
2563 
2564 int
2565 ahd_ccscbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2566 {
2567 	return (ahd_print_register(CCSCBCTL_parse_table, 6, "CCSCBCTL",
2568 	    0xad, regvalue, cur_col, wrap));
2569 }
2570 
2571 static ahd_reg_parse_entry_t CCSGCTL_parse_table[] = {
2572 	{ "CCSGRESET",		0x01, 0x01 },
2573 	{ "SG_FETCH_REQ",	0x02, 0x02 },
2574 	{ "CCSGENACK",		0x08, 0x08 },
2575 	{ "SG_CACHE_AVAIL",	0x10, 0x10 },
2576 	{ "CCSGDONE",		0x80, 0x80 },
2577 	{ "CCSGEN",		0x0c, 0x0c }
2578 };
2579 
2580 int
2581 ahd_ccsgctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2582 {
2583 	return (ahd_print_register(CCSGCTL_parse_table, 6, "CCSGCTL",
2584 	    0xad, regvalue, cur_col, wrap));
2585 }
2586 
2587 static ahd_reg_parse_entry_t CMC_RAMBIST_parse_table[] = {
2588 	{ "CMC_BUFFER_BIST_EN",	0x01, 0x01 },
2589 	{ "CMC_BUFFER_BIST_FAIL",0x02, 0x02 },
2590 	{ "SG_BIST_EN",		0x10, 0x10 },
2591 	{ "SG_BIST_FAIL",	0x20, 0x20 },
2592 	{ "SCBRAMBIST_FAIL",	0x40, 0x40 },
2593 	{ "SG_ELEMENT_SIZE",	0x80, 0x80 }
2594 };
2595 
2596 int
2597 ahd_cmc_rambist_print(u_int regvalue, u_int *cur_col, u_int wrap)
2598 {
2599 	return (ahd_print_register(CMC_RAMBIST_parse_table, 6, "CMC_RAMBIST",
2600 	    0xad, regvalue, cur_col, wrap));
2601 }
2602 
2603 int
2604 ahd_ccsgram_print(u_int regvalue, u_int *cur_col, u_int wrap)
2605 {
2606 	return (ahd_print_register(NULL, 0, "CCSGRAM",
2607 	    0xb0, regvalue, cur_col, wrap));
2608 }
2609 
2610 int
2611 ahd_ccscbram_print(u_int regvalue, u_int *cur_col, u_int wrap)
2612 {
2613 	return (ahd_print_register(NULL, 0, "CCSCBRAM",
2614 	    0xb0, regvalue, cur_col, wrap));
2615 }
2616 
2617 int
2618 ahd_flexadr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2619 {
2620 	return (ahd_print_register(NULL, 0, "FLEXADR",
2621 	    0xb0, regvalue, cur_col, wrap));
2622 }
2623 
2624 int
2625 ahd_flexcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2626 {
2627 	return (ahd_print_register(NULL, 0, "FLEXCNT",
2628 	    0xb3, regvalue, cur_col, wrap));
2629 }
2630 
2631 static ahd_reg_parse_entry_t FLEXDMASTAT_parse_table[] = {
2632 	{ "FLEXDMADONE",	0x01, 0x01 },
2633 	{ "FLEXDMAERR",		0x02, 0x02 }
2634 };
2635 
2636 int
2637 ahd_flexdmastat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2638 {
2639 	return (ahd_print_register(FLEXDMASTAT_parse_table, 2, "FLEXDMASTAT",
2640 	    0xb5, regvalue, cur_col, wrap));
2641 }
2642 
2643 int
2644 ahd_flexdata_print(u_int regvalue, u_int *cur_col, u_int wrap)
2645 {
2646 	return (ahd_print_register(NULL, 0, "FLEXDATA",
2647 	    0xb6, regvalue, cur_col, wrap));
2648 }
2649 
2650 int
2651 ahd_brddat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2652 {
2653 	return (ahd_print_register(NULL, 0, "BRDDAT",
2654 	    0xb8, regvalue, cur_col, wrap));
2655 }
2656 
2657 static ahd_reg_parse_entry_t BRDCTL_parse_table[] = {
2658 	{ "BRDSTB",		0x01, 0x01 },
2659 	{ "BRDRW",		0x02, 0x02 },
2660 	{ "BRDEN",		0x04, 0x04 },
2661 	{ "BRDADDR",		0x38, 0x38 },
2662 	{ "FLXARBREQ",		0x40, 0x40 },
2663 	{ "FLXARBACK",		0x80, 0x80 }
2664 };
2665 
2666 int
2667 ahd_brdctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2668 {
2669 	return (ahd_print_register(BRDCTL_parse_table, 6, "BRDCTL",
2670 	    0xb9, regvalue, cur_col, wrap));
2671 }
2672 
2673 int
2674 ahd_seeadr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2675 {
2676 	return (ahd_print_register(NULL, 0, "SEEADR",
2677 	    0xba, regvalue, cur_col, wrap));
2678 }
2679 
2680 int
2681 ahd_seedat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2682 {
2683 	return (ahd_print_register(NULL, 0, "SEEDAT",
2684 	    0xbc, regvalue, cur_col, wrap));
2685 }
2686 
2687 static ahd_reg_parse_entry_t SEECTL_parse_table[] = {
2688 	{ "SEEOP_ERAL",		0x40, 0x70 },
2689 	{ "SEEOP_WRITE",	0x50, 0x70 },
2690 	{ "SEEOP_READ",		0x60, 0x70 },
2691 	{ "SEEOP_ERASE",	0x70, 0x70 },
2692 	{ "SEESTART",		0x01, 0x01 },
2693 	{ "SEERST",		0x02, 0x02 },
2694 	{ "SEEOPCODE",		0x70, 0x70 },
2695 	{ "SEEOP_EWEN",		0x40, 0x40 },
2696 	{ "SEEOP_WALL",		0x40, 0x40 },
2697 	{ "SEEOP_EWDS",		0x40, 0x40 }
2698 };
2699 
2700 int
2701 ahd_seectl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2702 {
2703 	return (ahd_print_register(SEECTL_parse_table, 10, "SEECTL",
2704 	    0xbe, regvalue, cur_col, wrap));
2705 }
2706 
2707 static ahd_reg_parse_entry_t SEESTAT_parse_table[] = {
2708 	{ "SEESTART",		0x01, 0x01 },
2709 	{ "SEEBUSY",		0x02, 0x02 },
2710 	{ "SEEARBACK",		0x04, 0x04 },
2711 	{ "LDALTID_L",		0x08, 0x08 },
2712 	{ "SEEOPCODE",		0x70, 0x70 },
2713 	{ "INIT_DONE",		0x80, 0x80 }
2714 };
2715 
2716 int
2717 ahd_seestat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2718 {
2719 	return (ahd_print_register(SEESTAT_parse_table, 6, "SEESTAT",
2720 	    0xbe, regvalue, cur_col, wrap));
2721 }
2722 
2723 int
2724 ahd_scbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2725 {
2726 	return (ahd_print_register(NULL, 0, "SCBCNT",
2727 	    0xbf, regvalue, cur_col, wrap));
2728 }
2729 
2730 static ahd_reg_parse_entry_t DSPFLTRCTL_parse_table[] = {
2731 	{ "DSPFCNTSEL",		0x0f, 0x0f },
2732 	{ "EDGESENSE",		0x10, 0x10 },
2733 	{ "FLTRDISABLE",	0x20, 0x20 }
2734 };
2735 
2736 int
2737 ahd_dspfltrctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2738 {
2739 	return (ahd_print_register(DSPFLTRCTL_parse_table, 3, "DSPFLTRCTL",
2740 	    0xc0, regvalue, cur_col, wrap));
2741 }
2742 
2743 int
2744 ahd_dfwaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2745 {
2746 	return (ahd_print_register(NULL, 0, "DFWADDR",
2747 	    0xc0, regvalue, cur_col, wrap));
2748 }
2749 
2750 static ahd_reg_parse_entry_t DSPDATACTL_parse_table[] = {
2751 	{ "XMITOFFSTDIS",	0x02, 0x02 },
2752 	{ "RCVROFFSTDIS",	0x04, 0x04 },
2753 	{ "DESQDIS",		0x10, 0x10 },
2754 	{ "BYPASSENAB",		0x80, 0x80 }
2755 };
2756 
2757 int
2758 ahd_dspdatactl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2759 {
2760 	return (ahd_print_register(DSPDATACTL_parse_table, 4, "DSPDATACTL",
2761 	    0xc1, regvalue, cur_col, wrap));
2762 }
2763 
2764 static ahd_reg_parse_entry_t DSPREQCTL_parse_table[] = {
2765 	{ "MANREQDLY",		0x3f, 0x3f },
2766 	{ "MANREQCTL",		0xc0, 0xc0 }
2767 };
2768 
2769 int
2770 ahd_dspreqctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2771 {
2772 	return (ahd_print_register(DSPREQCTL_parse_table, 2, "DSPREQCTL",
2773 	    0xc2, regvalue, cur_col, wrap));
2774 }
2775 
2776 int
2777 ahd_dfraddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2778 {
2779 	return (ahd_print_register(NULL, 0, "DFRADDR",
2780 	    0xc2, regvalue, cur_col, wrap));
2781 }
2782 
2783 static ahd_reg_parse_entry_t DSPACKCTL_parse_table[] = {
2784 	{ "MANACKDLY",		0x3f, 0x3f },
2785 	{ "MANACKCTL",		0xc0, 0xc0 }
2786 };
2787 
2788 int
2789 ahd_dspackctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2790 {
2791 	return (ahd_print_register(DSPACKCTL_parse_table, 2, "DSPACKCTL",
2792 	    0xc3, regvalue, cur_col, wrap));
2793 }
2794 
2795 int
2796 ahd_dfdat_print(u_int regvalue, u_int *cur_col, u_int wrap)
2797 {
2798 	return (ahd_print_register(NULL, 0, "DFDAT",
2799 	    0xc4, regvalue, cur_col, wrap));
2800 }
2801 
2802 static ahd_reg_parse_entry_t DSPSELECT_parse_table[] = {
2803 	{ "DSPSEL",		0x1f, 0x1f },
2804 	{ "AUTOINCEN",		0x80, 0x80 }
2805 };
2806 
2807 int
2808 ahd_dspselect_print(u_int regvalue, u_int *cur_col, u_int wrap)
2809 {
2810 	return (ahd_print_register(DSPSELECT_parse_table, 2, "DSPSELECT",
2811 	    0xc4, regvalue, cur_col, wrap));
2812 }
2813 
2814 static ahd_reg_parse_entry_t WRTBIASCTL_parse_table[] = {
2815 	{ "XMITMANVAL",		0x3f, 0x3f },
2816 	{ "AUTOXBCDIS",		0x80, 0x80 }
2817 };
2818 
2819 int
2820 ahd_wrtbiasctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2821 {
2822 	return (ahd_print_register(WRTBIASCTL_parse_table, 2, "WRTBIASCTL",
2823 	    0xc5, regvalue, cur_col, wrap));
2824 }
2825 
2826 static ahd_reg_parse_entry_t RCVRBIOSCTL_parse_table[] = {
2827 	{ "RCVRMANVAL",		0x3f, 0x3f },
2828 	{ "AUTORBCDIS",		0x80, 0x80 }
2829 };
2830 
2831 int
2832 ahd_rcvrbiosctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2833 {
2834 	return (ahd_print_register(RCVRBIOSCTL_parse_table, 2, "RCVRBIOSCTL",
2835 	    0xc6, regvalue, cur_col, wrap));
2836 }
2837 
2838 int
2839 ahd_wrtbiascalc_print(u_int regvalue, u_int *cur_col, u_int wrap)
2840 {
2841 	return (ahd_print_register(NULL, 0, "WRTBIASCALC",
2842 	    0xc7, regvalue, cur_col, wrap));
2843 }
2844 
2845 int
2846 ahd_dfptrs_print(u_int regvalue, u_int *cur_col, u_int wrap)
2847 {
2848 	return (ahd_print_register(NULL, 0, "DFPTRS",
2849 	    0xc8, regvalue, cur_col, wrap));
2850 }
2851 
2852 int
2853 ahd_rcvrbiascalc_print(u_int regvalue, u_int *cur_col, u_int wrap)
2854 {
2855 	return (ahd_print_register(NULL, 0, "RCVRBIASCALC",
2856 	    0xc8, regvalue, cur_col, wrap));
2857 }
2858 
2859 int
2860 ahd_dfbkptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2861 {
2862 	return (ahd_print_register(NULL, 0, "DFBKPTR",
2863 	    0xc9, regvalue, cur_col, wrap));
2864 }
2865 
2866 int
2867 ahd_skewcalc_print(u_int regvalue, u_int *cur_col, u_int wrap)
2868 {
2869 	return (ahd_print_register(NULL, 0, "SKEWCALC",
2870 	    0xc9, regvalue, cur_col, wrap));
2871 }
2872 
2873 static ahd_reg_parse_entry_t DFDBCTL_parse_table[] = {
2874 	{ "DFF_RAMBIST_EN",	0x01, 0x01 },
2875 	{ "DFF_RAMBIST_DONE",	0x02, 0x02 },
2876 	{ "DFF_RAMBIST_FAIL",	0x04, 0x04 },
2877 	{ "DFF_DIR_ERR",	0x08, 0x08 },
2878 	{ "DFF_CIO_RD_RDY",	0x10, 0x10 },
2879 	{ "DFF_CIO_WR_RDY",	0x20, 0x20 }
2880 };
2881 
2882 int
2883 ahd_dfdbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2884 {
2885 	return (ahd_print_register(DFDBCTL_parse_table, 6, "DFDBCTL",
2886 	    0xcb, regvalue, cur_col, wrap));
2887 }
2888 
2889 int
2890 ahd_dfscnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2891 {
2892 	return (ahd_print_register(NULL, 0, "DFSCNT",
2893 	    0xcc, regvalue, cur_col, wrap));
2894 }
2895 
2896 int
2897 ahd_dfbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2898 {
2899 	return (ahd_print_register(NULL, 0, "DFBCNT",
2900 	    0xce, regvalue, cur_col, wrap));
2901 }
2902 
2903 int
2904 ahd_ovlyaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2905 {
2906 	return (ahd_print_register(NULL, 0, "OVLYADDR",
2907 	    0xd4, regvalue, cur_col, wrap));
2908 }
2909 
2910 static ahd_reg_parse_entry_t SEQCTL0_parse_table[] = {
2911 	{ "LOADRAM",		0x01, 0x01 },
2912 	{ "SEQRESET",		0x02, 0x02 },
2913 	{ "STEP",		0x04, 0x04 },
2914 	{ "BRKADRINTEN",	0x08, 0x08 },
2915 	{ "FASTMODE",		0x10, 0x10 },
2916 	{ "FAILDIS",		0x20, 0x20 },
2917 	{ "PAUSEDIS",		0x40, 0x40 },
2918 	{ "PERRORDIS",		0x80, 0x80 }
2919 };
2920 
2921 int
2922 ahd_seqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
2923 {
2924 	return (ahd_print_register(SEQCTL0_parse_table, 8, "SEQCTL0",
2925 	    0xd6, regvalue, cur_col, wrap));
2926 }
2927 
2928 static ahd_reg_parse_entry_t SEQCTL1_parse_table[] = {
2929 	{ "RAMBIST_EN",		0x01, 0x01 },
2930 	{ "RAMBIST_FAIL",	0x02, 0x02 },
2931 	{ "RAMBIST_DONE",	0x04, 0x04 },
2932 	{ "OVRLAY_DATA_CHK",	0x08, 0x08 }
2933 };
2934 
2935 int
2936 ahd_seqctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2937 {
2938 	return (ahd_print_register(SEQCTL1_parse_table, 4, "SEQCTL1",
2939 	    0xd7, regvalue, cur_col, wrap));
2940 }
2941 
2942 static ahd_reg_parse_entry_t FLAGS_parse_table[] = {
2943 	{ "CARRY",		0x01, 0x01 },
2944 	{ "ZERO",		0x02, 0x02 }
2945 };
2946 
2947 int
2948 ahd_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)
2949 {
2950 	return (ahd_print_register(FLAGS_parse_table, 2, "FLAGS",
2951 	    0xd8, regvalue, cur_col, wrap));
2952 }
2953 
2954 static ahd_reg_parse_entry_t SEQINTCTL_parse_table[] = {
2955 	{ "IRET",		0x01, 0x01 },
2956 	{ "INTMASK1",		0x02, 0x02 },
2957 	{ "INTMASK2",		0x04, 0x04 },
2958 	{ "SCS_SEQ_INT1M0",	0x08, 0x08 },
2959 	{ "SCS_SEQ_INT1M1",	0x10, 0x10 },
2960 	{ "INT1_CONTEXT",	0x20, 0x20 },
2961 	{ "INTVEC1DSL",		0x80, 0x80 }
2962 };
2963 
2964 int
2965 ahd_seqintctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
2966 {
2967 	return (ahd_print_register(SEQINTCTL_parse_table, 7, "SEQINTCTL",
2968 	    0xd9, regvalue, cur_col, wrap));
2969 }
2970 
2971 int
2972 ahd_seqram_print(u_int regvalue, u_int *cur_col, u_int wrap)
2973 {
2974 	return (ahd_print_register(NULL, 0, "SEQRAM",
2975 	    0xda, regvalue, cur_col, wrap));
2976 }
2977 
2978 int
2979 ahd_prgmcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2980 {
2981 	return (ahd_print_register(NULL, 0, "PRGMCNT",
2982 	    0xde, regvalue, cur_col, wrap));
2983 }
2984 
2985 int
2986 ahd_accum_print(u_int regvalue, u_int *cur_col, u_int wrap)
2987 {
2988 	return (ahd_print_register(NULL, 0, "ACCUM",
2989 	    0xe0, regvalue, cur_col, wrap));
2990 }
2991 
2992 int
2993 ahd_sindex_print(u_int regvalue, u_int *cur_col, u_int wrap)
2994 {
2995 	return (ahd_print_register(NULL, 0, "SINDEX",
2996 	    0xe2, regvalue, cur_col, wrap));
2997 }
2998 
2999 int
3000 ahd_dindex_print(u_int regvalue, u_int *cur_col, u_int wrap)
3001 {
3002 	return (ahd_print_register(NULL, 0, "DINDEX",
3003 	    0xe4, regvalue, cur_col, wrap));
3004 }
3005 
3006 static ahd_reg_parse_entry_t BRKADDR1_parse_table[] = {
3007 	{ "BRKDIS",		0x80, 0x80 }
3008 };
3009 
3010 int
3011 ahd_brkaddr1_print(u_int regvalue, u_int *cur_col, u_int wrap)
3012 {
3013 	return (ahd_print_register(BRKADDR1_parse_table, 1, "BRKADDR1",
3014 	    0xe6, regvalue, cur_col, wrap));
3015 }
3016 
3017 int
3018 ahd_brkaddr0_print(u_int regvalue, u_int *cur_col, u_int wrap)
3019 {
3020 	return (ahd_print_register(NULL, 0, "BRKADDR0",
3021 	    0xe6, regvalue, cur_col, wrap));
3022 }
3023 
3024 int
3025 ahd_allones_print(u_int regvalue, u_int *cur_col, u_int wrap)
3026 {
3027 	return (ahd_print_register(NULL, 0, "ALLONES",
3028 	    0xe8, regvalue, cur_col, wrap));
3029 }
3030 
3031 int
3032 ahd_none_print(u_int regvalue, u_int *cur_col, u_int wrap)
3033 {
3034 	return (ahd_print_register(NULL, 0, "NONE",
3035 	    0xea, regvalue, cur_col, wrap));
3036 }
3037 
3038 int
3039 ahd_allzeros_print(u_int regvalue, u_int *cur_col, u_int wrap)
3040 {
3041 	return (ahd_print_register(NULL, 0, "ALLZEROS",
3042 	    0xea, regvalue, cur_col, wrap));
3043 }
3044 
3045 int
3046 ahd_sindir_print(u_int regvalue, u_int *cur_col, u_int wrap)
3047 {
3048 	return (ahd_print_register(NULL, 0, "SINDIR",
3049 	    0xec, regvalue, cur_col, wrap));
3050 }
3051 
3052 int
3053 ahd_dindir_print(u_int regvalue, u_int *cur_col, u_int wrap)
3054 {
3055 	return (ahd_print_register(NULL, 0, "DINDIR",
3056 	    0xed, regvalue, cur_col, wrap));
3057 }
3058 
3059 int
3060 ahd_function1_print(u_int regvalue, u_int *cur_col, u_int wrap)
3061 {
3062 	return (ahd_print_register(NULL, 0, "FUNCTION1",
3063 	    0xf0, regvalue, cur_col, wrap));
3064 }
3065 
3066 int
3067 ahd_stack_print(u_int regvalue, u_int *cur_col, u_int wrap)
3068 {
3069 	return (ahd_print_register(NULL, 0, "STACK",
3070 	    0xf2, regvalue, cur_col, wrap));
3071 }
3072 
3073 int
3074 ahd_intvec1_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3075 {
3076 	return (ahd_print_register(NULL, 0, "INTVEC1_ADDR",
3077 	    0xf4, regvalue, cur_col, wrap));
3078 }
3079 
3080 int
3081 ahd_curaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3082 {
3083 	return (ahd_print_register(NULL, 0, "CURADDR",
3084 	    0xf4, regvalue, cur_col, wrap));
3085 }
3086 
3087 int
3088 ahd_intvec2_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3089 {
3090 	return (ahd_print_register(NULL, 0, "INTVEC2_ADDR",
3091 	    0xf6, regvalue, cur_col, wrap));
3092 }
3093 
3094 int
3095 ahd_lastaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3096 {
3097 	return (ahd_print_register(NULL, 0, "LASTADDR",
3098 	    0xf6, regvalue, cur_col, wrap));
3099 }
3100 
3101 int
3102 ahd_longjmp_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3103 {
3104 	return (ahd_print_register(NULL, 0, "LONGJMP_ADDR",
3105 	    0xf8, regvalue, cur_col, wrap));
3106 }
3107 
3108 int
3109 ahd_accum_save_print(u_int regvalue, u_int *cur_col, u_int wrap)
3110 {
3111 	return (ahd_print_register(NULL, 0, "ACCUM_SAVE",
3112 	    0xfa, regvalue, cur_col, wrap));
3113 }
3114 
3115 int
3116 ahd_sram_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
3117 {
3118 	return (ahd_print_register(NULL, 0, "SRAM_BASE",
3119 	    0x100, regvalue, cur_col, wrap));
3120 }
3121 
3122 int
3123 ahd_waiting_scb_tails_print(u_int regvalue, u_int *cur_col, u_int wrap)
3124 {
3125 	return (ahd_print_register(NULL, 0, "WAITING_SCB_TAILS",
3126 	    0x100, regvalue, cur_col, wrap));
3127 }
3128 
3129 int
3130 ahd_ahd_pci_config_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
3131 {
3132 	return (ahd_print_register(NULL, 0, "AHD_PCI_CONFIG_BASE",
3133 	    0x100, regvalue, cur_col, wrap));
3134 }
3135 
3136 int
3137 ahd_waiting_tid_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
3138 {
3139 	return (ahd_print_register(NULL, 0, "WAITING_TID_HEAD",
3140 	    0x120, regvalue, cur_col, wrap));
3141 }
3142 
3143 int
3144 ahd_waiting_tid_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)
3145 {
3146 	return (ahd_print_register(NULL, 0, "WAITING_TID_TAIL",
3147 	    0x122, regvalue, cur_col, wrap));
3148 }
3149 
3150 int
3151 ahd_next_queued_scb_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3152 {
3153 	return (ahd_print_register(NULL, 0, "NEXT_QUEUED_SCB_ADDR",
3154 	    0x124, regvalue, cur_col, wrap));
3155 }
3156 
3157 int
3158 ahd_complete_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
3159 {
3160 	return (ahd_print_register(NULL, 0, "COMPLETE_SCB_HEAD",
3161 	    0x128, regvalue, cur_col, wrap));
3162 }
3163 
3164 int
3165 ahd_complete_scb_dmainprog_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
3166 {
3167 	return (ahd_print_register(NULL, 0, "COMPLETE_SCB_DMAINPROG_HEAD",
3168 	    0x12a, regvalue, cur_col, wrap));
3169 }
3170 
3171 int
3172 ahd_complete_dma_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
3173 {
3174 	return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_HEAD",
3175 	    0x12c, regvalue, cur_col, wrap));
3176 }
3177 
3178 int
3179 ahd_complete_dma_scb_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)
3180 {
3181 	return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_TAIL",
3182 	    0x12e, regvalue, cur_col, wrap));
3183 }
3184 
3185 int
3186 ahd_complete_on_qfreeze_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
3187 {
3188 	return (ahd_print_register(NULL, 0, "COMPLETE_ON_QFREEZE_HEAD",
3189 	    0x130, regvalue, cur_col, wrap));
3190 }
3191 
3192 int
3193 ahd_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)
3194 {
3195 	return (ahd_print_register(NULL, 0, "QFREEZE_COUNT",
3196 	    0x132, regvalue, cur_col, wrap));
3197 }
3198 
3199 int
3200 ahd_kernel_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)
3201 {
3202 	return (ahd_print_register(NULL, 0, "KERNEL_QFREEZE_COUNT",
3203 	    0x134, regvalue, cur_col, wrap));
3204 }
3205 
3206 int
3207 ahd_saved_mode_print(u_int regvalue, u_int *cur_col, u_int wrap)
3208 {
3209 	return (ahd_print_register(NULL, 0, "SAVED_MODE",
3210 	    0x136, regvalue, cur_col, wrap));
3211 }
3212 
3213 int
3214 ahd_msg_out_print(u_int regvalue, u_int *cur_col, u_int wrap)
3215 {
3216 	return (ahd_print_register(NULL, 0, "MSG_OUT",
3217 	    0x137, regvalue, cur_col, wrap));
3218 }
3219 
3220 static ahd_reg_parse_entry_t DMAPARAMS_parse_table[] = {
3221 	{ "FIFORESET",		0x01, 0x01 },
3222 	{ "FIFOFLUSH",		0x02, 0x02 },
3223 	{ "DIRECTION",		0x04, 0x04 },
3224 	{ "HDMAEN",		0x08, 0x08 },
3225 	{ "HDMAENACK",		0x08, 0x08 },
3226 	{ "SDMAEN",		0x10, 0x10 },
3227 	{ "SDMAENACK",		0x10, 0x10 },
3228 	{ "SCSIEN",		0x20, 0x20 },
3229 	{ "WIDEODD",		0x40, 0x40 },
3230 	{ "PRELOADEN",		0x80, 0x80 }
3231 };
3232 
3233 int
3234 ahd_dmaparams_print(u_int regvalue, u_int *cur_col, u_int wrap)
3235 {
3236 	return (ahd_print_register(DMAPARAMS_parse_table, 10, "DMAPARAMS",
3237 	    0x138, regvalue, cur_col, wrap));
3238 }
3239 
3240 static ahd_reg_parse_entry_t SEQ_FLAGS_parse_table[] = {
3241 	{ "NO_DISCONNECT",	0x01, 0x01 },
3242 	{ "SPHASE_PENDING",	0x02, 0x02 },
3243 	{ "DPHASE_PENDING",	0x04, 0x04 },
3244 	{ "CMDPHASE_PENDING",	0x08, 0x08 },
3245 	{ "TARG_CMD_PENDING",	0x10, 0x10 },
3246 	{ "DPHASE",		0x20, 0x20 },
3247 	{ "NO_CDB_SENT",	0x40, 0x40 },
3248 	{ "TARGET_CMD_IS_TAGGED",0x40, 0x40 },
3249 	{ "NOT_IDENTIFIED",	0x80, 0x80 }
3250 };
3251 
3252 int
3253 ahd_seq_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)
3254 {
3255 	return (ahd_print_register(SEQ_FLAGS_parse_table, 9, "SEQ_FLAGS",
3256 	    0x139, regvalue, cur_col, wrap));
3257 }
3258 
3259 int
3260 ahd_saved_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
3261 {
3262 	return (ahd_print_register(NULL, 0, "SAVED_SCSIID",
3263 	    0x13a, regvalue, cur_col, wrap));
3264 }
3265 
3266 int
3267 ahd_saved_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)
3268 {
3269 	return (ahd_print_register(NULL, 0, "SAVED_LUN",
3270 	    0x13b, regvalue, cur_col, wrap));
3271 }
3272 
3273 static ahd_reg_parse_entry_t LASTPHASE_parse_table[] = {
3274 	{ "P_DATAOUT",		0x00, 0xe0 },
3275 	{ "P_DATAOUT_DT",	0x20, 0xe0 },
3276 	{ "P_DATAIN",		0x40, 0xe0 },
3277 	{ "P_DATAIN_DT",	0x60, 0xe0 },
3278 	{ "P_COMMAND",		0x80, 0xe0 },
3279 	{ "P_MESGOUT",		0xa0, 0xe0 },
3280 	{ "P_STATUS",		0xc0, 0xe0 },
3281 	{ "P_MESGIN",		0xe0, 0xe0 },
3282 	{ "P_BUSFREE",		0x01, 0x01 },
3283 	{ "MSGI",		0x20, 0x20 },
3284 	{ "IOI",		0x40, 0x40 },
3285 	{ "CDI",		0x80, 0x80 },
3286 	{ "PHASE_MASK",		0xe0, 0xe0 }
3287 };
3288 
3289 int
3290 ahd_lastphase_print(u_int regvalue, u_int *cur_col, u_int wrap)
3291 {
3292 	return (ahd_print_register(LASTPHASE_parse_table, 13, "LASTPHASE",
3293 	    0x13c, regvalue, cur_col, wrap));
3294 }
3295 
3296 int
3297 ahd_qoutfifo_entry_valid_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
3298 {
3299 	return (ahd_print_register(NULL, 0, "QOUTFIFO_ENTRY_VALID_TAG",
3300 	    0x13d, regvalue, cur_col, wrap));
3301 }
3302 
3303 int
3304 ahd_kernel_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)
3305 {
3306 	return (ahd_print_register(NULL, 0, "KERNEL_TQINPOS",
3307 	    0x13e, regvalue, cur_col, wrap));
3308 }
3309 
3310 int
3311 ahd_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)
3312 {
3313 	return (ahd_print_register(NULL, 0, "TQINPOS",
3314 	    0x13f, regvalue, cur_col, wrap));
3315 }
3316 
3317 int
3318 ahd_shared_data_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3319 {
3320 	return (ahd_print_register(NULL, 0, "SHARED_DATA_ADDR",
3321 	    0x140, regvalue, cur_col, wrap));
3322 }
3323 
3324 int
3325 ahd_qoutfifo_next_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3326 {
3327 	return (ahd_print_register(NULL, 0, "QOUTFIFO_NEXT_ADDR",
3328 	    0x144, regvalue, cur_col, wrap));
3329 }
3330 
3331 static ahd_reg_parse_entry_t ARG_1_parse_table[] = {
3332 	{ "CONT_MSG_LOOP_TARG",	0x02, 0x02 },
3333 	{ "CONT_MSG_LOOP_READ",	0x03, 0x03 },
3334 	{ "CONT_MSG_LOOP_WRITE",0x04, 0x04 },
3335 	{ "EXIT_MSG_LOOP",	0x08, 0x08 },
3336 	{ "MSGOUT_PHASEMIS",	0x10, 0x10 },
3337 	{ "SEND_REJ",		0x20, 0x20 },
3338 	{ "SEND_SENSE",		0x40, 0x40 },
3339 	{ "SEND_MSG",		0x80, 0x80 }
3340 };
3341 
3342 int
3343 ahd_arg_1_print(u_int regvalue, u_int *cur_col, u_int wrap)
3344 {
3345 	return (ahd_print_register(ARG_1_parse_table, 8, "ARG_1",
3346 	    0x148, regvalue, cur_col, wrap));
3347 }
3348 
3349 int
3350 ahd_arg_2_print(u_int regvalue, u_int *cur_col, u_int wrap)
3351 {
3352 	return (ahd_print_register(NULL, 0, "ARG_2",
3353 	    0x149, regvalue, cur_col, wrap));
3354 }
3355 
3356 int
3357 ahd_last_msg_print(u_int regvalue, u_int *cur_col, u_int wrap)
3358 {
3359 	return (ahd_print_register(NULL, 0, "LAST_MSG",
3360 	    0x14a, regvalue, cur_col, wrap));
3361 }
3362 
3363 static ahd_reg_parse_entry_t SCSISEQ_TEMPLATE_parse_table[] = {
3364 	{ "ALTSTIM",		0x01, 0x01 },
3365 	{ "ENAUTOATNP",		0x02, 0x02 },
3366 	{ "MANUALP",		0x0c, 0x0c },
3367 	{ "ENRSELI",		0x10, 0x10 },
3368 	{ "ENSELI",		0x20, 0x20 },
3369 	{ "MANUALCTL",		0x40, 0x40 }
3370 };
3371 
3372 int
3373 ahd_scsiseq_template_print(u_int regvalue, u_int *cur_col, u_int wrap)
3374 {
3375 	return (ahd_print_register(SCSISEQ_TEMPLATE_parse_table, 6, "SCSISEQ_TEMPLATE",
3376 	    0x14b, regvalue, cur_col, wrap));
3377 }
3378 
3379 int
3380 ahd_initiator_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
3381 {
3382 	return (ahd_print_register(NULL, 0, "INITIATOR_TAG",
3383 	    0x14c, regvalue, cur_col, wrap));
3384 }
3385 
3386 static ahd_reg_parse_entry_t SEQ_FLAGS2_parse_table[] = {
3387 	{ "PENDING_MK_MESSAGE",	0x01, 0x01 },
3388 	{ "TARGET_MSG_PENDING",	0x02, 0x02 },
3389 	{ "SELECTOUT_QFROZEN",	0x04, 0x04 }
3390 };
3391 
3392 int
3393 ahd_seq_flags2_print(u_int regvalue, u_int *cur_col, u_int wrap)
3394 {
3395 	return (ahd_print_register(SEQ_FLAGS2_parse_table, 3, "SEQ_FLAGS2",
3396 	    0x14d, regvalue, cur_col, wrap));
3397 }
3398 
3399 int
3400 ahd_allocfifo_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3401 {
3402 	return (ahd_print_register(NULL, 0, "ALLOCFIFO_SCBPTR",
3403 	    0x14e, regvalue, cur_col, wrap));
3404 }
3405 
3406 int
3407 ahd_int_coalescing_timer_print(u_int regvalue, u_int *cur_col, u_int wrap)
3408 {
3409 	return (ahd_print_register(NULL, 0, "INT_COALESCING_TIMER",
3410 	    0x150, regvalue, cur_col, wrap));
3411 }
3412 
3413 int
3414 ahd_int_coalescing_maxcmds_print(u_int regvalue, u_int *cur_col, u_int wrap)
3415 {
3416 	return (ahd_print_register(NULL, 0, "INT_COALESCING_MAXCMDS",
3417 	    0x152, regvalue, cur_col, wrap));
3418 }
3419 
3420 int
3421 ahd_int_coalescing_mincmds_print(u_int regvalue, u_int *cur_col, u_int wrap)
3422 {
3423 	return (ahd_print_register(NULL, 0, "INT_COALESCING_MINCMDS",
3424 	    0x153, regvalue, cur_col, wrap));
3425 }
3426 
3427 int
3428 ahd_cmds_pending_print(u_int regvalue, u_int *cur_col, u_int wrap)
3429 {
3430 	return (ahd_print_register(NULL, 0, "CMDS_PENDING",
3431 	    0x154, regvalue, cur_col, wrap));
3432 }
3433 
3434 int
3435 ahd_int_coalescing_cmdcount_print(u_int regvalue, u_int *cur_col, u_int wrap)
3436 {
3437 	return (ahd_print_register(NULL, 0, "INT_COALESCING_CMDCOUNT",
3438 	    0x156, regvalue, cur_col, wrap));
3439 }
3440 
3441 int
3442 ahd_local_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)
3443 {
3444 	return (ahd_print_register(NULL, 0, "LOCAL_HS_MAILBOX",
3445 	    0x157, regvalue, cur_col, wrap));
3446 }
3447 
3448 int
3449 ahd_cmdsize_table_print(u_int regvalue, u_int *cur_col, u_int wrap)
3450 {
3451 	return (ahd_print_register(NULL, 0, "CMDSIZE_TABLE",
3452 	    0x158, regvalue, cur_col, wrap));
3453 }
3454 
3455 int
3456 ahd_mk_message_scb_print(u_int regvalue, u_int *cur_col, u_int wrap)
3457 {
3458 	return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCB",
3459 	    0x160, regvalue, cur_col, wrap));
3460 }
3461 
3462 int
3463 ahd_mk_message_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
3464 {
3465 	return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCSIID",
3466 	    0x162, regvalue, cur_col, wrap));
3467 }
3468 
3469 int
3470 ahd_scb_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
3471 {
3472 	return (ahd_print_register(NULL, 0, "SCB_BASE",
3473 	    0x180, regvalue, cur_col, wrap));
3474 }
3475 
3476 int
3477 ahd_scb_residual_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
3478 {
3479 	return (ahd_print_register(NULL, 0, "SCB_RESIDUAL_DATACNT",
3480 	    0x180, regvalue, cur_col, wrap));
3481 }
3482 
3483 static ahd_reg_parse_entry_t SCB_RESIDUAL_SGPTR_parse_table[] = {
3484 	{ "SG_LIST_NULL",	0x01, 0x01 },
3485 	{ "SG_OVERRUN_RESID",	0x02, 0x02 },
3486 	{ "SG_ADDR_BIT",	0x04, 0x04 },
3487 	{ "SG_ADDR_MASK",	0xf8, 0xf8 }
3488 };
3489 
3490 int
3491 ahd_scb_residual_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3492 {
3493 	return (ahd_print_register(SCB_RESIDUAL_SGPTR_parse_table, 4, "SCB_RESIDUAL_SGPTR",
3494 	    0x184, regvalue, cur_col, wrap));
3495 }
3496 
3497 int
3498 ahd_scb_scsi_status_print(u_int regvalue, u_int *cur_col, u_int wrap)
3499 {
3500 	return (ahd_print_register(NULL, 0, "SCB_SCSI_STATUS",
3501 	    0x188, regvalue, cur_col, wrap));
3502 }
3503 
3504 int
3505 ahd_scb_target_phases_print(u_int regvalue, u_int *cur_col, u_int wrap)
3506 {
3507 	return (ahd_print_register(NULL, 0, "SCB_TARGET_PHASES",
3508 	    0x189, regvalue, cur_col, wrap));
3509 }
3510 
3511 int
3512 ahd_scb_target_data_dir_print(u_int regvalue, u_int *cur_col, u_int wrap)
3513 {
3514 	return (ahd_print_register(NULL, 0, "SCB_TARGET_DATA_DIR",
3515 	    0x18a, regvalue, cur_col, wrap));
3516 }
3517 
3518 int
3519 ahd_scb_target_itag_print(u_int regvalue, u_int *cur_col, u_int wrap)
3520 {
3521 	return (ahd_print_register(NULL, 0, "SCB_TARGET_ITAG",
3522 	    0x18b, regvalue, cur_col, wrap));
3523 }
3524 
3525 int
3526 ahd_scb_sense_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3527 {
3528 	return (ahd_print_register(NULL, 0, "SCB_SENSE_BUSADDR",
3529 	    0x18c, regvalue, cur_col, wrap));
3530 }
3531 
3532 int
3533 ahd_scb_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
3534 {
3535 	return (ahd_print_register(NULL, 0, "SCB_TAG",
3536 	    0x190, regvalue, cur_col, wrap));
3537 }
3538 
3539 static ahd_reg_parse_entry_t SCB_CONTROL_parse_table[] = {
3540 	{ "SCB_TAG_TYPE",	0x03, 0x03 },
3541 	{ "DISCONNECTED",	0x04, 0x04 },
3542 	{ "STATUS_RCVD",	0x08, 0x08 },
3543 	{ "MK_MESSAGE",		0x10, 0x10 },
3544 	{ "TAG_ENB",		0x20, 0x20 },
3545 	{ "DISCENB",		0x40, 0x40 },
3546 	{ "TARGET_SCB",		0x80, 0x80 }
3547 };
3548 
3549 int
3550 ahd_scb_control_print(u_int regvalue, u_int *cur_col, u_int wrap)
3551 {
3552 	return (ahd_print_register(SCB_CONTROL_parse_table, 7, "SCB_CONTROL",
3553 	    0x192, regvalue, cur_col, wrap));
3554 }
3555 
3556 static ahd_reg_parse_entry_t SCB_SCSIID_parse_table[] = {
3557 	{ "OID",		0x0f, 0x0f },
3558 	{ "TID",		0xf0, 0xf0 }
3559 };
3560 
3561 int
3562 ahd_scb_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
3563 {
3564 	return (ahd_print_register(SCB_SCSIID_parse_table, 2, "SCB_SCSIID",
3565 	    0x193, regvalue, cur_col, wrap));
3566 }
3567 
3568 static ahd_reg_parse_entry_t SCB_LUN_parse_table[] = {
3569 	{ "LID",		0xff, 0xff }
3570 };
3571 
3572 int
3573 ahd_scb_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)
3574 {
3575 	return (ahd_print_register(SCB_LUN_parse_table, 1, "SCB_LUN",
3576 	    0x194, regvalue, cur_col, wrap));
3577 }
3578 
3579 static ahd_reg_parse_entry_t SCB_TASK_ATTRIBUTE_parse_table[] = {
3580 	{ "SCB_XFERLEN_ODD",	0x01, 0x01 }
3581 };
3582 
3583 int
3584 ahd_scb_task_attribute_print(u_int regvalue, u_int *cur_col, u_int wrap)
3585 {
3586 	return (ahd_print_register(SCB_TASK_ATTRIBUTE_parse_table, 1, "SCB_TASK_ATTRIBUTE",
3587 	    0x195, regvalue, cur_col, wrap));
3588 }
3589 
3590 static ahd_reg_parse_entry_t SCB_CDB_LEN_parse_table[] = {
3591 	{ "SCB_CDB_LEN_PTR",	0x80, 0x80 }
3592 };
3593 
3594 int
3595 ahd_scb_cdb_len_print(u_int regvalue, u_int *cur_col, u_int wrap)
3596 {
3597 	return (ahd_print_register(SCB_CDB_LEN_parse_table, 1, "SCB_CDB_LEN",
3598 	    0x196, regvalue, cur_col, wrap));
3599 }
3600 
3601 int
3602 ahd_scb_task_management_print(u_int regvalue, u_int *cur_col, u_int wrap)
3603 {
3604 	return (ahd_print_register(NULL, 0, "SCB_TASK_MANAGEMENT",
3605 	    0x197, regvalue, cur_col, wrap));
3606 }
3607 
3608 int
3609 ahd_scb_dataptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3610 {
3611 	return (ahd_print_register(NULL, 0, "SCB_DATAPTR",
3612 	    0x198, regvalue, cur_col, wrap));
3613 }
3614 
3615 static ahd_reg_parse_entry_t SCB_DATACNT_parse_table[] = {
3616 	{ "SG_HIGH_ADDR_BITS",	0x7f, 0x7f },
3617 	{ "SG_LAST_SEG",	0x80, 0x80 }
3618 };
3619 
3620 int
3621 ahd_scb_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
3622 {
3623 	return (ahd_print_register(SCB_DATACNT_parse_table, 2, "SCB_DATACNT",
3624 	    0x1a0, regvalue, cur_col, wrap));
3625 }
3626 
3627 static ahd_reg_parse_entry_t SCB_SGPTR_parse_table[] = {
3628 	{ "SG_LIST_NULL",	0x01, 0x01 },
3629 	{ "SG_FULL_RESID",	0x02, 0x02 },
3630 	{ "SG_STATUS_VALID",	0x04, 0x04 }
3631 };
3632 
3633 int
3634 ahd_scb_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3635 {
3636 	return (ahd_print_register(SCB_SGPTR_parse_table, 3, "SCB_SGPTR",
3637 	    0x1a4, regvalue, cur_col, wrap));
3638 }
3639 
3640 int
3641 ahd_scb_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
3642 {
3643 	return (ahd_print_register(NULL, 0, "SCB_BUSADDR",
3644 	    0x1a8, regvalue, cur_col, wrap));
3645 }
3646 
3647 int
3648 ahd_scb_next_print(u_int regvalue, u_int *cur_col, u_int wrap)
3649 {
3650 	return (ahd_print_register(NULL, 0, "SCB_NEXT",
3651 	    0x1ac, regvalue, cur_col, wrap));
3652 }
3653 
3654 int
3655 ahd_scb_next2_print(u_int regvalue, u_int *cur_col, u_int wrap)
3656 {
3657 	return (ahd_print_register(NULL, 0, "SCB_NEXT2",
3658 	    0x1ae, regvalue, cur_col, wrap));
3659 }
3660 
3661 int
3662 ahd_scb_spare_print(u_int regvalue, u_int *cur_col, u_int wrap)
3663 {
3664 	return (ahd_print_register(NULL, 0, "SCB_SPARE",
3665 	    0x1b0, regvalue, cur_col, wrap));
3666 }
3667 
3668 int
3669 ahd_scb_disconnected_lists_print(u_int regvalue, u_int *cur_col, u_int wrap)
3670 {
3671 	return (ahd_print_register(NULL, 0, "SCB_DISCONNECTED_LISTS",
3672 	    0x1b8, regvalue, cur_col, wrap));
3673 }
3674 
3675