ia64/kvm: compilation fix. export account_system_vtime.
[pv_ops_mirror.git] / drivers / scsi / aic7xxx / aic79xx_reg_print.c_shipped
blobc4c8a96bf5a36b53003f8ce15549760f94dfd134
1 /*
2  * DO NOT EDIT - This file is automatically generated
3  *               from the following source files:
4  *
5  * $Id: //depot/aic7xxx/aic7xxx/aic79xx.seq#120 $
6  * $Id: //depot/aic7xxx/aic7xxx/aic79xx.reg#77 $
7  */
9 #include "aic79xx_osm.h"
11 static const ahd_reg_parse_entry_t MODE_PTR_parse_table[] = {
12         { "SRC_MODE",           0x07, 0x07 },
13         { "DST_MODE",           0x70, 0x70 }
16 int
17 ahd_mode_ptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
19         return (ahd_print_register(MODE_PTR_parse_table, 2, "MODE_PTR",
20             0x00, regvalue, cur_col, wrap));
23 static const ahd_reg_parse_entry_t INTSTAT_parse_table[] = {
24         { "SPLTINT",            0x01, 0x01 },
25         { "CMDCMPLT",           0x02, 0x02 },
26         { "SEQINT",             0x04, 0x04 },
27         { "SCSIINT",            0x08, 0x08 },
28         { "PCIINT",             0x10, 0x10 },
29         { "SWTMINT",            0x20, 0x20 },
30         { "BRKADRINT",          0x40, 0x40 },
31         { "HWERRINT",           0x80, 0x80 },
32         { "INT_PEND",           0xff, 0xff }
35 int
36 ahd_intstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
38         return (ahd_print_register(INTSTAT_parse_table, 9, "INTSTAT",
39             0x01, regvalue, cur_col, wrap));
42 static const ahd_reg_parse_entry_t SEQINTCODE_parse_table[] = {
43         { "NO_SEQINT",          0x00, 0xff },
44         { "BAD_PHASE",          0x01, 0xff },
45         { "SEND_REJECT",        0x02, 0xff },
46         { "PROTO_VIOLATION",    0x03, 0xff },
47         { "NO_MATCH",           0x04, 0xff },
48         { "IGN_WIDE_RES",       0x05, 0xff },
49         { "PDATA_REINIT",       0x06, 0xff },
50         { "HOST_MSG_LOOP",      0x07, 0xff },
51         { "BAD_STATUS",         0x08, 0xff },
52         { "DATA_OVERRUN",       0x09, 0xff },
53         { "MKMSG_FAILED",       0x0a, 0xff },
54         { "MISSED_BUSFREE",     0x0b, 0xff },
55         { "DUMP_CARD_STATE",    0x0c, 0xff },
56         { "ILLEGAL_PHASE",      0x0d, 0xff },
57         { "INVALID_SEQINT",     0x0e, 0xff },
58         { "CFG4ISTAT_INTR",     0x0f, 0xff },
59         { "STATUS_OVERRUN",     0x10, 0xff },
60         { "CFG4OVERRUN",        0x11, 0xff },
61         { "ENTERING_NONPACK",   0x12, 0xff },
62         { "TASKMGMT_FUNC_COMPLETE",0x13, 0xff },
63         { "TASKMGMT_CMD_CMPLT_OKAY",0x14, 0xff },
64         { "TRACEPOINT0",        0x15, 0xff },
65         { "TRACEPOINT1",        0x16, 0xff },
66         { "TRACEPOINT2",        0x17, 0xff },
67         { "TRACEPOINT3",        0x18, 0xff },
68         { "SAW_HWERR",          0x19, 0xff },
69         { "BAD_SCB_STATUS",     0x1a, 0xff }
72 int
73 ahd_seqintcode_print(u_int regvalue, u_int *cur_col, u_int wrap)
75         return (ahd_print_register(SEQINTCODE_parse_table, 27, "SEQINTCODE",
76             0x02, regvalue, cur_col, wrap));
79 static const ahd_reg_parse_entry_t CLRINT_parse_table[] = {
80         { "CLRSPLTINT",         0x01, 0x01 },
81         { "CLRCMDINT",          0x02, 0x02 },
82         { "CLRSEQINT",          0x04, 0x04 },
83         { "CLRSCSIINT",         0x08, 0x08 },
84         { "CLRPCIINT",          0x10, 0x10 },
85         { "CLRSWTMINT",         0x20, 0x20 },
86         { "CLRBRKADRINT",       0x40, 0x40 },
87         { "CLRHWERRINT",        0x80, 0x80 }
90 int
91 ahd_clrint_print(u_int regvalue, u_int *cur_col, u_int wrap)
93         return (ahd_print_register(CLRINT_parse_table, 8, "CLRINT",
94             0x03, regvalue, cur_col, wrap));
97 static const ahd_reg_parse_entry_t ERROR_parse_table[] = {
98         { "DSCTMOUT",           0x02, 0x02 },
99         { "ILLOPCODE",          0x04, 0x04 },
100         { "SQPARERR",           0x08, 0x08 },
101         { "DPARERR",            0x10, 0x10 },
102         { "MPARERR",            0x20, 0x20 },
103         { "CIOACCESFAIL",       0x40, 0x40 },
104         { "CIOPARERR",          0x80, 0x80 }
108 ahd_error_print(u_int regvalue, u_int *cur_col, u_int wrap)
110         return (ahd_print_register(ERROR_parse_table, 7, "ERROR",
111             0x04, regvalue, cur_col, wrap));
114 static const ahd_reg_parse_entry_t HCNTRL_parse_table[] = {
115         { "CHIPRST",            0x01, 0x01 },
116         { "CHIPRSTACK",         0x01, 0x01 },
117         { "INTEN",              0x02, 0x02 },
118         { "PAUSE",              0x04, 0x04 },
119         { "SWTIMER_START_B",    0x08, 0x08 },
120         { "SWINT",              0x10, 0x10 },
121         { "POWRDN",             0x40, 0x40 },
122         { "SEQ_RESET",          0x80, 0x80 }
126 ahd_hcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
128         return (ahd_print_register(HCNTRL_parse_table, 8, "HCNTRL",
129             0x05, regvalue, cur_col, wrap));
133 ahd_hnscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
135         return (ahd_print_register(NULL, 0, "HNSCB_QOFF",
136             0x06, regvalue, cur_col, wrap));
140 ahd_hescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
142         return (ahd_print_register(NULL, 0, "HESCB_QOFF",
143             0x08, regvalue, cur_col, wrap));
146 static const ahd_reg_parse_entry_t HS_MAILBOX_parse_table[] = {
147         { "ENINT_COALESCE",     0x40, 0x40 },
148         { "HOST_TQINPOS",       0x80, 0x80 }
152 ahd_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)
154         return (ahd_print_register(HS_MAILBOX_parse_table, 2, "HS_MAILBOX",
155             0x0b, regvalue, cur_col, wrap));
158 static const ahd_reg_parse_entry_t SEQINTSTAT_parse_table[] = {
159         { "SEQ_SPLTINT",        0x01, 0x01 },
160         { "SEQ_PCIINT",         0x02, 0x02 },
161         { "SEQ_SCSIINT",        0x04, 0x04 },
162         { "SEQ_SEQINT",         0x08, 0x08 },
163         { "SEQ_SWTMRTO",        0x10, 0x10 }
167 ahd_seqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
169         return (ahd_print_register(SEQINTSTAT_parse_table, 5, "SEQINTSTAT",
170             0x0c, regvalue, cur_col, wrap));
173 static const ahd_reg_parse_entry_t CLRSEQINTSTAT_parse_table[] = {
174         { "CLRSEQ_SPLTINT",     0x01, 0x01 },
175         { "CLRSEQ_PCIINT",      0x02, 0x02 },
176         { "CLRSEQ_SCSIINT",     0x04, 0x04 },
177         { "CLRSEQ_SEQINT",      0x08, 0x08 },
178         { "CLRSEQ_SWTMRTO",     0x10, 0x10 }
182 ahd_clrseqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
184         return (ahd_print_register(CLRSEQINTSTAT_parse_table, 5, "CLRSEQINTSTAT",
185             0x0c, regvalue, cur_col, wrap));
189 ahd_swtimer_print(u_int regvalue, u_int *cur_col, u_int wrap)
191         return (ahd_print_register(NULL, 0, "SWTIMER",
192             0x0e, regvalue, cur_col, wrap));
196 ahd_snscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
198         return (ahd_print_register(NULL, 0, "SNSCB_QOFF",
199             0x10, regvalue, cur_col, wrap));
203 ahd_sescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
205         return (ahd_print_register(NULL, 0, "SESCB_QOFF",
206             0x12, regvalue, cur_col, wrap));
210 ahd_sdscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
212         return (ahd_print_register(NULL, 0, "SDSCB_QOFF",
213             0x14, regvalue, cur_col, wrap));
216 static const ahd_reg_parse_entry_t QOFF_CTLSTA_parse_table[] = {
217         { "SCB_QSIZE_4",        0x00, 0x0f },
218         { "SCB_QSIZE_8",        0x01, 0x0f },
219         { "SCB_QSIZE_16",       0x02, 0x0f },
220         { "SCB_QSIZE_32",       0x03, 0x0f },
221         { "SCB_QSIZE_64",       0x04, 0x0f },
222         { "SCB_QSIZE_128",      0x05, 0x0f },
223         { "SCB_QSIZE_256",      0x06, 0x0f },
224         { "SCB_QSIZE_512",      0x07, 0x0f },
225         { "SCB_QSIZE_1024",     0x08, 0x0f },
226         { "SCB_QSIZE_2048",     0x09, 0x0f },
227         { "SCB_QSIZE_4096",     0x0a, 0x0f },
228         { "SCB_QSIZE_8192",     0x0b, 0x0f },
229         { "SCB_QSIZE_16384",    0x0c, 0x0f },
230         { "SCB_QSIZE",          0x0f, 0x0f },
231         { "HS_MAILBOX_ACT",     0x10, 0x10 },
232         { "SDSCB_ROLLOVR",      0x20, 0x20 },
233         { "NEW_SCB_AVAIL",      0x40, 0x40 },
234         { "EMPTY_SCB_AVAIL",    0x80, 0x80 }
238 ahd_qoff_ctlsta_print(u_int regvalue, u_int *cur_col, u_int wrap)
240         return (ahd_print_register(QOFF_CTLSTA_parse_table, 18, "QOFF_CTLSTA",
241             0x16, regvalue, cur_col, wrap));
244 static const ahd_reg_parse_entry_t INTCTL_parse_table[] = {
245         { "SPLTINTEN",          0x01, 0x01 },
246         { "SEQINTEN",           0x02, 0x02 },
247         { "SCSIINTEN",          0x04, 0x04 },
248         { "PCIINTEN",           0x08, 0x08 },
249         { "AUTOCLRCMDINT",      0x10, 0x10 },
250         { "SWTIMER_START",      0x20, 0x20 },
251         { "SWTMINTEN",          0x40, 0x40 },
252         { "SWTMINTMASK",        0x80, 0x80 }
256 ahd_intctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
258         return (ahd_print_register(INTCTL_parse_table, 8, "INTCTL",
259             0x18, regvalue, cur_col, wrap));
262 static const ahd_reg_parse_entry_t DFCNTRL_parse_table[] = {
263         { "DIRECTIONEN",        0x01, 0x01 },
264         { "FIFOFLUSH",          0x02, 0x02 },
265         { "FIFOFLUSHACK",       0x02, 0x02 },
266         { "DIRECTION",          0x04, 0x04 },
267         { "DIRECTIONACK",       0x04, 0x04 },
268         { "HDMAEN",             0x08, 0x08 },
269         { "HDMAENACK",          0x08, 0x08 },
270         { "SCSIEN",             0x20, 0x20 },
271         { "SCSIENACK",          0x20, 0x20 },
272         { "SCSIENWRDIS",        0x40, 0x40 },
273         { "PRELOADEN",          0x80, 0x80 }
277 ahd_dfcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
279         return (ahd_print_register(DFCNTRL_parse_table, 11, "DFCNTRL",
280             0x19, regvalue, cur_col, wrap));
283 static const ahd_reg_parse_entry_t DSCOMMAND0_parse_table[] = {
284         { "CIOPARCKEN",         0x01, 0x01 },
285         { "DISABLE_TWATE",      0x02, 0x02 },
286         { "EXTREQLCK",          0x10, 0x10 },
287         { "MPARCKEN",           0x20, 0x20 },
288         { "DPARCKEN",           0x40, 0x40 },
289         { "CACHETHEN",          0x80, 0x80 }
293 ahd_dscommand0_print(u_int regvalue, u_int *cur_col, u_int wrap)
295         return (ahd_print_register(DSCOMMAND0_parse_table, 6, "DSCOMMAND0",
296             0x19, regvalue, cur_col, wrap));
299 static const ahd_reg_parse_entry_t DFSTATUS_parse_table[] = {
300         { "FIFOEMP",            0x01, 0x01 },
301         { "FIFOFULL",           0x02, 0x02 },
302         { "DFTHRESH",           0x04, 0x04 },
303         { "HDONE",              0x08, 0x08 },
304         { "MREQPEND",           0x10, 0x10 },
305         { "PKT_PRELOAD_AVAIL",  0x40, 0x40 },
306         { "PRELOAD_AVAIL",      0x80, 0x80 }
310 ahd_dfstatus_print(u_int regvalue, u_int *cur_col, u_int wrap)
312         return (ahd_print_register(DFSTATUS_parse_table, 7, "DFSTATUS",
313             0x1a, regvalue, cur_col, wrap));
316 static const ahd_reg_parse_entry_t SG_CACHE_SHADOW_parse_table[] = {
317         { "LAST_SEG_DONE",      0x01, 0x01 },
318         { "LAST_SEG",           0x02, 0x02 },
319         { "ODD_SEG",            0x04, 0x04 },
320         { "SG_ADDR_MASK",       0xf8, 0xf8 }
324 ahd_sg_cache_shadow_print(u_int regvalue, u_int *cur_col, u_int wrap)
326         return (ahd_print_register(SG_CACHE_SHADOW_parse_table, 4, "SG_CACHE_SHADOW",
327             0x1b, regvalue, cur_col, wrap));
330 static const ahd_reg_parse_entry_t SG_CACHE_PRE_parse_table[] = {
331         { "LAST_SEG",           0x02, 0x02 },
332         { "ODD_SEG",            0x04, 0x04 },
333         { "SG_ADDR_MASK",       0xf8, 0xf8 }
337 ahd_sg_cache_pre_print(u_int regvalue, u_int *cur_col, u_int wrap)
339         return (ahd_print_register(SG_CACHE_PRE_parse_table, 3, "SG_CACHE_PRE",
340             0x1b, regvalue, cur_col, wrap));
344 ahd_lqin_print(u_int regvalue, u_int *cur_col, u_int wrap)
346         return (ahd_print_register(NULL, 0, "LQIN",
347             0x20, regvalue, cur_col, wrap));
351 ahd_lunptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
353         return (ahd_print_register(NULL, 0, "LUNPTR",
354             0x22, regvalue, cur_col, wrap));
358 ahd_cmdlenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
360         return (ahd_print_register(NULL, 0, "CMDLENPTR",
361             0x25, regvalue, cur_col, wrap));
365 ahd_attrptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
367         return (ahd_print_register(NULL, 0, "ATTRPTR",
368             0x26, regvalue, cur_col, wrap));
372 ahd_flagptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
374         return (ahd_print_register(NULL, 0, "FLAGPTR",
375             0x27, regvalue, cur_col, wrap));
379 ahd_cmdptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
381         return (ahd_print_register(NULL, 0, "CMDPTR",
382             0x28, regvalue, cur_col, wrap));
386 ahd_qnextptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
388         return (ahd_print_register(NULL, 0, "QNEXTPTR",
389             0x29, regvalue, cur_col, wrap));
393 ahd_abrtbyteptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
395         return (ahd_print_register(NULL, 0, "ABRTBYTEPTR",
396             0x2b, regvalue, cur_col, wrap));
400 ahd_abrtbitptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
402         return (ahd_print_register(NULL, 0, "ABRTBITPTR",
403             0x2c, regvalue, cur_col, wrap));
406 static const ahd_reg_parse_entry_t LUNLEN_parse_table[] = {
407         { "ILUNLEN",            0x0f, 0x0f },
408         { "TLUNLEN",            0xf0, 0xf0 }
412 ahd_lunlen_print(u_int regvalue, u_int *cur_col, u_int wrap)
414         return (ahd_print_register(LUNLEN_parse_table, 2, "LUNLEN",
415             0x30, regvalue, cur_col, wrap));
419 ahd_cdblimit_print(u_int regvalue, u_int *cur_col, u_int wrap)
421         return (ahd_print_register(NULL, 0, "CDBLIMIT",
422             0x31, regvalue, cur_col, wrap));
426 ahd_maxcmd_print(u_int regvalue, u_int *cur_col, u_int wrap)
428         return (ahd_print_register(NULL, 0, "MAXCMD",
429             0x32, regvalue, cur_col, wrap));
433 ahd_maxcmdcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
435         return (ahd_print_register(NULL, 0, "MAXCMDCNT",
436             0x33, regvalue, cur_col, wrap));
439 static const ahd_reg_parse_entry_t LQCTL1_parse_table[] = {
440         { "ABORTPENDING",       0x01, 0x01 },
441         { "SINGLECMD",          0x02, 0x02 },
442         { "PCI2PCI",            0x04, 0x04 }
446 ahd_lqctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
448         return (ahd_print_register(LQCTL1_parse_table, 3, "LQCTL1",
449             0x38, regvalue, cur_col, wrap));
452 static const ahd_reg_parse_entry_t LQCTL2_parse_table[] = {
453         { "LQOPAUSE",           0x01, 0x01 },
454         { "LQOTOIDLE",          0x02, 0x02 },
455         { "LQOCONTINUE",        0x04, 0x04 },
456         { "LQORETRY",           0x08, 0x08 },
457         { "LQIPAUSE",           0x10, 0x10 },
458         { "LQITOIDLE",          0x20, 0x20 },
459         { "LQICONTINUE",        0x40, 0x40 },
460         { "LQIRETRY",           0x80, 0x80 }
464 ahd_lqctl2_print(u_int regvalue, u_int *cur_col, u_int wrap)
466         return (ahd_print_register(LQCTL2_parse_table, 8, "LQCTL2",
467             0x39, regvalue, cur_col, wrap));
470 static const ahd_reg_parse_entry_t SCSISEQ0_parse_table[] = {
471         { "SCSIRSTO",           0x01, 0x01 },
472         { "FORCEBUSFREE",       0x10, 0x10 },
473         { "ENARBO",             0x20, 0x20 },
474         { "ENSELO",             0x40, 0x40 },
475         { "TEMODEO",            0x80, 0x80 }
479 ahd_scsiseq0_print(u_int regvalue, u_int *cur_col, u_int wrap)
481         return (ahd_print_register(SCSISEQ0_parse_table, 5, "SCSISEQ0",
482             0x3a, regvalue, cur_col, wrap));
485 static const ahd_reg_parse_entry_t SCSISEQ1_parse_table[] = {
486         { "ALTSTIM",            0x01, 0x01 },
487         { "ENAUTOATNP",         0x02, 0x02 },
488         { "MANUALP",            0x0c, 0x0c },
489         { "ENRSELI",            0x10, 0x10 },
490         { "ENSELI",             0x20, 0x20 },
491         { "MANUALCTL",          0x40, 0x40 }
495 ahd_scsiseq1_print(u_int regvalue, u_int *cur_col, u_int wrap)
497         return (ahd_print_register(SCSISEQ1_parse_table, 6, "SCSISEQ1",
498             0x3b, regvalue, cur_col, wrap));
501 static const ahd_reg_parse_entry_t SXFRCTL0_parse_table[] = {
502         { "SPIOEN",             0x08, 0x08 },
503         { "BIOSCANCELEN",       0x10, 0x10 },
504         { "DFPEXP",             0x40, 0x40 },
505         { "DFON",               0x80, 0x80 }
509 ahd_sxfrctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
511         return (ahd_print_register(SXFRCTL0_parse_table, 4, "SXFRCTL0",
512             0x3c, regvalue, cur_col, wrap));
515 static const ahd_reg_parse_entry_t SXFRCTL1_parse_table[] = {
516         { "STPWEN",             0x01, 0x01 },
517         { "ACTNEGEN",           0x02, 0x02 },
518         { "ENSTIMER",           0x04, 0x04 },
519         { "STIMESEL",           0x18, 0x18 },
520         { "ENSPCHK",            0x20, 0x20 },
521         { "ENSACHK",            0x40, 0x40 },
522         { "BITBUCKET",          0x80, 0x80 }
526 ahd_sxfrctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
528         return (ahd_print_register(SXFRCTL1_parse_table, 7, "SXFRCTL1",
529             0x3d, regvalue, cur_col, wrap));
532 static const ahd_reg_parse_entry_t DFFSTAT_parse_table[] = {
533         { "CURRFIFO_0",         0x00, 0x03 },
534         { "CURRFIFO_1",         0x01, 0x03 },
535         { "CURRFIFO_NONE",      0x03, 0x03 },
536         { "FIFO0FREE",          0x10, 0x10 },
537         { "FIFO1FREE",          0x20, 0x20 },
538         { "CURRFIFO",           0x03, 0x03 }
542 ahd_dffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
544         return (ahd_print_register(DFFSTAT_parse_table, 6, "DFFSTAT",
545             0x3f, regvalue, cur_col, wrap));
549 ahd_multargid_print(u_int regvalue, u_int *cur_col, u_int wrap)
551         return (ahd_print_register(NULL, 0, "MULTARGID",
552             0x40, regvalue, cur_col, wrap));
555 static const ahd_reg_parse_entry_t SCSISIGO_parse_table[] = {
556         { "P_DATAOUT",          0x00, 0xe0 },
557         { "P_DATAOUT_DT",       0x20, 0xe0 },
558         { "P_DATAIN",           0x40, 0xe0 },
559         { "P_DATAIN_DT",        0x60, 0xe0 },
560         { "P_COMMAND",          0x80, 0xe0 },
561         { "P_MESGOUT",          0xa0, 0xe0 },
562         { "P_STATUS",           0xc0, 0xe0 },
563         { "P_MESGIN",           0xe0, 0xe0 },
564         { "ACKO",               0x01, 0x01 },
565         { "REQO",               0x02, 0x02 },
566         { "BSYO",               0x04, 0x04 },
567         { "SELO",               0x08, 0x08 },
568         { "ATNO",               0x10, 0x10 },
569         { "MSGO",               0x20, 0x20 },
570         { "IOO",                0x40, 0x40 },
571         { "CDO",                0x80, 0x80 },
572         { "PHASE_MASK",         0xe0, 0xe0 }
576 ahd_scsisigo_print(u_int regvalue, u_int *cur_col, u_int wrap)
578         return (ahd_print_register(SCSISIGO_parse_table, 17, "SCSISIGO",
579             0x40, regvalue, cur_col, wrap));
582 static const ahd_reg_parse_entry_t SCSISIGI_parse_table[] = {
583         { "P_DATAOUT",          0x00, 0xe0 },
584         { "P_DATAOUT_DT",       0x20, 0xe0 },
585         { "P_DATAIN",           0x40, 0xe0 },
586         { "P_DATAIN_DT",        0x60, 0xe0 },
587         { "P_COMMAND",          0x80, 0xe0 },
588         { "P_MESGOUT",          0xa0, 0xe0 },
589         { "P_STATUS",           0xc0, 0xe0 },
590         { "P_MESGIN",           0xe0, 0xe0 },
591         { "ACKI",               0x01, 0x01 },
592         { "REQI",               0x02, 0x02 },
593         { "BSYI",               0x04, 0x04 },
594         { "SELI",               0x08, 0x08 },
595         { "ATNI",               0x10, 0x10 },
596         { "MSGI",               0x20, 0x20 },
597         { "IOI",                0x40, 0x40 },
598         { "CDI",                0x80, 0x80 },
599         { "PHASE_MASK",         0xe0, 0xe0 }
603 ahd_scsisigi_print(u_int regvalue, u_int *cur_col, u_int wrap)
605         return (ahd_print_register(SCSISIGI_parse_table, 17, "SCSISIGI",
606             0x41, regvalue, cur_col, wrap));
609 static const ahd_reg_parse_entry_t SCSIPHASE_parse_table[] = {
610         { "DATA_OUT_PHASE",     0x01, 0x03 },
611         { "DATA_IN_PHASE",      0x02, 0x03 },
612         { "DATA_PHASE_MASK",    0x03, 0x03 },
613         { "MSG_OUT_PHASE",      0x04, 0x04 },
614         { "MSG_IN_PHASE",       0x08, 0x08 },
615         { "COMMAND_PHASE",      0x10, 0x10 },
616         { "STATUS_PHASE",       0x20, 0x20 }
620 ahd_scsiphase_print(u_int regvalue, u_int *cur_col, u_int wrap)
622         return (ahd_print_register(SCSIPHASE_parse_table, 7, "SCSIPHASE",
623             0x42, regvalue, cur_col, wrap));
627 ahd_scsidat_print(u_int regvalue, u_int *cur_col, u_int wrap)
629         return (ahd_print_register(NULL, 0, "SCSIDAT",
630             0x44, regvalue, cur_col, wrap));
634 ahd_scsibus_print(u_int regvalue, u_int *cur_col, u_int wrap)
636         return (ahd_print_register(NULL, 0, "SCSIBUS",
637             0x46, regvalue, cur_col, wrap));
640 static const ahd_reg_parse_entry_t TARGIDIN_parse_table[] = {
641         { "TARGID",             0x0f, 0x0f },
642         { "CLKOUT",             0x80, 0x80 }
646 ahd_targidin_print(u_int regvalue, u_int *cur_col, u_int wrap)
648         return (ahd_print_register(TARGIDIN_parse_table, 2, "TARGIDIN",
649             0x48, regvalue, cur_col, wrap));
652 static const ahd_reg_parse_entry_t SELID_parse_table[] = {
653         { "ONEBIT",             0x08, 0x08 },
654         { "SELID_MASK",         0xf0, 0xf0 }
658 ahd_selid_print(u_int regvalue, u_int *cur_col, u_int wrap)
660         return (ahd_print_register(SELID_parse_table, 2, "SELID",
661             0x49, regvalue, cur_col, wrap));
664 static const ahd_reg_parse_entry_t OPTIONMODE_parse_table[] = {
665         { "AUTO_MSGOUT_DE",     0x02, 0x02 },
666         { "ENDGFORMCHK",        0x04, 0x04 },
667         { "BUSFREEREV",         0x10, 0x10 },
668         { "BIASCANCTL",         0x20, 0x20 },
669         { "AUTOACKEN",          0x40, 0x40 },
670         { "BIOSCANCTL",         0x80, 0x80 },
671         { "OPTIONMODE_DEFAULTS",0x02, 0x02 }
675 ahd_optionmode_print(u_int regvalue, u_int *cur_col, u_int wrap)
677         return (ahd_print_register(OPTIONMODE_parse_table, 7, "OPTIONMODE",
678             0x4a, regvalue, cur_col, wrap));
681 static const ahd_reg_parse_entry_t SBLKCTL_parse_table[] = {
682         { "SELWIDE",            0x02, 0x02 },
683         { "ENAB20",             0x04, 0x04 },
684         { "ENAB40",             0x08, 0x08 },
685         { "DIAGLEDON",          0x40, 0x40 },
686         { "DIAGLEDEN",          0x80, 0x80 }
690 ahd_sblkctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
692         return (ahd_print_register(SBLKCTL_parse_table, 5, "SBLKCTL",
693             0x4a, regvalue, cur_col, wrap));
696 static const ahd_reg_parse_entry_t SSTAT0_parse_table[] = {
697         { "ARBDO",              0x01, 0x01 },
698         { "SPIORDY",            0x02, 0x02 },
699         { "OVERRUN",            0x04, 0x04 },
700         { "IOERR",              0x08, 0x08 },
701         { "SELINGO",            0x10, 0x10 },
702         { "SELDI",              0x20, 0x20 },
703         { "SELDO",              0x40, 0x40 },
704         { "TARGET",             0x80, 0x80 }
708 ahd_sstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
710         return (ahd_print_register(SSTAT0_parse_table, 8, "SSTAT0",
711             0x4b, regvalue, cur_col, wrap));
714 static const ahd_reg_parse_entry_t SIMODE0_parse_table[] = {
715         { "ENARBDO",            0x01, 0x01 },
716         { "ENSPIORDY",          0x02, 0x02 },
717         { "ENOVERRUN",          0x04, 0x04 },
718         { "ENIOERR",            0x08, 0x08 },
719         { "ENSELINGO",          0x10, 0x10 },
720         { "ENSELDI",            0x20, 0x20 },
721         { "ENSELDO",            0x40, 0x40 }
725 ahd_simode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
727         return (ahd_print_register(SIMODE0_parse_table, 7, "SIMODE0",
728             0x4b, regvalue, cur_col, wrap));
731 static const ahd_reg_parse_entry_t CLRSINT0_parse_table[] = {
732         { "CLRARBDO",           0x01, 0x01 },
733         { "CLRSPIORDY",         0x02, 0x02 },
734         { "CLROVERRUN",         0x04, 0x04 },
735         { "CLRIOERR",           0x08, 0x08 },
736         { "CLRSELINGO",         0x10, 0x10 },
737         { "CLRSELDI",           0x20, 0x20 },
738         { "CLRSELDO",           0x40, 0x40 }
742 ahd_clrsint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
744         return (ahd_print_register(CLRSINT0_parse_table, 7, "CLRSINT0",
745             0x4b, regvalue, cur_col, wrap));
748 static const ahd_reg_parse_entry_t SSTAT1_parse_table[] = {
749         { "REQINIT",            0x01, 0x01 },
750         { "STRB2FAST",          0x02, 0x02 },
751         { "SCSIPERR",           0x04, 0x04 },
752         { "BUSFREE",            0x08, 0x08 },
753         { "PHASEMIS",           0x10, 0x10 },
754         { "SCSIRSTI",           0x20, 0x20 },
755         { "ATNTARG",            0x40, 0x40 },
756         { "SELTO",              0x80, 0x80 }
760 ahd_sstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
762         return (ahd_print_register(SSTAT1_parse_table, 8, "SSTAT1",
763             0x4c, regvalue, cur_col, wrap));
766 static const ahd_reg_parse_entry_t CLRSINT1_parse_table[] = {
767         { "CLRREQINIT",         0x01, 0x01 },
768         { "CLRSTRB2FAST",       0x02, 0x02 },
769         { "CLRSCSIPERR",        0x04, 0x04 },
770         { "CLRBUSFREE",         0x08, 0x08 },
771         { "CLRSCSIRSTI",        0x20, 0x20 },
772         { "CLRATNO",            0x40, 0x40 },
773         { "CLRSELTIMEO",        0x80, 0x80 }
777 ahd_clrsint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
779         return (ahd_print_register(CLRSINT1_parse_table, 7, "CLRSINT1",
780             0x4c, regvalue, cur_col, wrap));
783 static const ahd_reg_parse_entry_t SSTAT2_parse_table[] = {
784         { "BUSFREE_LQO",        0x40, 0xc0 },
785         { "BUSFREE_DFF0",       0x80, 0xc0 },
786         { "BUSFREE_DFF1",       0xc0, 0xc0 },
787         { "DMADONE",            0x01, 0x01 },
788         { "SDONE",              0x02, 0x02 },
789         { "WIDE_RES",           0x04, 0x04 },
790         { "BSYX",               0x08, 0x08 },
791         { "EXP_ACTIVE",         0x10, 0x10 },
792         { "NONPACKREQ",         0x20, 0x20 },
793         { "BUSFREETIME",        0xc0, 0xc0 }
797 ahd_sstat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
799         return (ahd_print_register(SSTAT2_parse_table, 10, "SSTAT2",
800             0x4d, regvalue, cur_col, wrap));
803 static const ahd_reg_parse_entry_t CLRSINT2_parse_table[] = {
804         { "CLRDMADONE",         0x01, 0x01 },
805         { "CLRSDONE",           0x02, 0x02 },
806         { "CLRWIDE_RES",        0x04, 0x04 },
807         { "CLRNONPACKREQ",      0x20, 0x20 }
811 ahd_clrsint2_print(u_int regvalue, u_int *cur_col, u_int wrap)
813         return (ahd_print_register(CLRSINT2_parse_table, 4, "CLRSINT2",
814             0x4d, regvalue, cur_col, wrap));
817 static const ahd_reg_parse_entry_t PERRDIAG_parse_table[] = {
818         { "DTERR",              0x01, 0x01 },
819         { "DGFORMERR",          0x02, 0x02 },
820         { "CRCERR",             0x04, 0x04 },
821         { "AIPERR",             0x08, 0x08 },
822         { "PARITYERR",          0x10, 0x10 },
823         { "PREVPHASE",          0x20, 0x20 },
824         { "HIPERR",             0x40, 0x40 },
825         { "HIZERO",             0x80, 0x80 }
829 ahd_perrdiag_print(u_int regvalue, u_int *cur_col, u_int wrap)
831         return (ahd_print_register(PERRDIAG_parse_table, 8, "PERRDIAG",
832             0x4e, regvalue, cur_col, wrap));
836 ahd_lqistate_print(u_int regvalue, u_int *cur_col, u_int wrap)
838         return (ahd_print_register(NULL, 0, "LQISTATE",
839             0x4e, regvalue, cur_col, wrap));
843 ahd_soffcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
845         return (ahd_print_register(NULL, 0, "SOFFCNT",
846             0x4f, regvalue, cur_col, wrap));
850 ahd_lqostate_print(u_int regvalue, u_int *cur_col, u_int wrap)
852         return (ahd_print_register(NULL, 0, "LQOSTATE",
853             0x4f, regvalue, cur_col, wrap));
856 static const ahd_reg_parse_entry_t LQISTAT0_parse_table[] = {
857         { "LQIATNCMD",          0x01, 0x01 },
858         { "LQIATNLQ",           0x02, 0x02 },
859         { "LQIBADLQT",          0x04, 0x04 },
860         { "LQICRCT2",           0x08, 0x08 },
861         { "LQICRCT1",           0x10, 0x10 },
862         { "LQIATNQAS",          0x20, 0x20 }
866 ahd_lqistat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
868         return (ahd_print_register(LQISTAT0_parse_table, 6, "LQISTAT0",
869             0x50, regvalue, cur_col, wrap));
872 static const ahd_reg_parse_entry_t LQIMODE0_parse_table[] = {
873         { "ENLQIATNCMD",        0x01, 0x01 },
874         { "ENLQIATNLQ",         0x02, 0x02 },
875         { "ENLQIBADLQT",        0x04, 0x04 },
876         { "ENLQICRCT2",         0x08, 0x08 },
877         { "ENLQICRCT1",         0x10, 0x10 },
878         { "ENLQIATNQASK",       0x20, 0x20 }
882 ahd_lqimode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
884         return (ahd_print_register(LQIMODE0_parse_table, 6, "LQIMODE0",
885             0x50, regvalue, cur_col, wrap));
888 static const ahd_reg_parse_entry_t CLRLQIINT0_parse_table[] = {
889         { "CLRLQIATNCMD",       0x01, 0x01 },
890         { "CLRLQIATNLQ",        0x02, 0x02 },
891         { "CLRLQIBADLQT",       0x04, 0x04 },
892         { "CLRLQICRCT2",        0x08, 0x08 },
893         { "CLRLQICRCT1",        0x10, 0x10 },
894         { "CLRLQIATNQAS",       0x20, 0x20 }
898 ahd_clrlqiint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
900         return (ahd_print_register(CLRLQIINT0_parse_table, 6, "CLRLQIINT0",
901             0x50, regvalue, cur_col, wrap));
904 static const ahd_reg_parse_entry_t LQIMODE1_parse_table[] = {
905         { "ENLQIOVERI_NLQ",     0x01, 0x01 },
906         { "ENLQIOVERI_LQ",      0x02, 0x02 },
907         { "ENLQIBADLQI",        0x04, 0x04 },
908         { "ENLQICRCI_NLQ",      0x08, 0x08 },
909         { "ENLQICRCI_LQ",       0x10, 0x10 },
910         { "ENLIQABORT",         0x20, 0x20 },
911         { "ENLQIPHASE_NLQ",     0x40, 0x40 },
912         { "ENLQIPHASE_LQ",      0x80, 0x80 }
916 ahd_lqimode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
918         return (ahd_print_register(LQIMODE1_parse_table, 8, "LQIMODE1",
919             0x51, regvalue, cur_col, wrap));
922 static const ahd_reg_parse_entry_t LQISTAT1_parse_table[] = {
923         { "LQIOVERI_NLQ",       0x01, 0x01 },
924         { "LQIOVERI_LQ",        0x02, 0x02 },
925         { "LQIBADLQI",          0x04, 0x04 },
926         { "LQICRCI_NLQ",        0x08, 0x08 },
927         { "LQICRCI_LQ",         0x10, 0x10 },
928         { "LQIABORT",           0x20, 0x20 },
929         { "LQIPHASE_NLQ",       0x40, 0x40 },
930         { "LQIPHASE_LQ",        0x80, 0x80 }
934 ahd_lqistat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
936         return (ahd_print_register(LQISTAT1_parse_table, 8, "LQISTAT1",
937             0x51, regvalue, cur_col, wrap));
940 static const ahd_reg_parse_entry_t CLRLQIINT1_parse_table[] = {
941         { "CLRLQIOVERI_NLQ",    0x01, 0x01 },
942         { "CLRLQIOVERI_LQ",     0x02, 0x02 },
943         { "CLRLQIBADLQI",       0x04, 0x04 },
944         { "CLRLQICRCI_NLQ",     0x08, 0x08 },
945         { "CLRLQICRCI_LQ",      0x10, 0x10 },
946         { "CLRLIQABORT",        0x20, 0x20 },
947         { "CLRLQIPHASE_NLQ",    0x40, 0x40 },
948         { "CLRLQIPHASE_LQ",     0x80, 0x80 }
952 ahd_clrlqiint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
954         return (ahd_print_register(CLRLQIINT1_parse_table, 8, "CLRLQIINT1",
955             0x51, regvalue, cur_col, wrap));
958 static const ahd_reg_parse_entry_t LQISTAT2_parse_table[] = {
959         { "LQIGSAVAIL",         0x01, 0x01 },
960         { "LQISTOPCMD",         0x02, 0x02 },
961         { "LQISTOPLQ",          0x04, 0x04 },
962         { "LQISTOPPKT",         0x08, 0x08 },
963         { "LQIWAITFIFO",        0x10, 0x10 },
964         { "LQIWORKONLQ",        0x20, 0x20 },
965         { "LQIPHASE_OUTPKT",    0x40, 0x40 },
966         { "PACKETIZED",         0x80, 0x80 }
970 ahd_lqistat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
972         return (ahd_print_register(LQISTAT2_parse_table, 8, "LQISTAT2",
973             0x52, regvalue, cur_col, wrap));
976 static const ahd_reg_parse_entry_t SSTAT3_parse_table[] = {
977         { "OSRAMPERR",          0x01, 0x01 },
978         { "NTRAMPERR",          0x02, 0x02 }
982 ahd_sstat3_print(u_int regvalue, u_int *cur_col, u_int wrap)
984         return (ahd_print_register(SSTAT3_parse_table, 2, "SSTAT3",
985             0x53, regvalue, cur_col, wrap));
988 static const ahd_reg_parse_entry_t SIMODE3_parse_table[] = {
989         { "ENOSRAMPERR",        0x01, 0x01 },
990         { "ENNTRAMPERR",        0x02, 0x02 }
994 ahd_simode3_print(u_int regvalue, u_int *cur_col, u_int wrap)
996         return (ahd_print_register(SIMODE3_parse_table, 2, "SIMODE3",
997             0x53, regvalue, cur_col, wrap));
1000 static const ahd_reg_parse_entry_t CLRSINT3_parse_table[] = {
1001         { "CLROSRAMPERR",       0x01, 0x01 },
1002         { "CLRNTRAMPERR",       0x02, 0x02 }
1006 ahd_clrsint3_print(u_int regvalue, u_int *cur_col, u_int wrap)
1008         return (ahd_print_register(CLRSINT3_parse_table, 2, "CLRSINT3",
1009             0x53, regvalue, cur_col, wrap));
1012 static const ahd_reg_parse_entry_t LQOSTAT0_parse_table[] = {
1013         { "LQOTCRC",            0x01, 0x01 },
1014         { "LQOATNPKT",          0x02, 0x02 },
1015         { "LQOATNLQ",           0x04, 0x04 },
1016         { "LQOSTOPT2",          0x08, 0x08 },
1017         { "LQOTARGSCBPERR",     0x10, 0x10 }
1021 ahd_lqostat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1023         return (ahd_print_register(LQOSTAT0_parse_table, 5, "LQOSTAT0",
1024             0x54, regvalue, cur_col, wrap));
1027 static const ahd_reg_parse_entry_t CLRLQOINT0_parse_table[] = {
1028         { "CLRLQOTCRC",         0x01, 0x01 },
1029         { "CLRLQOATNPKT",       0x02, 0x02 },
1030         { "CLRLQOATNLQ",        0x04, 0x04 },
1031         { "CLRLQOSTOPT2",       0x08, 0x08 },
1032         { "CLRLQOTARGSCBPERR",  0x10, 0x10 }
1036 ahd_clrlqoint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1038         return (ahd_print_register(CLRLQOINT0_parse_table, 5, "CLRLQOINT0",
1039             0x54, regvalue, cur_col, wrap));
1042 static const ahd_reg_parse_entry_t LQOMODE0_parse_table[] = {
1043         { "ENLQOTCRC",          0x01, 0x01 },
1044         { "ENLQOATNPKT",        0x02, 0x02 },
1045         { "ENLQOATNLQ",         0x04, 0x04 },
1046         { "ENLQOSTOPT2",        0x08, 0x08 },
1047         { "ENLQOTARGSCBPERR",   0x10, 0x10 }
1051 ahd_lqomode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1053         return (ahd_print_register(LQOMODE0_parse_table, 5, "LQOMODE0",
1054             0x54, regvalue, cur_col, wrap));
1057 static const ahd_reg_parse_entry_t LQOMODE1_parse_table[] = {
1058         { "ENLQOPHACHGINPKT",   0x01, 0x01 },
1059         { "ENLQOBUSFREE",       0x02, 0x02 },
1060         { "ENLQOBADQAS",        0x04, 0x04 },
1061         { "ENLQOSTOPI2",        0x08, 0x08 },
1062         { "ENLQOINITSCBPERR",   0x10, 0x10 }
1066 ahd_lqomode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1068         return (ahd_print_register(LQOMODE1_parse_table, 5, "LQOMODE1",
1069             0x55, regvalue, cur_col, wrap));
1072 static const ahd_reg_parse_entry_t LQOSTAT1_parse_table[] = {
1073         { "LQOPHACHGINPKT",     0x01, 0x01 },
1074         { "LQOBUSFREE",         0x02, 0x02 },
1075         { "LQOBADQAS",          0x04, 0x04 },
1076         { "LQOSTOPI2",          0x08, 0x08 },
1077         { "LQOINITSCBPERR",     0x10, 0x10 }
1081 ahd_lqostat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1083         return (ahd_print_register(LQOSTAT1_parse_table, 5, "LQOSTAT1",
1084             0x55, regvalue, cur_col, wrap));
1087 static const ahd_reg_parse_entry_t CLRLQOINT1_parse_table[] = {
1088         { "CLRLQOPHACHGINPKT",  0x01, 0x01 },
1089         { "CLRLQOBUSFREE",      0x02, 0x02 },
1090         { "CLRLQOBADQAS",       0x04, 0x04 },
1091         { "CLRLQOSTOPI2",       0x08, 0x08 },
1092         { "CLRLQOINITSCBPERR",  0x10, 0x10 }
1096 ahd_clrlqoint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1098         return (ahd_print_register(CLRLQOINT1_parse_table, 5, "CLRLQOINT1",
1099             0x55, regvalue, cur_col, wrap));
1102 static const ahd_reg_parse_entry_t LQOSTAT2_parse_table[] = {
1103         { "LQOSTOP0",           0x01, 0x01 },
1104         { "LQOPHACHGOUTPKT",    0x02, 0x02 },
1105         { "LQOWAITFIFO",        0x10, 0x10 },
1106         { "LQOPKT",             0xe0, 0xe0 }
1110 ahd_lqostat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
1112         return (ahd_print_register(LQOSTAT2_parse_table, 4, "LQOSTAT2",
1113             0x56, regvalue, cur_col, wrap));
1117 ahd_os_space_cnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1119         return (ahd_print_register(NULL, 0, "OS_SPACE_CNT",
1120             0x56, regvalue, cur_col, wrap));
1123 static const ahd_reg_parse_entry_t SIMODE1_parse_table[] = {
1124         { "ENREQINIT",          0x01, 0x01 },
1125         { "ENSTRB2FAST",        0x02, 0x02 },
1126         { "ENSCSIPERR",         0x04, 0x04 },
1127         { "ENBUSFREE",          0x08, 0x08 },
1128         { "ENPHASEMIS",         0x10, 0x10 },
1129         { "ENSCSIRST",          0x20, 0x20 },
1130         { "ENATNTARG",          0x40, 0x40 },
1131         { "ENSELTIMO",          0x80, 0x80 }
1135 ahd_simode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1137         return (ahd_print_register(SIMODE1_parse_table, 8, "SIMODE1",
1138             0x57, regvalue, cur_col, wrap));
1142 ahd_gsfifo_print(u_int regvalue, u_int *cur_col, u_int wrap)
1144         return (ahd_print_register(NULL, 0, "GSFIFO",
1145             0x58, regvalue, cur_col, wrap));
1148 static const ahd_reg_parse_entry_t DFFSXFRCTL_parse_table[] = {
1149         { "RSTCHN",             0x01, 0x01 },
1150         { "CLRCHN",             0x02, 0x02 },
1151         { "CLRSHCNT",           0x04, 0x04 },
1152         { "DFFBITBUCKET",       0x08, 0x08 }
1156 ahd_dffsxfrctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1158         return (ahd_print_register(DFFSXFRCTL_parse_table, 4, "DFFSXFRCTL",
1159             0x5a, regvalue, cur_col, wrap));
1162 static const ahd_reg_parse_entry_t LQOSCSCTL_parse_table[] = {
1163         { "LQONOCHKOVER",       0x01, 0x01 },
1164         { "LQONOHOLDLACK",      0x02, 0x02 },
1165         { "LQOBUSETDLY",        0x40, 0x40 },
1166         { "LQOH2A_VERSION",     0x80, 0x80 }
1170 ahd_lqoscsctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1172         return (ahd_print_register(LQOSCSCTL_parse_table, 4, "LQOSCSCTL",
1173             0x5a, regvalue, cur_col, wrap));
1177 ahd_nextscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
1179         return (ahd_print_register(NULL, 0, "NEXTSCB",
1180             0x5a, regvalue, cur_col, wrap));
1183 static const ahd_reg_parse_entry_t CLRSEQINTSRC_parse_table[] = {
1184         { "CLRCFG4TCMD",        0x01, 0x01 },
1185         { "CLRCFG4ICMD",        0x02, 0x02 },
1186         { "CLRCFG4TSTAT",       0x04, 0x04 },
1187         { "CLRCFG4ISTAT",       0x08, 0x08 },
1188         { "CLRCFG4DATA",        0x10, 0x10 },
1189         { "CLRSAVEPTRS",        0x20, 0x20 },
1190         { "CLRCTXTDONE",        0x40, 0x40 }
1194 ahd_clrseqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)
1196         return (ahd_print_register(CLRSEQINTSRC_parse_table, 7, "CLRSEQINTSRC",
1197             0x5b, regvalue, cur_col, wrap));
1200 static const ahd_reg_parse_entry_t SEQINTSRC_parse_table[] = {
1201         { "CFG4TCMD",           0x01, 0x01 },
1202         { "CFG4ICMD",           0x02, 0x02 },
1203         { "CFG4TSTAT",          0x04, 0x04 },
1204         { "CFG4ISTAT",          0x08, 0x08 },
1205         { "CFG4DATA",           0x10, 0x10 },
1206         { "SAVEPTRS",           0x20, 0x20 },
1207         { "CTXTDONE",           0x40, 0x40 }
1211 ahd_seqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)
1213         return (ahd_print_register(SEQINTSRC_parse_table, 7, "SEQINTSRC",
1214             0x5b, regvalue, cur_col, wrap));
1217 static const ahd_reg_parse_entry_t SEQIMODE_parse_table[] = {
1218         { "ENCFG4TCMD",         0x01, 0x01 },
1219         { "ENCFG4ICMD",         0x02, 0x02 },
1220         { "ENCFG4TSTAT",        0x04, 0x04 },
1221         { "ENCFG4ISTAT",        0x08, 0x08 },
1222         { "ENCFG4DATA",         0x10, 0x10 },
1223         { "ENSAVEPTRS",         0x20, 0x20 },
1224         { "ENCTXTDONE",         0x40, 0x40 }
1228 ahd_seqimode_print(u_int regvalue, u_int *cur_col, u_int wrap)
1230         return (ahd_print_register(SEQIMODE_parse_table, 7, "SEQIMODE",
1231             0x5c, regvalue, cur_col, wrap));
1235 ahd_currscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
1237         return (ahd_print_register(NULL, 0, "CURRSCB",
1238             0x5c, regvalue, cur_col, wrap));
1241 static const ahd_reg_parse_entry_t MDFFSTAT_parse_table[] = {
1242         { "FIFOFREE",           0x01, 0x01 },
1243         { "DATAINFIFO",         0x02, 0x02 },
1244         { "DLZERO",             0x04, 0x04 },
1245         { "SHVALID",            0x08, 0x08 },
1246         { "LASTSDONE",          0x10, 0x10 },
1247         { "SHCNTMINUS1",        0x20, 0x20 },
1248         { "SHCNTNEGATIVE",      0x40, 0x40 }
1252 ahd_mdffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1254         return (ahd_print_register(MDFFSTAT_parse_table, 7, "MDFFSTAT",
1255             0x5d, regvalue, cur_col, wrap));
1259 ahd_lastscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
1261         return (ahd_print_register(NULL, 0, "LASTSCB",
1262             0x5e, regvalue, cur_col, wrap));
1266 ahd_shaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1268         return (ahd_print_register(NULL, 0, "SHADDR",
1269             0x60, regvalue, cur_col, wrap));
1273 ahd_negoaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1275         return (ahd_print_register(NULL, 0, "NEGOADDR",
1276             0x60, regvalue, cur_col, wrap));
1280 ahd_negperiod_print(u_int regvalue, u_int *cur_col, u_int wrap)
1282         return (ahd_print_register(NULL, 0, "NEGPERIOD",
1283             0x61, regvalue, cur_col, wrap));
1287 ahd_negoffset_print(u_int regvalue, u_int *cur_col, u_int wrap)
1289         return (ahd_print_register(NULL, 0, "NEGOFFSET",
1290             0x62, regvalue, cur_col, wrap));
1293 static const ahd_reg_parse_entry_t NEGPPROPTS_parse_table[] = {
1294         { "PPROPT_IUT",         0x01, 0x01 },
1295         { "PPROPT_DT",          0x02, 0x02 },
1296         { "PPROPT_QAS",         0x04, 0x04 },
1297         { "PPROPT_PACE",        0x08, 0x08 }
1301 ahd_negppropts_print(u_int regvalue, u_int *cur_col, u_int wrap)
1303         return (ahd_print_register(NEGPPROPTS_parse_table, 4, "NEGPPROPTS",
1304             0x63, regvalue, cur_col, wrap));
1307 static const ahd_reg_parse_entry_t NEGCONOPTS_parse_table[] = {
1308         { "WIDEXFER",           0x01, 0x01 },
1309         { "ENAUTOATNO",         0x02, 0x02 },
1310         { "ENAUTOATNI",         0x04, 0x04 },
1311         { "ENSLOWCRC",          0x08, 0x08 },
1312         { "RTI_OVRDTRN",        0x10, 0x10 },
1313         { "RTI_WRTDIS",         0x20, 0x20 },
1314         { "ENSNAPSHOT",         0x40, 0x40 }
1318 ahd_negconopts_print(u_int regvalue, u_int *cur_col, u_int wrap)
1320         return (ahd_print_register(NEGCONOPTS_parse_table, 7, "NEGCONOPTS",
1321             0x64, regvalue, cur_col, wrap));
1325 ahd_annexcol_print(u_int regvalue, u_int *cur_col, u_int wrap)
1327         return (ahd_print_register(NULL, 0, "ANNEXCOL",
1328             0x65, regvalue, cur_col, wrap));
1332 ahd_annexdat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1334         return (ahd_print_register(NULL, 0, "ANNEXDAT",
1335             0x66, regvalue, cur_col, wrap));
1338 static const ahd_reg_parse_entry_t SCSCHKN_parse_table[] = {
1339         { "LSTSGCLRDIS",        0x01, 0x01 },
1340         { "SHVALIDSTDIS",       0x02, 0x02 },
1341         { "DFFACTCLR",          0x04, 0x04 },
1342         { "SDONEMSKDIS",        0x08, 0x08 },
1343         { "WIDERESEN",          0x10, 0x10 },
1344         { "CURRFIFODEF",        0x20, 0x20 },
1345         { "STSELSKIDDIS",       0x40, 0x40 },
1346         { "BIDICHKDIS",         0x80, 0x80 }
1350 ahd_scschkn_print(u_int regvalue, u_int *cur_col, u_int wrap)
1352         return (ahd_print_register(SCSCHKN_parse_table, 8, "SCSCHKN",
1353             0x66, regvalue, cur_col, wrap));
1357 ahd_iownid_print(u_int regvalue, u_int *cur_col, u_int wrap)
1359         return (ahd_print_register(NULL, 0, "IOWNID",
1360             0x67, regvalue, cur_col, wrap));
1364 ahd_shcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1366         return (ahd_print_register(NULL, 0, "SHCNT",
1367             0x68, regvalue, cur_col, wrap));
1371 ahd_townid_print(u_int regvalue, u_int *cur_col, u_int wrap)
1373         return (ahd_print_register(NULL, 0, "TOWNID",
1374             0x69, regvalue, cur_col, wrap));
1378 ahd_seloid_print(u_int regvalue, u_int *cur_col, u_int wrap)
1380         return (ahd_print_register(NULL, 0, "SELOID",
1381             0x6b, regvalue, cur_col, wrap));
1385 ahd_haddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1387         return (ahd_print_register(NULL, 0, "HADDR",
1388             0x70, regvalue, cur_col, wrap));
1392 ahd_hcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1394         return (ahd_print_register(NULL, 0, "HCNT",
1395             0x78, regvalue, cur_col, wrap));
1399 ahd_sghaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1401         return (ahd_print_register(NULL, 0, "SGHADDR",
1402             0x7c, regvalue, cur_col, wrap));
1406 ahd_scbhaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1408         return (ahd_print_register(NULL, 0, "SCBHADDR",
1409             0x7c, regvalue, cur_col, wrap));
1413 ahd_sghcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1415         return (ahd_print_register(NULL, 0, "SGHCNT",
1416             0x84, regvalue, cur_col, wrap));
1420 ahd_scbhcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1422         return (ahd_print_register(NULL, 0, "SCBHCNT",
1423             0x84, regvalue, cur_col, wrap));
1426 static const ahd_reg_parse_entry_t DFF_THRSH_parse_table[] = {
1427         { "WR_DFTHRSH_MIN",     0x00, 0x70 },
1428         { "RD_DFTHRSH_MIN",     0x00, 0x07 },
1429         { "RD_DFTHRSH_25",      0x01, 0x07 },
1430         { "RD_DFTHRSH_50",      0x02, 0x07 },
1431         { "RD_DFTHRSH_63",      0x03, 0x07 },
1432         { "RD_DFTHRSH_75",      0x04, 0x07 },
1433         { "RD_DFTHRSH_85",      0x05, 0x07 },
1434         { "RD_DFTHRSH_90",      0x06, 0x07 },
1435         { "RD_DFTHRSH_MAX",     0x07, 0x07 },
1436         { "WR_DFTHRSH_25",      0x10, 0x70 },
1437         { "WR_DFTHRSH_50",      0x20, 0x70 },
1438         { "WR_DFTHRSH_63",      0x30, 0x70 },
1439         { "WR_DFTHRSH_75",      0x40, 0x70 },
1440         { "WR_DFTHRSH_85",      0x50, 0x70 },
1441         { "WR_DFTHRSH_90",      0x60, 0x70 },
1442         { "WR_DFTHRSH_MAX",     0x70, 0x70 },
1443         { "RD_DFTHRSH",         0x07, 0x07 },
1444         { "WR_DFTHRSH",         0x70, 0x70 }
1448 ahd_dff_thrsh_print(u_int regvalue, u_int *cur_col, u_int wrap)
1450         return (ahd_print_register(DFF_THRSH_parse_table, 18, "DFF_THRSH",
1451             0x88, regvalue, cur_col, wrap));
1454 static const ahd_reg_parse_entry_t PCIXCTL_parse_table[] = {
1455         { "CMPABCDIS",          0x01, 0x01 },
1456         { "TSCSERREN",          0x02, 0x02 },
1457         { "SRSPDPEEN",          0x04, 0x04 },
1458         { "SPLTSTADIS",         0x08, 0x08 },
1459         { "SPLTSMADIS",         0x10, 0x10 },
1460         { "UNEXPSCIEN",         0x20, 0x20 },
1461         { "SERRPULSE",          0x80, 0x80 }
1465 ahd_pcixctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1467         return (ahd_print_register(PCIXCTL_parse_table, 7, "PCIXCTL",
1468             0x93, regvalue, cur_col, wrap));
1471 static const ahd_reg_parse_entry_t DCHSPLTSTAT0_parse_table[] = {
1472         { "RXSPLTRSP",          0x01, 0x01 },
1473         { "RXSCEMSG",           0x02, 0x02 },
1474         { "RXOVRUN",            0x04, 0x04 },
1475         { "CNTNOTCMPLT",        0x08, 0x08 },
1476         { "SCDATBUCKET",        0x10, 0x10 },
1477         { "SCADERR",            0x20, 0x20 },
1478         { "SCBCERR",            0x40, 0x40 },
1479         { "STAETERM",           0x80, 0x80 }
1483 ahd_dchspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1485         return (ahd_print_register(DCHSPLTSTAT0_parse_table, 8, "DCHSPLTSTAT0",
1486             0x96, regvalue, cur_col, wrap));
1489 static const ahd_reg_parse_entry_t DCHSPLTSTAT1_parse_table[] = {
1490         { "RXDATABUCKET",       0x01, 0x01 }
1494 ahd_dchspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1496         return (ahd_print_register(DCHSPLTSTAT1_parse_table, 1, "DCHSPLTSTAT1",
1497             0x97, regvalue, cur_col, wrap));
1500 static const ahd_reg_parse_entry_t SGSPLTSTAT0_parse_table[] = {
1501         { "RXSPLTRSP",          0x01, 0x01 },
1502         { "RXSCEMSG",           0x02, 0x02 },
1503         { "RXOVRUN",            0x04, 0x04 },
1504         { "CNTNOTCMPLT",        0x08, 0x08 },
1505         { "SCDATBUCKET",        0x10, 0x10 },
1506         { "SCADERR",            0x20, 0x20 },
1507         { "SCBCERR",            0x40, 0x40 },
1508         { "STAETERM",           0x80, 0x80 }
1512 ahd_sgspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1514         return (ahd_print_register(SGSPLTSTAT0_parse_table, 8, "SGSPLTSTAT0",
1515             0x9e, regvalue, cur_col, wrap));
1518 static const ahd_reg_parse_entry_t SGSPLTSTAT1_parse_table[] = {
1519         { "RXDATABUCKET",       0x01, 0x01 }
1523 ahd_sgspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
1525         return (ahd_print_register(SGSPLTSTAT1_parse_table, 1, "SGSPLTSTAT1",
1526             0x9f, regvalue, cur_col, wrap));
1529 static const ahd_reg_parse_entry_t DF0PCISTAT_parse_table[] = {
1530         { "DPR",                0x01, 0x01 },
1531         { "TWATERR",            0x02, 0x02 },
1532         { "RDPERR",             0x04, 0x04 },
1533         { "SCAAPERR",           0x08, 0x08 },
1534         { "RTA",                0x10, 0x10 },
1535         { "RMA",                0x20, 0x20 },
1536         { "SSE",                0x40, 0x40 },
1537         { "DPE",                0x80, 0x80 }
1541 ahd_df0pcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1543         return (ahd_print_register(DF0PCISTAT_parse_table, 8, "DF0PCISTAT",
1544             0xa0, regvalue, cur_col, wrap));
1548 ahd_reg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1550         return (ahd_print_register(NULL, 0, "REG0",
1551             0xa0, regvalue, cur_col, wrap));
1555 ahd_reg_isr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1557         return (ahd_print_register(NULL, 0, "REG_ISR",
1558             0xa4, regvalue, cur_col, wrap));
1561 static const ahd_reg_parse_entry_t SG_STATE_parse_table[] = {
1562         { "SEGS_AVAIL",         0x01, 0x01 },
1563         { "LOADING_NEEDED",     0x02, 0x02 },
1564         { "FETCH_INPROG",       0x04, 0x04 }
1568 ahd_sg_state_print(u_int regvalue, u_int *cur_col, u_int wrap)
1570         return (ahd_print_register(SG_STATE_parse_table, 3, "SG_STATE",
1571             0xa6, regvalue, cur_col, wrap));
1574 static const ahd_reg_parse_entry_t TARGPCISTAT_parse_table[] = {
1575         { "TWATERR",            0x02, 0x02 },
1576         { "STA",                0x08, 0x08 },
1577         { "SSE",                0x40, 0x40 },
1578         { "DPE",                0x80, 0x80 }
1582 ahd_targpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1584         return (ahd_print_register(TARGPCISTAT_parse_table, 4, "TARGPCISTAT",
1585             0xa7, regvalue, cur_col, wrap));
1589 ahd_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1591         return (ahd_print_register(NULL, 0, "SCBPTR",
1592             0xa8, regvalue, cur_col, wrap));
1595 static const ahd_reg_parse_entry_t SCBAUTOPTR_parse_table[] = {
1596         { "SCBPTR_OFF",         0x07, 0x07 },
1597         { "SCBPTR_ADDR",        0x38, 0x38 },
1598         { "AUSCBPTR_EN",        0x80, 0x80 }
1602 ahd_scbautoptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1604         return (ahd_print_register(SCBAUTOPTR_parse_table, 3, "SCBAUTOPTR",
1605             0xab, regvalue, cur_col, wrap));
1609 ahd_ccsgaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1611         return (ahd_print_register(NULL, 0, "CCSGADDR",
1612             0xac, regvalue, cur_col, wrap));
1616 ahd_ccscbaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1618         return (ahd_print_register(NULL, 0, "CCSCBADDR",
1619             0xac, regvalue, cur_col, wrap));
1622 static const ahd_reg_parse_entry_t CCSCBCTL_parse_table[] = {
1623         { "CCSCBRESET",         0x01, 0x01 },
1624         { "CCSCBDIR",           0x04, 0x04 },
1625         { "CCSCBEN",            0x08, 0x08 },
1626         { "CCARREN",            0x10, 0x10 },
1627         { "ARRDONE",            0x40, 0x40 },
1628         { "CCSCBDONE",          0x80, 0x80 }
1632 ahd_ccscbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1634         return (ahd_print_register(CCSCBCTL_parse_table, 6, "CCSCBCTL",
1635             0xad, regvalue, cur_col, wrap));
1638 static const ahd_reg_parse_entry_t CCSGCTL_parse_table[] = {
1639         { "CCSGRESET",          0x01, 0x01 },
1640         { "SG_FETCH_REQ",       0x02, 0x02 },
1641         { "CCSGENACK",          0x08, 0x08 },
1642         { "SG_CACHE_AVAIL",     0x10, 0x10 },
1643         { "CCSGDONE",           0x80, 0x80 },
1644         { "CCSGEN",             0x0c, 0x0c }
1648 ahd_ccsgctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1650         return (ahd_print_register(CCSGCTL_parse_table, 6, "CCSGCTL",
1651             0xad, regvalue, cur_col, wrap));
1655 ahd_ccsgram_print(u_int regvalue, u_int *cur_col, u_int wrap)
1657         return (ahd_print_register(NULL, 0, "CCSGRAM",
1658             0xb0, regvalue, cur_col, wrap));
1662 ahd_ccscbram_print(u_int regvalue, u_int *cur_col, u_int wrap)
1664         return (ahd_print_register(NULL, 0, "CCSCBRAM",
1665             0xb0, regvalue, cur_col, wrap));
1669 ahd_brddat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1671         return (ahd_print_register(NULL, 0, "BRDDAT",
1672             0xb8, regvalue, cur_col, wrap));
1675 static const ahd_reg_parse_entry_t BRDCTL_parse_table[] = {
1676         { "BRDSTB",             0x01, 0x01 },
1677         { "BRDRW",              0x02, 0x02 },
1678         { "BRDEN",              0x04, 0x04 },
1679         { "BRDADDR",            0x38, 0x38 },
1680         { "FLXARBREQ",          0x40, 0x40 },
1681         { "FLXARBACK",          0x80, 0x80 }
1685 ahd_brdctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1687         return (ahd_print_register(BRDCTL_parse_table, 6, "BRDCTL",
1688             0xb9, regvalue, cur_col, wrap));
1692 ahd_seeadr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1694         return (ahd_print_register(NULL, 0, "SEEADR",
1695             0xba, regvalue, cur_col, wrap));
1699 ahd_seedat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1701         return (ahd_print_register(NULL, 0, "SEEDAT",
1702             0xbc, regvalue, cur_col, wrap));
1705 static const ahd_reg_parse_entry_t SEECTL_parse_table[] = {
1706         { "SEEOP_ERAL",         0x40, 0x70 },
1707         { "SEEOP_WRITE",        0x50, 0x70 },
1708         { "SEEOP_READ",         0x60, 0x70 },
1709         { "SEEOP_ERASE",        0x70, 0x70 },
1710         { "SEESTART",           0x01, 0x01 },
1711         { "SEERST",             0x02, 0x02 },
1712         { "SEEOPCODE",          0x70, 0x70 },
1713         { "SEEOP_EWEN",         0x40, 0x40 },
1714         { "SEEOP_WALL",         0x40, 0x40 },
1715         { "SEEOP_EWDS",         0x40, 0x40 }
1719 ahd_seectl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1721         return (ahd_print_register(SEECTL_parse_table, 10, "SEECTL",
1722             0xbe, regvalue, cur_col, wrap));
1725 static const ahd_reg_parse_entry_t SEESTAT_parse_table[] = {
1726         { "SEESTART",           0x01, 0x01 },
1727         { "SEEBUSY",            0x02, 0x02 },
1728         { "SEEARBACK",          0x04, 0x04 },
1729         { "LDALTID_L",          0x08, 0x08 },
1730         { "SEEOPCODE",          0x70, 0x70 },
1731         { "INIT_DONE",          0x80, 0x80 }
1735 ahd_seestat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1737         return (ahd_print_register(SEESTAT_parse_table, 6, "SEESTAT",
1738             0xbe, regvalue, cur_col, wrap));
1741 static const ahd_reg_parse_entry_t DSPDATACTL_parse_table[] = {
1742         { "XMITOFFSTDIS",       0x02, 0x02 },
1743         { "RCVROFFSTDIS",       0x04, 0x04 },
1744         { "DESQDIS",            0x10, 0x10 },
1745         { "BYPASSENAB",         0x80, 0x80 }
1749 ahd_dspdatactl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1751         return (ahd_print_register(DSPDATACTL_parse_table, 4, "DSPDATACTL",
1752             0xc1, regvalue, cur_col, wrap));
1756 ahd_dfdat_print(u_int regvalue, u_int *cur_col, u_int wrap)
1758         return (ahd_print_register(NULL, 0, "DFDAT",
1759             0xc4, regvalue, cur_col, wrap));
1762 static const ahd_reg_parse_entry_t DSPSELECT_parse_table[] = {
1763         { "DSPSEL",             0x1f, 0x1f },
1764         { "AUTOINCEN",          0x80, 0x80 }
1768 ahd_dspselect_print(u_int regvalue, u_int *cur_col, u_int wrap)
1770         return (ahd_print_register(DSPSELECT_parse_table, 2, "DSPSELECT",
1771             0xc4, regvalue, cur_col, wrap));
1774 static const ahd_reg_parse_entry_t WRTBIASCTL_parse_table[] = {
1775         { "XMITMANVAL",         0x3f, 0x3f },
1776         { "AUTOXBCDIS",         0x80, 0x80 }
1780 ahd_wrtbiasctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1782         return (ahd_print_register(WRTBIASCTL_parse_table, 2, "WRTBIASCTL",
1783             0xc5, regvalue, cur_col, wrap));
1786 static const ahd_reg_parse_entry_t SEQCTL0_parse_table[] = {
1787         { "LOADRAM",            0x01, 0x01 },
1788         { "SEQRESET",           0x02, 0x02 },
1789         { "STEP",               0x04, 0x04 },
1790         { "BRKADRINTEN",        0x08, 0x08 },
1791         { "FASTMODE",           0x10, 0x10 },
1792         { "FAILDIS",            0x20, 0x20 },
1793         { "PAUSEDIS",           0x40, 0x40 },
1794         { "PERRORDIS",          0x80, 0x80 }
1798 ahd_seqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
1800         return (ahd_print_register(SEQCTL0_parse_table, 8, "SEQCTL0",
1801             0xd6, regvalue, cur_col, wrap));
1804 static const ahd_reg_parse_entry_t FLAGS_parse_table[] = {
1805         { "CARRY",              0x01, 0x01 },
1806         { "ZERO",               0x02, 0x02 }
1810 ahd_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)
1812         return (ahd_print_register(FLAGS_parse_table, 2, "FLAGS",
1813             0xd8, regvalue, cur_col, wrap));
1816 static const ahd_reg_parse_entry_t SEQINTCTL_parse_table[] = {
1817         { "IRET",               0x01, 0x01 },
1818         { "INTMASK1",           0x02, 0x02 },
1819         { "INTMASK2",           0x04, 0x04 },
1820         { "SCS_SEQ_INT1M0",     0x08, 0x08 },
1821         { "SCS_SEQ_INT1M1",     0x10, 0x10 },
1822         { "INT1_CONTEXT",       0x20, 0x20 },
1823         { "INTVEC1DSL",         0x80, 0x80 }
1827 ahd_seqintctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
1829         return (ahd_print_register(SEQINTCTL_parse_table, 7, "SEQINTCTL",
1830             0xd9, regvalue, cur_col, wrap));
1834 ahd_seqram_print(u_int regvalue, u_int *cur_col, u_int wrap)
1836         return (ahd_print_register(NULL, 0, "SEQRAM",
1837             0xda, regvalue, cur_col, wrap));
1841 ahd_prgmcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
1843         return (ahd_print_register(NULL, 0, "PRGMCNT",
1844             0xde, regvalue, cur_col, wrap));
1848 ahd_accum_print(u_int regvalue, u_int *cur_col, u_int wrap)
1850         return (ahd_print_register(NULL, 0, "ACCUM",
1851             0xe0, regvalue, cur_col, wrap));
1855 ahd_sindex_print(u_int regvalue, u_int *cur_col, u_int wrap)
1857         return (ahd_print_register(NULL, 0, "SINDEX",
1858             0xe2, regvalue, cur_col, wrap));
1862 ahd_dindex_print(u_int regvalue, u_int *cur_col, u_int wrap)
1864         return (ahd_print_register(NULL, 0, "DINDEX",
1865             0xe4, regvalue, cur_col, wrap));
1869 ahd_allones_print(u_int regvalue, u_int *cur_col, u_int wrap)
1871         return (ahd_print_register(NULL, 0, "ALLONES",
1872             0xe8, regvalue, cur_col, wrap));
1876 ahd_allzeros_print(u_int regvalue, u_int *cur_col, u_int wrap)
1878         return (ahd_print_register(NULL, 0, "ALLZEROS",
1879             0xea, regvalue, cur_col, wrap));
1883 ahd_none_print(u_int regvalue, u_int *cur_col, u_int wrap)
1885         return (ahd_print_register(NULL, 0, "NONE",
1886             0xea, regvalue, cur_col, wrap));
1890 ahd_sindir_print(u_int regvalue, u_int *cur_col, u_int wrap)
1892         return (ahd_print_register(NULL, 0, "SINDIR",
1893             0xec, regvalue, cur_col, wrap));
1897 ahd_dindir_print(u_int regvalue, u_int *cur_col, u_int wrap)
1899         return (ahd_print_register(NULL, 0, "DINDIR",
1900             0xed, regvalue, cur_col, wrap));
1904 ahd_stack_print(u_int regvalue, u_int *cur_col, u_int wrap)
1906         return (ahd_print_register(NULL, 0, "STACK",
1907             0xf2, regvalue, cur_col, wrap));
1911 ahd_intvec1_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1913         return (ahd_print_register(NULL, 0, "INTVEC1_ADDR",
1914             0xf4, regvalue, cur_col, wrap));
1918 ahd_curaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1920         return (ahd_print_register(NULL, 0, "CURADDR",
1921             0xf4, regvalue, cur_col, wrap));
1925 ahd_intvec2_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1927         return (ahd_print_register(NULL, 0, "INTVEC2_ADDR",
1928             0xf6, regvalue, cur_col, wrap));
1932 ahd_longjmp_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1934         return (ahd_print_register(NULL, 0, "LONGJMP_ADDR",
1935             0xf8, regvalue, cur_col, wrap));
1939 ahd_accum_save_print(u_int regvalue, u_int *cur_col, u_int wrap)
1941         return (ahd_print_register(NULL, 0, "ACCUM_SAVE",
1942             0xfa, regvalue, cur_col, wrap));
1946 ahd_sram_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
1948         return (ahd_print_register(NULL, 0, "SRAM_BASE",
1949             0x100, regvalue, cur_col, wrap));
1953 ahd_waiting_scb_tails_print(u_int regvalue, u_int *cur_col, u_int wrap)
1955         return (ahd_print_register(NULL, 0, "WAITING_SCB_TAILS",
1956             0x100, regvalue, cur_col, wrap));
1960 ahd_waiting_tid_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
1962         return (ahd_print_register(NULL, 0, "WAITING_TID_HEAD",
1963             0x120, regvalue, cur_col, wrap));
1967 ahd_waiting_tid_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)
1969         return (ahd_print_register(NULL, 0, "WAITING_TID_TAIL",
1970             0x122, regvalue, cur_col, wrap));
1974 ahd_next_queued_scb_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
1976         return (ahd_print_register(NULL, 0, "NEXT_QUEUED_SCB_ADDR",
1977             0x124, regvalue, cur_col, wrap));
1981 ahd_complete_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
1983         return (ahd_print_register(NULL, 0, "COMPLETE_SCB_HEAD",
1984             0x128, regvalue, cur_col, wrap));
1988 ahd_complete_scb_dmainprog_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
1990         return (ahd_print_register(NULL, 0, "COMPLETE_SCB_DMAINPROG_HEAD",
1991             0x12a, regvalue, cur_col, wrap));
1995 ahd_complete_dma_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
1997         return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_HEAD",
1998             0x12c, regvalue, cur_col, wrap));
2002 ahd_complete_dma_scb_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)
2004         return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_TAIL",
2005             0x12e, regvalue, cur_col, wrap));
2009 ahd_complete_on_qfreeze_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
2011         return (ahd_print_register(NULL, 0, "COMPLETE_ON_QFREEZE_HEAD",
2012             0x130, regvalue, cur_col, wrap));
2016 ahd_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)
2018         return (ahd_print_register(NULL, 0, "QFREEZE_COUNT",
2019             0x132, regvalue, cur_col, wrap));
2023 ahd_kernel_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)
2025         return (ahd_print_register(NULL, 0, "KERNEL_QFREEZE_COUNT",
2026             0x134, regvalue, cur_col, wrap));
2030 ahd_saved_mode_print(u_int regvalue, u_int *cur_col, u_int wrap)
2032         return (ahd_print_register(NULL, 0, "SAVED_MODE",
2033             0x136, regvalue, cur_col, wrap));
2037 ahd_msg_out_print(u_int regvalue, u_int *cur_col, u_int wrap)
2039         return (ahd_print_register(NULL, 0, "MSG_OUT",
2040             0x137, regvalue, cur_col, wrap));
2043 static const ahd_reg_parse_entry_t DMAPARAMS_parse_table[] = {
2044         { "FIFORESET",          0x01, 0x01 },
2045         { "FIFOFLUSH",          0x02, 0x02 },
2046         { "DIRECTION",          0x04, 0x04 },
2047         { "HDMAEN",             0x08, 0x08 },
2048         { "HDMAENACK",          0x08, 0x08 },
2049         { "SDMAEN",             0x10, 0x10 },
2050         { "SDMAENACK",          0x10, 0x10 },
2051         { "SCSIEN",             0x20, 0x20 },
2052         { "WIDEODD",            0x40, 0x40 },
2053         { "PRELOADEN",          0x80, 0x80 }
2057 ahd_dmaparams_print(u_int regvalue, u_int *cur_col, u_int wrap)
2059         return (ahd_print_register(DMAPARAMS_parse_table, 10, "DMAPARAMS",
2060             0x138, regvalue, cur_col, wrap));
2063 static const ahd_reg_parse_entry_t SEQ_FLAGS_parse_table[] = {
2064         { "NO_DISCONNECT",      0x01, 0x01 },
2065         { "SPHASE_PENDING",     0x02, 0x02 },
2066         { "DPHASE_PENDING",     0x04, 0x04 },
2067         { "CMDPHASE_PENDING",   0x08, 0x08 },
2068         { "TARG_CMD_PENDING",   0x10, 0x10 },
2069         { "DPHASE",             0x20, 0x20 },
2070         { "NO_CDB_SENT",        0x40, 0x40 },
2071         { "TARGET_CMD_IS_TAGGED",0x40, 0x40 },
2072         { "NOT_IDENTIFIED",     0x80, 0x80 }
2076 ahd_seq_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)
2078         return (ahd_print_register(SEQ_FLAGS_parse_table, 9, "SEQ_FLAGS",
2079             0x139, regvalue, cur_col, wrap));
2083 ahd_saved_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
2085         return (ahd_print_register(NULL, 0, "SAVED_SCSIID",
2086             0x13a, regvalue, cur_col, wrap));
2090 ahd_saved_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)
2092         return (ahd_print_register(NULL, 0, "SAVED_LUN",
2093             0x13b, regvalue, cur_col, wrap));
2096 static const ahd_reg_parse_entry_t LASTPHASE_parse_table[] = {
2097         { "P_DATAOUT",          0x00, 0xe0 },
2098         { "P_DATAOUT_DT",       0x20, 0xe0 },
2099         { "P_DATAIN",           0x40, 0xe0 },
2100         { "P_DATAIN_DT",        0x60, 0xe0 },
2101         { "P_COMMAND",          0x80, 0xe0 },
2102         { "P_MESGOUT",          0xa0, 0xe0 },
2103         { "P_STATUS",           0xc0, 0xe0 },
2104         { "P_MESGIN",           0xe0, 0xe0 },
2105         { "P_BUSFREE",          0x01, 0x01 },
2106         { "MSGI",               0x20, 0x20 },
2107         { "IOI",                0x40, 0x40 },
2108         { "CDI",                0x80, 0x80 },
2109         { "PHASE_MASK",         0xe0, 0xe0 }
2113 ahd_lastphase_print(u_int regvalue, u_int *cur_col, u_int wrap)
2115         return (ahd_print_register(LASTPHASE_parse_table, 13, "LASTPHASE",
2116             0x13c, regvalue, cur_col, wrap));
2120 ahd_qoutfifo_entry_valid_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
2122         return (ahd_print_register(NULL, 0, "QOUTFIFO_ENTRY_VALID_TAG",
2123             0x13d, regvalue, cur_col, wrap));
2127 ahd_kernel_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)
2129         return (ahd_print_register(NULL, 0, "KERNEL_TQINPOS",
2130             0x13e, regvalue, cur_col, wrap));
2134 ahd_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)
2136         return (ahd_print_register(NULL, 0, "TQINPOS",
2137             0x13f, regvalue, cur_col, wrap));
2141 ahd_shared_data_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2143         return (ahd_print_register(NULL, 0, "SHARED_DATA_ADDR",
2144             0x140, regvalue, cur_col, wrap));
2148 ahd_qoutfifo_next_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2150         return (ahd_print_register(NULL, 0, "QOUTFIFO_NEXT_ADDR",
2151             0x144, regvalue, cur_col, wrap));
2154 static const ahd_reg_parse_entry_t ARG_1_parse_table[] = {
2155         { "CONT_MSG_LOOP_TARG", 0x02, 0x02 },
2156         { "CONT_MSG_LOOP_READ", 0x03, 0x03 },
2157         { "CONT_MSG_LOOP_WRITE",0x04, 0x04 },
2158         { "EXIT_MSG_LOOP",      0x08, 0x08 },
2159         { "MSGOUT_PHASEMIS",    0x10, 0x10 },
2160         { "SEND_REJ",           0x20, 0x20 },
2161         { "SEND_SENSE",         0x40, 0x40 },
2162         { "SEND_MSG",           0x80, 0x80 }
2166 ahd_arg_1_print(u_int regvalue, u_int *cur_col, u_int wrap)
2168         return (ahd_print_register(ARG_1_parse_table, 8, "ARG_1",
2169             0x148, regvalue, cur_col, wrap));
2173 ahd_arg_2_print(u_int regvalue, u_int *cur_col, u_int wrap)
2175         return (ahd_print_register(NULL, 0, "ARG_2",
2176             0x149, regvalue, cur_col, wrap));
2180 ahd_last_msg_print(u_int regvalue, u_int *cur_col, u_int wrap)
2182         return (ahd_print_register(NULL, 0, "LAST_MSG",
2183             0x14a, regvalue, cur_col, wrap));
2186 static const ahd_reg_parse_entry_t SCSISEQ_TEMPLATE_parse_table[] = {
2187         { "ALTSTIM",            0x01, 0x01 },
2188         { "ENAUTOATNP",         0x02, 0x02 },
2189         { "MANUALP",            0x0c, 0x0c },
2190         { "ENRSELI",            0x10, 0x10 },
2191         { "ENSELI",             0x20, 0x20 },
2192         { "MANUALCTL",          0x40, 0x40 }
2196 ahd_scsiseq_template_print(u_int regvalue, u_int *cur_col, u_int wrap)
2198         return (ahd_print_register(SCSISEQ_TEMPLATE_parse_table, 6, "SCSISEQ_TEMPLATE",
2199             0x14b, regvalue, cur_col, wrap));
2203 ahd_initiator_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
2205         return (ahd_print_register(NULL, 0, "INITIATOR_TAG",
2206             0x14c, regvalue, cur_col, wrap));
2209 static const ahd_reg_parse_entry_t SEQ_FLAGS2_parse_table[] = {
2210         { "PENDING_MK_MESSAGE", 0x01, 0x01 },
2211         { "TARGET_MSG_PENDING", 0x02, 0x02 },
2212         { "SELECTOUT_QFROZEN",  0x04, 0x04 }
2216 ahd_seq_flags2_print(u_int regvalue, u_int *cur_col, u_int wrap)
2218         return (ahd_print_register(SEQ_FLAGS2_parse_table, 3, "SEQ_FLAGS2",
2219             0x14d, regvalue, cur_col, wrap));
2223 ahd_allocfifo_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2225         return (ahd_print_register(NULL, 0, "ALLOCFIFO_SCBPTR",
2226             0x14e, regvalue, cur_col, wrap));
2230 ahd_int_coalescing_timer_print(u_int regvalue, u_int *cur_col, u_int wrap)
2232         return (ahd_print_register(NULL, 0, "INT_COALESCING_TIMER",
2233             0x150, regvalue, cur_col, wrap));
2237 ahd_int_coalescing_maxcmds_print(u_int regvalue, u_int *cur_col, u_int wrap)
2239         return (ahd_print_register(NULL, 0, "INT_COALESCING_MAXCMDS",
2240             0x152, regvalue, cur_col, wrap));
2244 ahd_int_coalescing_mincmds_print(u_int regvalue, u_int *cur_col, u_int wrap)
2246         return (ahd_print_register(NULL, 0, "INT_COALESCING_MINCMDS",
2247             0x153, regvalue, cur_col, wrap));
2251 ahd_cmds_pending_print(u_int regvalue, u_int *cur_col, u_int wrap)
2253         return (ahd_print_register(NULL, 0, "CMDS_PENDING",
2254             0x154, regvalue, cur_col, wrap));
2258 ahd_int_coalescing_cmdcount_print(u_int regvalue, u_int *cur_col, u_int wrap)
2260         return (ahd_print_register(NULL, 0, "INT_COALESCING_CMDCOUNT",
2261             0x156, regvalue, cur_col, wrap));
2265 ahd_local_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)
2267         return (ahd_print_register(NULL, 0, "LOCAL_HS_MAILBOX",
2268             0x157, regvalue, cur_col, wrap));
2272 ahd_cmdsize_table_print(u_int regvalue, u_int *cur_col, u_int wrap)
2274         return (ahd_print_register(NULL, 0, "CMDSIZE_TABLE",
2275             0x158, regvalue, cur_col, wrap));
2279 ahd_mk_message_scb_print(u_int regvalue, u_int *cur_col, u_int wrap)
2281         return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCB",
2282             0x160, regvalue, cur_col, wrap));
2286 ahd_mk_message_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
2288         return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCSIID",
2289             0x162, regvalue, cur_col, wrap));
2293 ahd_scb_residual_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2295         return (ahd_print_register(NULL, 0, "SCB_RESIDUAL_DATACNT",
2296             0x180, regvalue, cur_col, wrap));
2300 ahd_scb_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
2302         return (ahd_print_register(NULL, 0, "SCB_BASE",
2303             0x180, regvalue, cur_col, wrap));
2306 static const ahd_reg_parse_entry_t SCB_RESIDUAL_SGPTR_parse_table[] = {
2307         { "SG_LIST_NULL",       0x01, 0x01 },
2308         { "SG_OVERRUN_RESID",   0x02, 0x02 },
2309         { "SG_ADDR_MASK",       0xf8, 0xf8 }
2313 ahd_scb_residual_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2315         return (ahd_print_register(SCB_RESIDUAL_SGPTR_parse_table, 3, "SCB_RESIDUAL_SGPTR",
2316             0x184, regvalue, cur_col, wrap));
2320 ahd_scb_scsi_status_print(u_int regvalue, u_int *cur_col, u_int wrap)
2322         return (ahd_print_register(NULL, 0, "SCB_SCSI_STATUS",
2323             0x188, regvalue, cur_col, wrap));
2327 ahd_scb_sense_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2329         return (ahd_print_register(NULL, 0, "SCB_SENSE_BUSADDR",
2330             0x18c, regvalue, cur_col, wrap));
2334 ahd_scb_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
2336         return (ahd_print_register(NULL, 0, "SCB_TAG",
2337             0x190, regvalue, cur_col, wrap));
2340 static const ahd_reg_parse_entry_t SCB_CONTROL_parse_table[] = {
2341         { "SCB_TAG_TYPE",       0x03, 0x03 },
2342         { "DISCONNECTED",       0x04, 0x04 },
2343         { "STATUS_RCVD",        0x08, 0x08 },
2344         { "MK_MESSAGE",         0x10, 0x10 },
2345         { "TAG_ENB",            0x20, 0x20 },
2346         { "DISCENB",            0x40, 0x40 },
2347         { "TARGET_SCB",         0x80, 0x80 }
2351 ahd_scb_control_print(u_int regvalue, u_int *cur_col, u_int wrap)
2353         return (ahd_print_register(SCB_CONTROL_parse_table, 7, "SCB_CONTROL",
2354             0x192, regvalue, cur_col, wrap));
2357 static const ahd_reg_parse_entry_t SCB_SCSIID_parse_table[] = {
2358         { "OID",                0x0f, 0x0f },
2359         { "TID",                0xf0, 0xf0 }
2363 ahd_scb_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
2365         return (ahd_print_register(SCB_SCSIID_parse_table, 2, "SCB_SCSIID",
2366             0x193, regvalue, cur_col, wrap));
2369 static const ahd_reg_parse_entry_t SCB_LUN_parse_table[] = {
2370         { "LID",                0xff, 0xff }
2374 ahd_scb_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)
2376         return (ahd_print_register(SCB_LUN_parse_table, 1, "SCB_LUN",
2377             0x194, regvalue, cur_col, wrap));
2380 static const ahd_reg_parse_entry_t SCB_TASK_ATTRIBUTE_parse_table[] = {
2381         { "SCB_XFERLEN_ODD",    0x01, 0x01 }
2385 ahd_scb_task_attribute_print(u_int regvalue, u_int *cur_col, u_int wrap)
2387         return (ahd_print_register(SCB_TASK_ATTRIBUTE_parse_table, 1, "SCB_TASK_ATTRIBUTE",
2388             0x195, regvalue, cur_col, wrap));
2391 static const ahd_reg_parse_entry_t SCB_CDB_LEN_parse_table[] = {
2392         { "SCB_CDB_LEN_PTR",    0x80, 0x80 }
2396 ahd_scb_cdb_len_print(u_int regvalue, u_int *cur_col, u_int wrap)
2398         return (ahd_print_register(SCB_CDB_LEN_parse_table, 1, "SCB_CDB_LEN",
2399             0x196, regvalue, cur_col, wrap));
2403 ahd_scb_task_management_print(u_int regvalue, u_int *cur_col, u_int wrap)
2405         return (ahd_print_register(NULL, 0, "SCB_TASK_MANAGEMENT",
2406             0x197, regvalue, cur_col, wrap));
2410 ahd_scb_dataptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2412         return (ahd_print_register(NULL, 0, "SCB_DATAPTR",
2413             0x198, regvalue, cur_col, wrap));
2416 static const ahd_reg_parse_entry_t SCB_DATACNT_parse_table[] = {
2417         { "SG_HIGH_ADDR_BITS",  0x7f, 0x7f },
2418         { "SG_LAST_SEG",        0x80, 0x80 }
2422 ahd_scb_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
2424         return (ahd_print_register(SCB_DATACNT_parse_table, 2, "SCB_DATACNT",
2425             0x1a0, regvalue, cur_col, wrap));
2428 static const ahd_reg_parse_entry_t SCB_SGPTR_parse_table[] = {
2429         { "SG_LIST_NULL",       0x01, 0x01 },
2430         { "SG_FULL_RESID",      0x02, 0x02 },
2431         { "SG_STATUS_VALID",    0x04, 0x04 }
2435 ahd_scb_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2437         return (ahd_print_register(SCB_SGPTR_parse_table, 3, "SCB_SGPTR",
2438             0x1a4, regvalue, cur_col, wrap));
2442 ahd_scb_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
2444         return (ahd_print_register(NULL, 0, "SCB_BUSADDR",
2445             0x1a8, regvalue, cur_col, wrap));
2449 ahd_scb_next_print(u_int regvalue, u_int *cur_col, u_int wrap)
2451         return (ahd_print_register(NULL, 0, "SCB_NEXT",
2452             0x1ac, regvalue, cur_col, wrap));
2456 ahd_scb_next2_print(u_int regvalue, u_int *cur_col, u_int wrap)
2458         return (ahd_print_register(NULL, 0, "SCB_NEXT2",
2459             0x1ae, regvalue, cur_col, wrap));
2463 ahd_scb_disconnected_lists_print(u_int regvalue, u_int *cur_col, u_int wrap)
2465         return (ahd_print_register(NULL, 0, "SCB_DISCONNECTED_LISTS",
2466             0x1b8, regvalue, cur_col, wrap));