50b464aa1a
drivers and their firmware were under active development, but those days have passed. The firmware now exists in pre-compiled form, no longer dependent on it's sources or on aicasm. If you wish to rebuild the firmware from source, the glue still exists under the 'make firmware' target in sys/modules/aic7xxx. This also fixes the problem introduced with r257777 et al with building kernels the old fashioned way in sys/$arch/compile/$CONFIG when the ahc/ahd drivers were included.
3675 lines
91 KiB
C
3675 lines
91 KiB
C
/*
|
|
* DO NOT EDIT - This file is automatically generated
|
|
* from the following source files:
|
|
*
|
|
* $Id: //depot/aic7xxx/aic7xxx/aic79xx.seq#119 $
|
|
* $Id: //depot/aic7xxx/aic7xxx/aic79xx.reg#76 $
|
|
*/
|
|
|
|
#include <sys/cdefs.h>
|
|
__FBSDID("$FreeBSD$");
|
|
#include <dev/aic7xxx/aic79xx_osm.h>
|
|
|
|
static ahd_reg_parse_entry_t MODE_PTR_parse_table[] = {
|
|
{ "SRC_MODE", 0x07, 0x07 },
|
|
{ "DST_MODE", 0x70, 0x70 }
|
|
};
|
|
|
|
int
|
|
ahd_mode_ptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(MODE_PTR_parse_table, 2, "MODE_PTR",
|
|
0x00, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t INTSTAT_parse_table[] = {
|
|
{ "SPLTINT", 0x01, 0x01 },
|
|
{ "CMDCMPLT", 0x02, 0x02 },
|
|
{ "SEQINT", 0x04, 0x04 },
|
|
{ "SCSIINT", 0x08, 0x08 },
|
|
{ "PCIINT", 0x10, 0x10 },
|
|
{ "SWTMINT", 0x20, 0x20 },
|
|
{ "BRKADRINT", 0x40, 0x40 },
|
|
{ "HWERRINT", 0x80, 0x80 },
|
|
{ "INT_PEND", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_intstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(INTSTAT_parse_table, 9, "INTSTAT",
|
|
0x01, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQINTCODE_parse_table[] = {
|
|
{ "NO_SEQINT", 0x00, 0xff },
|
|
{ "BAD_PHASE", 0x01, 0xff },
|
|
{ "SEND_REJECT", 0x02, 0xff },
|
|
{ "PROTO_VIOLATION", 0x03, 0xff },
|
|
{ "NO_MATCH", 0x04, 0xff },
|
|
{ "IGN_WIDE_RES", 0x05, 0xff },
|
|
{ "PDATA_REINIT", 0x06, 0xff },
|
|
{ "HOST_MSG_LOOP", 0x07, 0xff },
|
|
{ "BAD_STATUS", 0x08, 0xff },
|
|
{ "DATA_OVERRUN", 0x09, 0xff },
|
|
{ "MKMSG_FAILED", 0x0a, 0xff },
|
|
{ "MISSED_BUSFREE", 0x0b, 0xff },
|
|
{ "DUMP_CARD_STATE", 0x0c, 0xff },
|
|
{ "ILLEGAL_PHASE", 0x0d, 0xff },
|
|
{ "INVALID_SEQINT", 0x0e, 0xff },
|
|
{ "CFG4ISTAT_INTR", 0x0f, 0xff },
|
|
{ "STATUS_OVERRUN", 0x10, 0xff },
|
|
{ "CFG4OVERRUN", 0x11, 0xff },
|
|
{ "ENTERING_NONPACK", 0x12, 0xff },
|
|
{ "TASKMGMT_FUNC_COMPLETE",0x13, 0xff },
|
|
{ "TASKMGMT_CMD_CMPLT_OKAY",0x14, 0xff },
|
|
{ "TRACEPOINT0", 0x15, 0xff },
|
|
{ "TRACEPOINT1", 0x16, 0xff },
|
|
{ "TRACEPOINT2", 0x17, 0xff },
|
|
{ "TRACEPOINT3", 0x18, 0xff },
|
|
{ "SAW_HWERR", 0x19, 0xff },
|
|
{ "BAD_SCB_STATUS", 0x1a, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_seqintcode_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQINTCODE_parse_table, 27, "SEQINTCODE",
|
|
0x02, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRINT_parse_table[] = {
|
|
{ "CLRSPLTINT", 0x01, 0x01 },
|
|
{ "CLRCMDINT", 0x02, 0x02 },
|
|
{ "CLRSEQINT", 0x04, 0x04 },
|
|
{ "CLRSCSIINT", 0x08, 0x08 },
|
|
{ "CLRPCIINT", 0x10, 0x10 },
|
|
{ "CLRSWTMINT", 0x20, 0x20 },
|
|
{ "CLRBRKADRINT", 0x40, 0x40 },
|
|
{ "CLRHWERRINT", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_clrint_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRINT_parse_table, 8, "CLRINT",
|
|
0x03, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t ERROR_parse_table[] = {
|
|
{ "DSCTMOUT", 0x02, 0x02 },
|
|
{ "ILLOPCODE", 0x04, 0x04 },
|
|
{ "SQPARERR", 0x08, 0x08 },
|
|
{ "DPARERR", 0x10, 0x10 },
|
|
{ "MPARERR", 0x20, 0x20 },
|
|
{ "CIOACCESFAIL", 0x40, 0x40 },
|
|
{ "CIOPARERR", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_error_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(ERROR_parse_table, 7, "ERROR",
|
|
0x04, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRERR_parse_table[] = {
|
|
{ "CLRDSCTMOUT", 0x02, 0x02 },
|
|
{ "CLRILLOPCODE", 0x04, 0x04 },
|
|
{ "CLRSQPARERR", 0x08, 0x08 },
|
|
{ "CLRDPARERR", 0x10, 0x10 },
|
|
{ "CLRMPARERR", 0x20, 0x20 },
|
|
{ "CLRCIOACCESFAIL", 0x40, 0x40 },
|
|
{ "CLRCIOPARERR", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_clrerr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRERR_parse_table, 7, "CLRERR",
|
|
0x04, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t HCNTRL_parse_table[] = {
|
|
{ "CHIPRST", 0x01, 0x01 },
|
|
{ "CHIPRSTACK", 0x01, 0x01 },
|
|
{ "INTEN", 0x02, 0x02 },
|
|
{ "PAUSE", 0x04, 0x04 },
|
|
{ "SWTIMER_START_B", 0x08, 0x08 },
|
|
{ "SWINT", 0x10, 0x10 },
|
|
{ "POWRDN", 0x40, 0x40 },
|
|
{ "SEQ_RESET", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_hcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(HCNTRL_parse_table, 8, "HCNTRL",
|
|
0x05, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_hnscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "HNSCB_QOFF",
|
|
0x06, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_hescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "HESCB_QOFF",
|
|
0x08, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t HS_MAILBOX_parse_table[] = {
|
|
{ "ENINT_COALESCE", 0x40, 0x40 },
|
|
{ "HOST_TQINPOS", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(HS_MAILBOX_parse_table, 2, "HS_MAILBOX",
|
|
0x0b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQINTSTAT_parse_table[] = {
|
|
{ "SEQ_SPLTINT", 0x01, 0x01 },
|
|
{ "SEQ_PCIINT", 0x02, 0x02 },
|
|
{ "SEQ_SCSIINT", 0x04, 0x04 },
|
|
{ "SEQ_SEQINT", 0x08, 0x08 },
|
|
{ "SEQ_SWTMRTO", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_seqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQINTSTAT_parse_table, 5, "SEQINTSTAT",
|
|
0x0c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRSEQINTSTAT_parse_table[] = {
|
|
{ "CLRSEQ_SPLTINT", 0x01, 0x01 },
|
|
{ "CLRSEQ_PCIINT", 0x02, 0x02 },
|
|
{ "CLRSEQ_SCSIINT", 0x04, 0x04 },
|
|
{ "CLRSEQ_SEQINT", 0x08, 0x08 },
|
|
{ "CLRSEQ_SWTMRTO", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_clrseqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRSEQINTSTAT_parse_table, 5, "CLRSEQINTSTAT",
|
|
0x0c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_swtimer_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SWTIMER",
|
|
0x0e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_snscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SNSCB_QOFF",
|
|
0x10, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SESCB_QOFF",
|
|
0x12, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sdscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SDSCB_QOFF",
|
|
0x14, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t QOFF_CTLSTA_parse_table[] = {
|
|
{ "SCB_QSIZE_4", 0x00, 0x0f },
|
|
{ "SCB_QSIZE_8", 0x01, 0x0f },
|
|
{ "SCB_QSIZE_16", 0x02, 0x0f },
|
|
{ "SCB_QSIZE_32", 0x03, 0x0f },
|
|
{ "SCB_QSIZE_64", 0x04, 0x0f },
|
|
{ "SCB_QSIZE_128", 0x05, 0x0f },
|
|
{ "SCB_QSIZE_256", 0x06, 0x0f },
|
|
{ "SCB_QSIZE_512", 0x07, 0x0f },
|
|
{ "SCB_QSIZE_1024", 0x08, 0x0f },
|
|
{ "SCB_QSIZE_2048", 0x09, 0x0f },
|
|
{ "SCB_QSIZE_4096", 0x0a, 0x0f },
|
|
{ "SCB_QSIZE_8192", 0x0b, 0x0f },
|
|
{ "SCB_QSIZE_16384", 0x0c, 0x0f },
|
|
{ "SCB_QSIZE", 0x0f, 0x0f },
|
|
{ "HS_MAILBOX_ACT", 0x10, 0x10 },
|
|
{ "SDSCB_ROLLOVR", 0x20, 0x20 },
|
|
{ "NEW_SCB_AVAIL", 0x40, 0x40 },
|
|
{ "EMPTY_SCB_AVAIL", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_qoff_ctlsta_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(QOFF_CTLSTA_parse_table, 18, "QOFF_CTLSTA",
|
|
0x16, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t INTCTL_parse_table[] = {
|
|
{ "SPLTINTEN", 0x01, 0x01 },
|
|
{ "SEQINTEN", 0x02, 0x02 },
|
|
{ "SCSIINTEN", 0x04, 0x04 },
|
|
{ "PCIINTEN", 0x08, 0x08 },
|
|
{ "AUTOCLRCMDINT", 0x10, 0x10 },
|
|
{ "SWTIMER_START", 0x20, 0x20 },
|
|
{ "SWTMINTEN", 0x40, 0x40 },
|
|
{ "SWTMINTMASK", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_intctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(INTCTL_parse_table, 8, "INTCTL",
|
|
0x18, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DFCNTRL_parse_table[] = {
|
|
{ "DIRECTIONEN", 0x01, 0x01 },
|
|
{ "FIFOFLUSH", 0x02, 0x02 },
|
|
{ "FIFOFLUSHACK", 0x02, 0x02 },
|
|
{ "DIRECTION", 0x04, 0x04 },
|
|
{ "DIRECTIONACK", 0x04, 0x04 },
|
|
{ "HDMAEN", 0x08, 0x08 },
|
|
{ "HDMAENACK", 0x08, 0x08 },
|
|
{ "SCSIEN", 0x20, 0x20 },
|
|
{ "SCSIENACK", 0x20, 0x20 },
|
|
{ "SCSIENWRDIS", 0x40, 0x40 },
|
|
{ "PRELOADEN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_dfcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DFCNTRL_parse_table, 11, "DFCNTRL",
|
|
0x19, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DSCOMMAND0_parse_table[] = {
|
|
{ "CIOPARCKEN", 0x01, 0x01 },
|
|
{ "DISABLE_TWATE", 0x02, 0x02 },
|
|
{ "EXTREQLCK", 0x10, 0x10 },
|
|
{ "MPARCKEN", 0x20, 0x20 },
|
|
{ "DPARCKEN", 0x40, 0x40 },
|
|
{ "CACHETHEN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_dscommand0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DSCOMMAND0_parse_table, 6, "DSCOMMAND0",
|
|
0x19, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DFSTATUS_parse_table[] = {
|
|
{ "FIFOEMP", 0x01, 0x01 },
|
|
{ "FIFOFULL", 0x02, 0x02 },
|
|
{ "DFTHRESH", 0x04, 0x04 },
|
|
{ "HDONE", 0x08, 0x08 },
|
|
{ "MREQPEND", 0x10, 0x10 },
|
|
{ "PKT_PRELOAD_AVAIL", 0x40, 0x40 },
|
|
{ "PRELOAD_AVAIL", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_dfstatus_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DFSTATUS_parse_table, 7, "DFSTATUS",
|
|
0x1a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SG_CACHE_SHADOW_parse_table[] = {
|
|
{ "LAST_SEG_DONE", 0x01, 0x01 },
|
|
{ "LAST_SEG", 0x02, 0x02 },
|
|
{ "ODD_SEG", 0x04, 0x04 },
|
|
{ "SG_ADDR_MASK", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_sg_cache_shadow_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SG_CACHE_SHADOW_parse_table, 4, "SG_CACHE_SHADOW",
|
|
0x1b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SG_CACHE_PRE_parse_table[] = {
|
|
{ "LAST_SEG", 0x02, 0x02 },
|
|
{ "ODD_SEG", 0x04, 0x04 },
|
|
{ "SG_ADDR_MASK", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_sg_cache_pre_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SG_CACHE_PRE_parse_table, 3, "SG_CACHE_PRE",
|
|
0x1b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t ARBCTL_parse_table[] = {
|
|
{ "USE_TIME", 0x07, 0x07 },
|
|
{ "RETRY_SWEN", 0x08, 0x08 },
|
|
{ "RESET_HARB", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_arbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(ARBCTL_parse_table, 3, "ARBCTL",
|
|
0x1b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lqin_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LQIN",
|
|
0x20, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_typeptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "TYPEPTR",
|
|
0x20, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_tagptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "TAGPTR",
|
|
0x21, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lunptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LUNPTR",
|
|
0x22, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_datalenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DATALENPTR",
|
|
0x23, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_statlenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "STATLENPTR",
|
|
0x24, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_cmdlenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CMDLENPTR",
|
|
0x25, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_attrptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ATTRPTR",
|
|
0x26, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_flagptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "FLAGPTR",
|
|
0x27, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_cmdptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CMDPTR",
|
|
0x28, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_qnextptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "QNEXTPTR",
|
|
0x29, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_idptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "IDPTR",
|
|
0x2a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_abrtbyteptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ABRTBYTEPTR",
|
|
0x2b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_abrtbitptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ABRTBITPTR",
|
|
0x2c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_maxcmdbytes_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MAXCMDBYTES",
|
|
0x2d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_maxcmd2rcv_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MAXCMD2RCV",
|
|
0x2e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_shortthresh_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SHORTTHRESH",
|
|
0x2f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LUNLEN_parse_table[] = {
|
|
{ "ILUNLEN", 0x0f, 0x0f },
|
|
{ "TLUNLEN", 0xf0, 0xf0 }
|
|
};
|
|
|
|
int
|
|
ahd_lunlen_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LUNLEN_parse_table, 2, "LUNLEN",
|
|
0x30, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_cdblimit_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CDBLIMIT",
|
|
0x31, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_maxcmd_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MAXCMD",
|
|
0x32, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_maxcmdcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MAXCMDCNT",
|
|
0x33, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lqrsvd01_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LQRSVD01",
|
|
0x34, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lqrsvd16_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LQRSVD16",
|
|
0x35, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lqrsvd17_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LQRSVD17",
|
|
0x36, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_cmdrsvd0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CMDRSVD0",
|
|
0x37, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQCTL0_parse_table[] = {
|
|
{ "LQ0INITGCLT", 0x03, 0x03 },
|
|
{ "LQ0TARGCLT", 0x0c, 0x0c },
|
|
{ "LQIINITGCLT", 0x30, 0x30 },
|
|
{ "LQITARGCLT", 0xc0, 0xc0 }
|
|
};
|
|
|
|
int
|
|
ahd_lqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQCTL0_parse_table, 4, "LQCTL0",
|
|
0x38, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQCTL1_parse_table[] = {
|
|
{ "ABORTPENDING", 0x01, 0x01 },
|
|
{ "SINGLECMD", 0x02, 0x02 },
|
|
{ "PCI2PCI", 0x04, 0x04 }
|
|
};
|
|
|
|
int
|
|
ahd_lqctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQCTL1_parse_table, 3, "LQCTL1",
|
|
0x38, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQCTL2_parse_table[] = {
|
|
{ "LQOPAUSE", 0x01, 0x01 },
|
|
{ "LQOTOIDLE", 0x02, 0x02 },
|
|
{ "LQOCONTINUE", 0x04, 0x04 },
|
|
{ "LQORETRY", 0x08, 0x08 },
|
|
{ "LQIPAUSE", 0x10, 0x10 },
|
|
{ "LQITOIDLE", 0x20, 0x20 },
|
|
{ "LQICONTINUE", 0x40, 0x40 },
|
|
{ "LQIRETRY", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_lqctl2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQCTL2_parse_table, 8, "LQCTL2",
|
|
0x39, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSBIST0_parse_table[] = {
|
|
{ "OSBISTRUN", 0x01, 0x01 },
|
|
{ "OSBISTDONE", 0x02, 0x02 },
|
|
{ "OSBISTERR", 0x04, 0x04 },
|
|
{ "GSBISTRUN", 0x10, 0x10 },
|
|
{ "GSBISTDONE", 0x20, 0x20 },
|
|
{ "GSBISTERR", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_scsbist0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSBIST0_parse_table, 6, "SCSBIST0",
|
|
0x39, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSISEQ0_parse_table[] = {
|
|
{ "SCSIRSTO", 0x01, 0x01 },
|
|
{ "FORCEBUSFREE", 0x10, 0x10 },
|
|
{ "ENARBO", 0x20, 0x20 },
|
|
{ "ENSELO", 0x40, 0x40 },
|
|
{ "TEMODEO", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_scsiseq0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSISEQ0_parse_table, 5, "SCSISEQ0",
|
|
0x3a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSBIST1_parse_table[] = {
|
|
{ "NTBISTRUN", 0x01, 0x01 },
|
|
{ "NTBISTDONE", 0x02, 0x02 },
|
|
{ "NTBISTERR", 0x04, 0x04 }
|
|
};
|
|
|
|
int
|
|
ahd_scsbist1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSBIST1_parse_table, 3, "SCSBIST1",
|
|
0x3a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSISEQ1_parse_table[] = {
|
|
{ "ALTSTIM", 0x01, 0x01 },
|
|
{ "ENAUTOATNP", 0x02, 0x02 },
|
|
{ "MANUALP", 0x0c, 0x0c },
|
|
{ "ENRSELI", 0x10, 0x10 },
|
|
{ "ENSELI", 0x20, 0x20 },
|
|
{ "MANUALCTL", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_scsiseq1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSISEQ1_parse_table, 6, "SCSISEQ1",
|
|
0x3b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_businitid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "BUSINITID",
|
|
0x3c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SXFRCTL0_parse_table[] = {
|
|
{ "SPIOEN", 0x08, 0x08 },
|
|
{ "BIOSCANCELEN", 0x10, 0x10 },
|
|
{ "DFPEXP", 0x40, 0x40 },
|
|
{ "DFON", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_sxfrctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SXFRCTL0_parse_table, 4, "SXFRCTL0",
|
|
0x3c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dlcount_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DLCOUNT",
|
|
0x3c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SXFRCTL1_parse_table[] = {
|
|
{ "STPWEN", 0x01, 0x01 },
|
|
{ "ACTNEGEN", 0x02, 0x02 },
|
|
{ "ENSTIMER", 0x04, 0x04 },
|
|
{ "STIMESEL", 0x18, 0x18 },
|
|
{ "ENSPCHK", 0x20, 0x20 },
|
|
{ "ENSACHK", 0x40, 0x40 },
|
|
{ "BITBUCKET", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_sxfrctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SXFRCTL1_parse_table, 7, "SXFRCTL1",
|
|
0x3d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_bustargid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "BUSTARGID",
|
|
0x3e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SXFRCTL2_parse_table[] = {
|
|
{ "ASU", 0x07, 0x07 },
|
|
{ "CMDDMAEN", 0x08, 0x08 },
|
|
{ "AUTORSTDIS", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_sxfrctl2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SXFRCTL2_parse_table, 3, "SXFRCTL2",
|
|
0x3e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DFFSTAT_parse_table[] = {
|
|
{ "CURRFIFO_0", 0x00, 0x03 },
|
|
{ "CURRFIFO_1", 0x01, 0x03 },
|
|
{ "CURRFIFO_NONE", 0x03, 0x03 },
|
|
{ "FIFO0FREE", 0x10, 0x10 },
|
|
{ "FIFO1FREE", 0x20, 0x20 },
|
|
{ "CURRFIFO", 0x03, 0x03 }
|
|
};
|
|
|
|
int
|
|
ahd_dffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DFFSTAT_parse_table, 6, "DFFSTAT",
|
|
0x3f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSISIGO_parse_table[] = {
|
|
{ "P_DATAOUT", 0x00, 0xe0 },
|
|
{ "P_DATAOUT_DT", 0x20, 0xe0 },
|
|
{ "P_DATAIN", 0x40, 0xe0 },
|
|
{ "P_DATAIN_DT", 0x60, 0xe0 },
|
|
{ "P_COMMAND", 0x80, 0xe0 },
|
|
{ "P_MESGOUT", 0xa0, 0xe0 },
|
|
{ "P_STATUS", 0xc0, 0xe0 },
|
|
{ "P_MESGIN", 0xe0, 0xe0 },
|
|
{ "ACKO", 0x01, 0x01 },
|
|
{ "REQO", 0x02, 0x02 },
|
|
{ "BSYO", 0x04, 0x04 },
|
|
{ "SELO", 0x08, 0x08 },
|
|
{ "ATNO", 0x10, 0x10 },
|
|
{ "MSGO", 0x20, 0x20 },
|
|
{ "IOO", 0x40, 0x40 },
|
|
{ "CDO", 0x80, 0x80 },
|
|
{ "PHASE_MASK", 0xe0, 0xe0 }
|
|
};
|
|
|
|
int
|
|
ahd_scsisigo_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSISIGO_parse_table, 17, "SCSISIGO",
|
|
0x40, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_multargid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MULTARGID",
|
|
0x40, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSISIGI_parse_table[] = {
|
|
{ "P_DATAOUT", 0x00, 0xe0 },
|
|
{ "P_DATAOUT_DT", 0x20, 0xe0 },
|
|
{ "P_DATAIN", 0x40, 0xe0 },
|
|
{ "P_DATAIN_DT", 0x60, 0xe0 },
|
|
{ "P_COMMAND", 0x80, 0xe0 },
|
|
{ "P_MESGOUT", 0xa0, 0xe0 },
|
|
{ "P_STATUS", 0xc0, 0xe0 },
|
|
{ "P_MESGIN", 0xe0, 0xe0 },
|
|
{ "ACKI", 0x01, 0x01 },
|
|
{ "REQI", 0x02, 0x02 },
|
|
{ "BSYI", 0x04, 0x04 },
|
|
{ "SELI", 0x08, 0x08 },
|
|
{ "ATNI", 0x10, 0x10 },
|
|
{ "MSGI", 0x20, 0x20 },
|
|
{ "IOI", 0x40, 0x40 },
|
|
{ "CDI", 0x80, 0x80 },
|
|
{ "PHASE_MASK", 0xe0, 0xe0 }
|
|
};
|
|
|
|
int
|
|
ahd_scsisigi_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSISIGI_parse_table, 17, "SCSISIGI",
|
|
0x41, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSIPHASE_parse_table[] = {
|
|
{ "DATA_OUT_PHASE", 0x01, 0x03 },
|
|
{ "DATA_IN_PHASE", 0x02, 0x03 },
|
|
{ "DATA_PHASE_MASK", 0x03, 0x03 },
|
|
{ "MSG_OUT_PHASE", 0x04, 0x04 },
|
|
{ "MSG_IN_PHASE", 0x08, 0x08 },
|
|
{ "COMMAND_PHASE", 0x10, 0x10 },
|
|
{ "STATUS_PHASE", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_scsiphase_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSIPHASE_parse_table, 7, "SCSIPHASE",
|
|
0x42, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scsidat0_img_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCSIDAT0_IMG",
|
|
0x43, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scsidat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCSIDAT",
|
|
0x44, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scsibus_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCSIBUS",
|
|
0x46, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t TARGIDIN_parse_table[] = {
|
|
{ "TARGID", 0x0f, 0x0f },
|
|
{ "CLKOUT", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_targidin_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(TARGIDIN_parse_table, 2, "TARGIDIN",
|
|
0x48, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SELID_parse_table[] = {
|
|
{ "ONEBIT", 0x08, 0x08 },
|
|
{ "SELID_MASK", 0xf0, 0xf0 }
|
|
};
|
|
|
|
int
|
|
ahd_selid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SELID_parse_table, 2, "SELID",
|
|
0x49, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OPTIONMODE_parse_table[] = {
|
|
{ "AUTO_MSGOUT_DE", 0x02, 0x02 },
|
|
{ "ENDGFORMCHK", 0x04, 0x04 },
|
|
{ "BUSFREEREV", 0x10, 0x10 },
|
|
{ "BIASCANCTL", 0x20, 0x20 },
|
|
{ "AUTOACKEN", 0x40, 0x40 },
|
|
{ "BIOSCANCTL", 0x80, 0x80 },
|
|
{ "OPTIONMODE_DEFAULTS",0x02, 0x02 }
|
|
};
|
|
|
|
int
|
|
ahd_optionmode_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OPTIONMODE_parse_table, 7, "OPTIONMODE",
|
|
0x4a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SBLKCTL_parse_table[] = {
|
|
{ "SELWIDE", 0x02, 0x02 },
|
|
{ "ENAB20", 0x04, 0x04 },
|
|
{ "ENAB40", 0x08, 0x08 },
|
|
{ "DIAGLEDON", 0x40, 0x40 },
|
|
{ "DIAGLEDEN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_sblkctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SBLKCTL_parse_table, 5, "SBLKCTL",
|
|
0x4a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SIMODE0_parse_table[] = {
|
|
{ "ENARBDO", 0x01, 0x01 },
|
|
{ "ENSPIORDY", 0x02, 0x02 },
|
|
{ "ENOVERRUN", 0x04, 0x04 },
|
|
{ "ENIOERR", 0x08, 0x08 },
|
|
{ "ENSELINGO", 0x10, 0x10 },
|
|
{ "ENSELDI", 0x20, 0x20 },
|
|
{ "ENSELDO", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_simode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SIMODE0_parse_table, 7, "SIMODE0",
|
|
0x4b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SSTAT0_parse_table[] = {
|
|
{ "ARBDO", 0x01, 0x01 },
|
|
{ "SPIORDY", 0x02, 0x02 },
|
|
{ "OVERRUN", 0x04, 0x04 },
|
|
{ "IOERR", 0x08, 0x08 },
|
|
{ "SELINGO", 0x10, 0x10 },
|
|
{ "SELDI", 0x20, 0x20 },
|
|
{ "SELDO", 0x40, 0x40 },
|
|
{ "TARGET", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_sstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SSTAT0_parse_table, 8, "SSTAT0",
|
|
0x4b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRSINT0_parse_table[] = {
|
|
{ "CLRARBDO", 0x01, 0x01 },
|
|
{ "CLRSPIORDY", 0x02, 0x02 },
|
|
{ "CLROVERRUN", 0x04, 0x04 },
|
|
{ "CLRIOERR", 0x08, 0x08 },
|
|
{ "CLRSELINGO", 0x10, 0x10 },
|
|
{ "CLRSELDI", 0x20, 0x20 },
|
|
{ "CLRSELDO", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_clrsint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRSINT0_parse_table, 7, "CLRSINT0",
|
|
0x4b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SSTAT1_parse_table[] = {
|
|
{ "REQINIT", 0x01, 0x01 },
|
|
{ "STRB2FAST", 0x02, 0x02 },
|
|
{ "SCSIPERR", 0x04, 0x04 },
|
|
{ "BUSFREE", 0x08, 0x08 },
|
|
{ "PHASEMIS", 0x10, 0x10 },
|
|
{ "SCSIRSTI", 0x20, 0x20 },
|
|
{ "ATNTARG", 0x40, 0x40 },
|
|
{ "SELTO", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_sstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SSTAT1_parse_table, 8, "SSTAT1",
|
|
0x4c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRSINT1_parse_table[] = {
|
|
{ "CLRREQINIT", 0x01, 0x01 },
|
|
{ "CLRSTRB2FAST", 0x02, 0x02 },
|
|
{ "CLRSCSIPERR", 0x04, 0x04 },
|
|
{ "CLRBUSFREE", 0x08, 0x08 },
|
|
{ "CLRSCSIRSTI", 0x20, 0x20 },
|
|
{ "CLRATNO", 0x40, 0x40 },
|
|
{ "CLRSELTIMEO", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_clrsint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRSINT1_parse_table, 7, "CLRSINT1",
|
|
0x4c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SSTAT2_parse_table[] = {
|
|
{ "BUSFREE_LQO", 0x40, 0xc0 },
|
|
{ "BUSFREE_DFF0", 0x80, 0xc0 },
|
|
{ "BUSFREE_DFF1", 0xc0, 0xc0 },
|
|
{ "DMADONE", 0x01, 0x01 },
|
|
{ "SDONE", 0x02, 0x02 },
|
|
{ "WIDE_RES", 0x04, 0x04 },
|
|
{ "BSYX", 0x08, 0x08 },
|
|
{ "EXP_ACTIVE", 0x10, 0x10 },
|
|
{ "NONPACKREQ", 0x20, 0x20 },
|
|
{ "BUSFREETIME", 0xc0, 0xc0 }
|
|
};
|
|
|
|
int
|
|
ahd_sstat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SSTAT2_parse_table, 10, "SSTAT2",
|
|
0x4d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRSINT2_parse_table[] = {
|
|
{ "CLRDMADONE", 0x01, 0x01 },
|
|
{ "CLRSDONE", 0x02, 0x02 },
|
|
{ "CLRWIDE_RES", 0x04, 0x04 },
|
|
{ "CLRNONPACKREQ", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_clrsint2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRSINT2_parse_table, 4, "CLRSINT2",
|
|
0x4d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SIMODE2_parse_table[] = {
|
|
{ "ENDMADONE", 0x01, 0x01 },
|
|
{ "ENSDONE", 0x02, 0x02 },
|
|
{ "ENWIDE_RES", 0x04, 0x04 }
|
|
};
|
|
|
|
int
|
|
ahd_simode2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SIMODE2_parse_table, 3, "SIMODE2",
|
|
0x4d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t PERRDIAG_parse_table[] = {
|
|
{ "DTERR", 0x01, 0x01 },
|
|
{ "DGFORMERR", 0x02, 0x02 },
|
|
{ "CRCERR", 0x04, 0x04 },
|
|
{ "AIPERR", 0x08, 0x08 },
|
|
{ "PARITYERR", 0x10, 0x10 },
|
|
{ "PREVPHASE", 0x20, 0x20 },
|
|
{ "HIPERR", 0x40, 0x40 },
|
|
{ "HIZERO", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_perrdiag_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(PERRDIAG_parse_table, 8, "PERRDIAG",
|
|
0x4e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lqistate_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LQISTATE",
|
|
0x4e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_soffcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SOFFCNT",
|
|
0x4f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lqostate_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LQOSTATE",
|
|
0x4f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQISTAT0_parse_table[] = {
|
|
{ "LQIATNCMD", 0x01, 0x01 },
|
|
{ "LQIATNLQ", 0x02, 0x02 },
|
|
{ "LQIBADLQT", 0x04, 0x04 },
|
|
{ "LQICRCT2", 0x08, 0x08 },
|
|
{ "LQICRCT1", 0x10, 0x10 },
|
|
{ "LQIATNQAS", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_lqistat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQISTAT0_parse_table, 6, "LQISTAT0",
|
|
0x50, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRLQIINT0_parse_table[] = {
|
|
{ "CLRLQIATNCMD", 0x01, 0x01 },
|
|
{ "CLRLQIATNLQ", 0x02, 0x02 },
|
|
{ "CLRLQIBADLQT", 0x04, 0x04 },
|
|
{ "CLRLQICRCT2", 0x08, 0x08 },
|
|
{ "CLRLQICRCT1", 0x10, 0x10 },
|
|
{ "CLRLQIATNQAS", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_clrlqiint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRLQIINT0_parse_table, 6, "CLRLQIINT0",
|
|
0x50, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQIMODE0_parse_table[] = {
|
|
{ "ENLQIATNCMD", 0x01, 0x01 },
|
|
{ "ENLQIATNLQ", 0x02, 0x02 },
|
|
{ "ENLQIBADLQT", 0x04, 0x04 },
|
|
{ "ENLQICRCT2", 0x08, 0x08 },
|
|
{ "ENLQICRCT1", 0x10, 0x10 },
|
|
{ "ENLQIATNQASK", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_lqimode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQIMODE0_parse_table, 6, "LQIMODE0",
|
|
0x50, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQISTAT1_parse_table[] = {
|
|
{ "LQIOVERI_NLQ", 0x01, 0x01 },
|
|
{ "LQIOVERI_LQ", 0x02, 0x02 },
|
|
{ "LQIBADLQI", 0x04, 0x04 },
|
|
{ "LQICRCI_NLQ", 0x08, 0x08 },
|
|
{ "LQICRCI_LQ", 0x10, 0x10 },
|
|
{ "LQIABORT", 0x20, 0x20 },
|
|
{ "LQIPHASE_NLQ", 0x40, 0x40 },
|
|
{ "LQIPHASE_LQ", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_lqistat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQISTAT1_parse_table, 8, "LQISTAT1",
|
|
0x51, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRLQIINT1_parse_table[] = {
|
|
{ "CLRLQIOVERI_NLQ", 0x01, 0x01 },
|
|
{ "CLRLQIOVERI_LQ", 0x02, 0x02 },
|
|
{ "CLRLQIBADLQI", 0x04, 0x04 },
|
|
{ "CLRLQICRCI_NLQ", 0x08, 0x08 },
|
|
{ "CLRLQICRCI_LQ", 0x10, 0x10 },
|
|
{ "CLRLIQABORT", 0x20, 0x20 },
|
|
{ "CLRLQIPHASE_NLQ", 0x40, 0x40 },
|
|
{ "CLRLQIPHASE_LQ", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_clrlqiint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRLQIINT1_parse_table, 8, "CLRLQIINT1",
|
|
0x51, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQIMODE1_parse_table[] = {
|
|
{ "ENLQIOVERI_NLQ", 0x01, 0x01 },
|
|
{ "ENLQIOVERI_LQ", 0x02, 0x02 },
|
|
{ "ENLQIBADLQI", 0x04, 0x04 },
|
|
{ "ENLQICRCI_NLQ", 0x08, 0x08 },
|
|
{ "ENLQICRCI_LQ", 0x10, 0x10 },
|
|
{ "ENLIQABORT", 0x20, 0x20 },
|
|
{ "ENLQIPHASE_NLQ", 0x40, 0x40 },
|
|
{ "ENLQIPHASE_LQ", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_lqimode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQIMODE1_parse_table, 8, "LQIMODE1",
|
|
0x51, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQISTAT2_parse_table[] = {
|
|
{ "LQIGSAVAIL", 0x01, 0x01 },
|
|
{ "LQISTOPCMD", 0x02, 0x02 },
|
|
{ "LQISTOPLQ", 0x04, 0x04 },
|
|
{ "LQISTOPPKT", 0x08, 0x08 },
|
|
{ "LQIWAITFIFO", 0x10, 0x10 },
|
|
{ "LQIWORKONLQ", 0x20, 0x20 },
|
|
{ "LQIPHASE_OUTPKT", 0x40, 0x40 },
|
|
{ "PACKETIZED", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_lqistat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQISTAT2_parse_table, 8, "LQISTAT2",
|
|
0x52, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SSTAT3_parse_table[] = {
|
|
{ "OSRAMPERR", 0x01, 0x01 },
|
|
{ "NTRAMPERR", 0x02, 0x02 }
|
|
};
|
|
|
|
int
|
|
ahd_sstat3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SSTAT3_parse_table, 2, "SSTAT3",
|
|
0x53, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRSINT3_parse_table[] = {
|
|
{ "CLROSRAMPERR", 0x01, 0x01 },
|
|
{ "CLRNTRAMPERR", 0x02, 0x02 }
|
|
};
|
|
|
|
int
|
|
ahd_clrsint3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRSINT3_parse_table, 2, "CLRSINT3",
|
|
0x53, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SIMODE3_parse_table[] = {
|
|
{ "ENOSRAMPERR", 0x01, 0x01 },
|
|
{ "ENNTRAMPERR", 0x02, 0x02 }
|
|
};
|
|
|
|
int
|
|
ahd_simode3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SIMODE3_parse_table, 2, "SIMODE3",
|
|
0x53, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQOMODE0_parse_table[] = {
|
|
{ "ENLQOTCRC", 0x01, 0x01 },
|
|
{ "ENLQOATNPKT", 0x02, 0x02 },
|
|
{ "ENLQOATNLQ", 0x04, 0x04 },
|
|
{ "ENLQOSTOPT2", 0x08, 0x08 },
|
|
{ "ENLQOTARGSCBPERR", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_lqomode0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQOMODE0_parse_table, 5, "LQOMODE0",
|
|
0x54, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQOSTAT0_parse_table[] = {
|
|
{ "LQOTCRC", 0x01, 0x01 },
|
|
{ "LQOATNPKT", 0x02, 0x02 },
|
|
{ "LQOATNLQ", 0x04, 0x04 },
|
|
{ "LQOSTOPT2", 0x08, 0x08 },
|
|
{ "LQOTARGSCBPERR", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_lqostat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQOSTAT0_parse_table, 5, "LQOSTAT0",
|
|
0x54, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRLQOINT0_parse_table[] = {
|
|
{ "CLRLQOTCRC", 0x01, 0x01 },
|
|
{ "CLRLQOATNPKT", 0x02, 0x02 },
|
|
{ "CLRLQOATNLQ", 0x04, 0x04 },
|
|
{ "CLRLQOSTOPT2", 0x08, 0x08 },
|
|
{ "CLRLQOTARGSCBPERR", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_clrlqoint0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRLQOINT0_parse_table, 5, "CLRLQOINT0",
|
|
0x54, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQOMODE1_parse_table[] = {
|
|
{ "ENLQOPHACHGINPKT", 0x01, 0x01 },
|
|
{ "ENLQOBUSFREE", 0x02, 0x02 },
|
|
{ "ENLQOBADQAS", 0x04, 0x04 },
|
|
{ "ENLQOSTOPI2", 0x08, 0x08 },
|
|
{ "ENLQOINITSCBPERR", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_lqomode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQOMODE1_parse_table, 5, "LQOMODE1",
|
|
0x55, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQOSTAT1_parse_table[] = {
|
|
{ "LQOPHACHGINPKT", 0x01, 0x01 },
|
|
{ "LQOBUSFREE", 0x02, 0x02 },
|
|
{ "LQOBADQAS", 0x04, 0x04 },
|
|
{ "LQOSTOPI2", 0x08, 0x08 },
|
|
{ "LQOINITSCBPERR", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_lqostat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQOSTAT1_parse_table, 5, "LQOSTAT1",
|
|
0x55, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRLQOINT1_parse_table[] = {
|
|
{ "CLRLQOPHACHGINPKT", 0x01, 0x01 },
|
|
{ "CLRLQOBUSFREE", 0x02, 0x02 },
|
|
{ "CLRLQOBADQAS", 0x04, 0x04 },
|
|
{ "CLRLQOSTOPI2", 0x08, 0x08 },
|
|
{ "CLRLQOINITSCBPERR", 0x10, 0x10 }
|
|
};
|
|
|
|
int
|
|
ahd_clrlqoint1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRLQOINT1_parse_table, 5, "CLRLQOINT1",
|
|
0x55, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_os_space_cnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "OS_SPACE_CNT",
|
|
0x56, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQOSTAT2_parse_table[] = {
|
|
{ "LQOSTOP0", 0x01, 0x01 },
|
|
{ "LQOPHACHGOUTPKT", 0x02, 0x02 },
|
|
{ "LQOWAITFIFO", 0x10, 0x10 },
|
|
{ "LQOPKT", 0xe0, 0xe0 }
|
|
};
|
|
|
|
int
|
|
ahd_lqostat2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQOSTAT2_parse_table, 4, "LQOSTAT2",
|
|
0x56, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SIMODE1_parse_table[] = {
|
|
{ "ENREQINIT", 0x01, 0x01 },
|
|
{ "ENSTRB2FAST", 0x02, 0x02 },
|
|
{ "ENSCSIPERR", 0x04, 0x04 },
|
|
{ "ENBUSFREE", 0x08, 0x08 },
|
|
{ "ENPHASEMIS", 0x10, 0x10 },
|
|
{ "ENSCSIRST", 0x20, 0x20 },
|
|
{ "ENATNTARG", 0x40, 0x40 },
|
|
{ "ENSELTIMO", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_simode1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SIMODE1_parse_table, 8, "SIMODE1",
|
|
0x57, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_gsfifo_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "GSFIFO",
|
|
0x58, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DFFSXFRCTL_parse_table[] = {
|
|
{ "RSTCHN", 0x01, 0x01 },
|
|
{ "CLRCHN", 0x02, 0x02 },
|
|
{ "CLRSHCNT", 0x04, 0x04 },
|
|
{ "DFFBITBUCKET", 0x08, 0x08 }
|
|
};
|
|
|
|
int
|
|
ahd_dffsxfrctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DFFSXFRCTL_parse_table, 4, "DFFSXFRCTL",
|
|
0x5a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_nextscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "NEXTSCB",
|
|
0x5a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LQOSCSCTL_parse_table[] = {
|
|
{ "LQONOCHKOVER", 0x01, 0x01 },
|
|
{ "LQOH2A_VERSION", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_lqoscsctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LQOSCSCTL_parse_table, 2, "LQOSCSCTL",
|
|
0x5a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQINTSRC_parse_table[] = {
|
|
{ "CFG4TCMD", 0x01, 0x01 },
|
|
{ "CFG4ICMD", 0x02, 0x02 },
|
|
{ "CFG4TSTAT", 0x04, 0x04 },
|
|
{ "CFG4ISTAT", 0x08, 0x08 },
|
|
{ "CFG4DATA", 0x10, 0x10 },
|
|
{ "SAVEPTRS", 0x20, 0x20 },
|
|
{ "CTXTDONE", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_seqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQINTSRC_parse_table, 7, "SEQINTSRC",
|
|
0x5b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CLRSEQINTSRC_parse_table[] = {
|
|
{ "CLRCFG4TCMD", 0x01, 0x01 },
|
|
{ "CLRCFG4ICMD", 0x02, 0x02 },
|
|
{ "CLRCFG4TSTAT", 0x04, 0x04 },
|
|
{ "CLRCFG4ISTAT", 0x08, 0x08 },
|
|
{ "CLRCFG4DATA", 0x10, 0x10 },
|
|
{ "CLRSAVEPTRS", 0x20, 0x20 },
|
|
{ "CLRCTXTDONE", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_clrseqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CLRSEQINTSRC_parse_table, 7, "CLRSEQINTSRC",
|
|
0x5b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_currscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CURRSCB",
|
|
0x5c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQIMODE_parse_table[] = {
|
|
{ "ENCFG4TCMD", 0x01, 0x01 },
|
|
{ "ENCFG4ICMD", 0x02, 0x02 },
|
|
{ "ENCFG4TSTAT", 0x04, 0x04 },
|
|
{ "ENCFG4ISTAT", 0x08, 0x08 },
|
|
{ "ENCFG4DATA", 0x10, 0x10 },
|
|
{ "ENSAVEPTRS", 0x20, 0x20 },
|
|
{ "ENCTXTDONE", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_seqimode_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQIMODE_parse_table, 7, "SEQIMODE",
|
|
0x5c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t MDFFSTAT_parse_table[] = {
|
|
{ "FIFOFREE", 0x01, 0x01 },
|
|
{ "DATAINFIFO", 0x02, 0x02 },
|
|
{ "DLZERO", 0x04, 0x04 },
|
|
{ "SHVALID", 0x08, 0x08 },
|
|
{ "LASTSDONE", 0x10, 0x10 },
|
|
{ "SHCNTMINUS1", 0x20, 0x20 },
|
|
{ "SHCNTNEGATIVE", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_mdffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(MDFFSTAT_parse_table, 7, "MDFFSTAT",
|
|
0x5d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CRCCONTROL_parse_table[] = {
|
|
{ "CRCVALCHKEN", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_crccontrol_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CRCCONTROL_parse_table, 1, "CRCCONTROL",
|
|
0x5d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSITEST_parse_table[] = {
|
|
{ "SEL_TXPLL_DEBUG", 0x04, 0x04 },
|
|
{ "CNTRTEST", 0x08, 0x08 }
|
|
};
|
|
|
|
int
|
|
ahd_scsitest_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSITEST_parse_table, 2, "SCSITEST",
|
|
0x5e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfftag_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFFTAG",
|
|
0x5e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lastscb_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LASTSCB",
|
|
0x5e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t IOPDNCTL_parse_table[] = {
|
|
{ "PDN_DIFFSENSE", 0x01, 0x01 },
|
|
{ "PDN_IDIST", 0x04, 0x04 },
|
|
{ "DISABLE_OE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_iopdnctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(IOPDNCTL_parse_table, 3, "IOPDNCTL",
|
|
0x5f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_negoaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "NEGOADDR",
|
|
0x60, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_shaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SHADDR",
|
|
0x60, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dgrpcrci_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DGRPCRCI",
|
|
0x60, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_negperiod_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "NEGPERIOD",
|
|
0x61, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_packcrci_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "PACKCRCI",
|
|
0x62, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_negoffset_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "NEGOFFSET",
|
|
0x62, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t NEGPPROPTS_parse_table[] = {
|
|
{ "PPROPT_IUT", 0x01, 0x01 },
|
|
{ "PPROPT_DT", 0x02, 0x02 },
|
|
{ "PPROPT_QAS", 0x04, 0x04 },
|
|
{ "PPROPT_PACE", 0x08, 0x08 }
|
|
};
|
|
|
|
int
|
|
ahd_negppropts_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NEGPPROPTS_parse_table, 4, "NEGPPROPTS",
|
|
0x63, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t NEGCONOPTS_parse_table[] = {
|
|
{ "WIDEXFER", 0x01, 0x01 },
|
|
{ "ENAUTOATNO", 0x02, 0x02 },
|
|
{ "ENAUTOATNI", 0x04, 0x04 },
|
|
{ "ENSLOWCRC", 0x08, 0x08 },
|
|
{ "RTI_OVRDTRN", 0x10, 0x10 },
|
|
{ "RTI_WRTDIS", 0x20, 0x20 },
|
|
{ "ENSNAPSHOT", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_negconopts_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NEGCONOPTS_parse_table, 7, "NEGCONOPTS",
|
|
0x64, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_annexcol_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ANNEXCOL",
|
|
0x65, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_annexdat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ANNEXDAT",
|
|
0x66, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSCHKN_parse_table[] = {
|
|
{ "LSTSGCLRDIS", 0x01, 0x01 },
|
|
{ "SHVALIDSTDIS", 0x02, 0x02 },
|
|
{ "DFFACTCLR", 0x04, 0x04 },
|
|
{ "SDONEMSKDIS", 0x08, 0x08 },
|
|
{ "WIDERESEN", 0x10, 0x10 },
|
|
{ "CURRFIFODEF", 0x20, 0x20 },
|
|
{ "STSELSKIDDIS", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_scschkn_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSCHKN_parse_table, 7, "SCSCHKN",
|
|
0x66, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_iownid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "IOWNID",
|
|
0x67, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_shcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SHCNT",
|
|
0x68, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t PLL960CTL0_parse_table[] = {
|
|
{ "PLL_ENFBM", 0x01, 0x01 },
|
|
{ "PLL_DLPF", 0x02, 0x02 },
|
|
{ "PLL_ENLPF", 0x04, 0x04 },
|
|
{ "PLL_ENLUD", 0x08, 0x08 },
|
|
{ "PLL_NS", 0x30, 0x30 },
|
|
{ "PLL_PWDN", 0x40, 0x40 },
|
|
{ "PLL_VCOSEL", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_pll960ctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(PLL960CTL0_parse_table, 7, "PLL960CTL0",
|
|
0x68, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t PLL960CTL1_parse_table[] = {
|
|
{ "PLL_RST", 0x01, 0x01 },
|
|
{ "PLL_CNTCLR", 0x40, 0x40 },
|
|
{ "PLL_CNTEN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_pll960ctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(PLL960CTL1_parse_table, 3, "PLL960CTL1",
|
|
0x69, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_townid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "TOWNID",
|
|
0x69, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_xsig_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "XSIG",
|
|
0x6a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_pll960cnt0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "PLL960CNT0",
|
|
0x6a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_seloid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SELOID",
|
|
0x6b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_fairness_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "FAIRNESS",
|
|
0x6c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t PLL400CTL0_parse_table[] = {
|
|
{ "PLL_ENFBM", 0x01, 0x01 },
|
|
{ "PLL_DLPF", 0x02, 0x02 },
|
|
{ "PLL_ENLPF", 0x04, 0x04 },
|
|
{ "PLL_ENLUD", 0x08, 0x08 },
|
|
{ "PLL_NS", 0x30, 0x30 },
|
|
{ "PLL_PWDN", 0x40, 0x40 },
|
|
{ "PLL_VCOSEL", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_pll400ctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(PLL400CTL0_parse_table, 7, "PLL400CTL0",
|
|
0x6c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t PLL400CTL1_parse_table[] = {
|
|
{ "PLL_RST", 0x01, 0x01 },
|
|
{ "PLL_CNTCLR", 0x40, 0x40 },
|
|
{ "PLL_CNTEN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_pll400ctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(PLL400CTL1_parse_table, 3, "PLL400CTL1",
|
|
0x6d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_pll400cnt0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "PLL400CNT0",
|
|
0x6e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_unfairness_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "UNFAIRNESS",
|
|
0x6e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_hodmaadr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "HODMAADR",
|
|
0x70, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_haddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "HADDR",
|
|
0x70, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t PLLDELAY_parse_table[] = {
|
|
{ "SPLIT_DROP_REQ", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_plldelay_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(PLLDELAY_parse_table, 1, "PLLDELAY",
|
|
0x70, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_hcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "HCNT",
|
|
0x78, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_hodmacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "HODMACNT",
|
|
0x78, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_hodmaen_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "HODMAEN",
|
|
0x7a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scbhaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCBHADDR",
|
|
0x7c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sghaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SGHADDR",
|
|
0x7c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scbhcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCBHCNT",
|
|
0x84, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sghcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SGHCNT",
|
|
0x84, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DFF_THRSH_parse_table[] = {
|
|
{ "WR_DFTHRSH_MIN", 0x00, 0x70 },
|
|
{ "RD_DFTHRSH_MIN", 0x00, 0x07 },
|
|
{ "RD_DFTHRSH_25", 0x01, 0x07 },
|
|
{ "RD_DFTHRSH_50", 0x02, 0x07 },
|
|
{ "RD_DFTHRSH_63", 0x03, 0x07 },
|
|
{ "RD_DFTHRSH_75", 0x04, 0x07 },
|
|
{ "RD_DFTHRSH_85", 0x05, 0x07 },
|
|
{ "RD_DFTHRSH_90", 0x06, 0x07 },
|
|
{ "RD_DFTHRSH_MAX", 0x07, 0x07 },
|
|
{ "WR_DFTHRSH_25", 0x10, 0x70 },
|
|
{ "WR_DFTHRSH_50", 0x20, 0x70 },
|
|
{ "WR_DFTHRSH_63", 0x30, 0x70 },
|
|
{ "WR_DFTHRSH_75", 0x40, 0x70 },
|
|
{ "WR_DFTHRSH_85", 0x50, 0x70 },
|
|
{ "WR_DFTHRSH_90", 0x60, 0x70 },
|
|
{ "WR_DFTHRSH_MAX", 0x70, 0x70 },
|
|
{ "RD_DFTHRSH", 0x07, 0x07 },
|
|
{ "WR_DFTHRSH", 0x70, 0x70 }
|
|
};
|
|
|
|
int
|
|
ahd_dff_thrsh_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DFF_THRSH_parse_table, 18, "DFF_THRSH",
|
|
0x88, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_romaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ROMADDR",
|
|
0x8a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t ROMCNTRL_parse_table[] = {
|
|
{ "RDY", 0x01, 0x01 },
|
|
{ "REPEAT", 0x02, 0x02 },
|
|
{ "ROMSPD", 0x18, 0x18 },
|
|
{ "ROMOP", 0xe0, 0xe0 }
|
|
};
|
|
|
|
int
|
|
ahd_romcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(ROMCNTRL_parse_table, 4, "ROMCNTRL",
|
|
0x8d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_romdata_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ROMDATA",
|
|
0x8e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DCHRXMSG0_parse_table[] = {
|
|
{ "CFNUM", 0x07, 0x07 },
|
|
{ "CDNUM", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_dchrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DCHRXMSG0_parse_table, 2, "DCHRXMSG0",
|
|
0x90, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OVLYRXMSG0_parse_table[] = {
|
|
{ "CFNUM", 0x07, 0x07 },
|
|
{ "CDNUM", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_ovlyrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OVLYRXMSG0_parse_table, 2, "OVLYRXMSG0",
|
|
0x90, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMCRXMSG0_parse_table[] = {
|
|
{ "CFNUM", 0x07, 0x07 },
|
|
{ "CDNUM", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_cmcrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMCRXMSG0_parse_table, 2, "CMCRXMSG0",
|
|
0x90, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t ROENABLE_parse_table[] = {
|
|
{ "DCH0ROEN", 0x01, 0x01 },
|
|
{ "DCH1ROEN", 0x02, 0x02 },
|
|
{ "SGROEN", 0x04, 0x04 },
|
|
{ "CMCROEN", 0x08, 0x08 },
|
|
{ "OVLYROEN", 0x10, 0x10 },
|
|
{ "MSIROEN", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_roenable_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(ROENABLE_parse_table, 6, "ROENABLE",
|
|
0x90, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DCHRXMSG1_parse_table[] = {
|
|
{ "CBNUM", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_dchrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DCHRXMSG1_parse_table, 1, "DCHRXMSG1",
|
|
0x91, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OVLYRXMSG1_parse_table[] = {
|
|
{ "CBNUM", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_ovlyrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OVLYRXMSG1_parse_table, 1, "OVLYRXMSG1",
|
|
0x91, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMCRXMSG1_parse_table[] = {
|
|
{ "CBNUM", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_cmcrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMCRXMSG1_parse_table, 1, "CMCRXMSG1",
|
|
0x91, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t NSENABLE_parse_table[] = {
|
|
{ "DCH0NSEN", 0x01, 0x01 },
|
|
{ "DCH1NSEN", 0x02, 0x02 },
|
|
{ "SGNSEN", 0x04, 0x04 },
|
|
{ "CMCNSEN", 0x08, 0x08 },
|
|
{ "OVLYNSEN", 0x10, 0x10 },
|
|
{ "MSINSEN", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_nsenable_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NSENABLE_parse_table, 6, "NSENABLE",
|
|
0x91, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DCHRXMSG2_parse_table[] = {
|
|
{ "MINDEX", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_dchrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DCHRXMSG2_parse_table, 1, "DCHRXMSG2",
|
|
0x92, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OVLYRXMSG2_parse_table[] = {
|
|
{ "MINDEX", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_ovlyrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OVLYRXMSG2_parse_table, 1, "OVLYRXMSG2",
|
|
0x92, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMCRXMSG2_parse_table[] = {
|
|
{ "MINDEX", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_cmcrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMCRXMSG2_parse_table, 1, "CMCRXMSG2",
|
|
0x92, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ost_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "OST",
|
|
0x92, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DCHRXMSG3_parse_table[] = {
|
|
{ "MCLASS", 0x0f, 0x0f }
|
|
};
|
|
|
|
int
|
|
ahd_dchrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DCHRXMSG3_parse_table, 1, "DCHRXMSG3",
|
|
0x93, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OVLYRXMSG3_parse_table[] = {
|
|
{ "MCLASS", 0x0f, 0x0f }
|
|
};
|
|
|
|
int
|
|
ahd_ovlyrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OVLYRXMSG3_parse_table, 1, "OVLYRXMSG3",
|
|
0x93, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMCRXMSG3_parse_table[] = {
|
|
{ "MCLASS", 0x0f, 0x0f }
|
|
};
|
|
|
|
int
|
|
ahd_cmcrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMCRXMSG3_parse_table, 1, "CMCRXMSG3",
|
|
0x93, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t PCIXCTL_parse_table[] = {
|
|
{ "CMPABCDIS", 0x01, 0x01 },
|
|
{ "TSCSERREN", 0x02, 0x02 },
|
|
{ "SRSPDPEEN", 0x04, 0x04 },
|
|
{ "SPLTSTADIS", 0x08, 0x08 },
|
|
{ "SPLTSMADIS", 0x10, 0x10 },
|
|
{ "UNEXPSCIEN", 0x20, 0x20 },
|
|
{ "SERRPULSE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_pcixctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(PCIXCTL_parse_table, 7, "PCIXCTL",
|
|
0x93, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_cmcseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CMCSEQBCNT",
|
|
0x94, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dchseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DCHSEQBCNT",
|
|
0x94, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ovlyseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "OVLYSEQBCNT",
|
|
0x94, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMCSPLTSTAT0_parse_table[] = {
|
|
{ "RXSPLTRSP", 0x01, 0x01 },
|
|
{ "RXSCEMSG", 0x02, 0x02 },
|
|
{ "RXOVRUN", 0x04, 0x04 },
|
|
{ "CNTNOTCMPLT", 0x08, 0x08 },
|
|
{ "SCDATBUCKET", 0x10, 0x10 },
|
|
{ "SCADERR", 0x20, 0x20 },
|
|
{ "SCBCERR", 0x40, 0x40 },
|
|
{ "STAETERM", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_cmcspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMCSPLTSTAT0_parse_table, 8, "CMCSPLTSTAT0",
|
|
0x96, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DCHSPLTSTAT0_parse_table[] = {
|
|
{ "RXSPLTRSP", 0x01, 0x01 },
|
|
{ "RXSCEMSG", 0x02, 0x02 },
|
|
{ "RXOVRUN", 0x04, 0x04 },
|
|
{ "CNTNOTCMPLT", 0x08, 0x08 },
|
|
{ "SCDATBUCKET", 0x10, 0x10 },
|
|
{ "SCADERR", 0x20, 0x20 },
|
|
{ "SCBCERR", 0x40, 0x40 },
|
|
{ "STAETERM", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_dchspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DCHSPLTSTAT0_parse_table, 8, "DCHSPLTSTAT0",
|
|
0x96, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OVLYSPLTSTAT0_parse_table[] = {
|
|
{ "RXSPLTRSP", 0x01, 0x01 },
|
|
{ "RXSCEMSG", 0x02, 0x02 },
|
|
{ "RXOVRUN", 0x04, 0x04 },
|
|
{ "CNTNOTCMPLT", 0x08, 0x08 },
|
|
{ "SCDATBUCKET", 0x10, 0x10 },
|
|
{ "SCADERR", 0x20, 0x20 },
|
|
{ "SCBCERR", 0x40, 0x40 },
|
|
{ "STAETERM", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_ovlyspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OVLYSPLTSTAT0_parse_table, 8, "OVLYSPLTSTAT0",
|
|
0x96, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMCSPLTSTAT1_parse_table[] = {
|
|
{ "RXDATABUCKET", 0x01, 0x01 }
|
|
};
|
|
|
|
int
|
|
ahd_cmcspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMCSPLTSTAT1_parse_table, 1, "CMCSPLTSTAT1",
|
|
0x97, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DCHSPLTSTAT1_parse_table[] = {
|
|
{ "RXDATABUCKET", 0x01, 0x01 }
|
|
};
|
|
|
|
int
|
|
ahd_dchspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DCHSPLTSTAT1_parse_table, 1, "DCHSPLTSTAT1",
|
|
0x97, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OVLYSPLTSTAT1_parse_table[] = {
|
|
{ "RXDATABUCKET", 0x01, 0x01 }
|
|
};
|
|
|
|
int
|
|
ahd_ovlyspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OVLYSPLTSTAT1_parse_table, 1, "OVLYSPLTSTAT1",
|
|
0x97, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SGRXMSG0_parse_table[] = {
|
|
{ "CFNUM", 0x07, 0x07 },
|
|
{ "CDNUM", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_sgrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SGRXMSG0_parse_table, 2, "SGRXMSG0",
|
|
0x98, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SLVSPLTOUTADR0_parse_table[] = {
|
|
{ "LOWER_ADDR", 0x7f, 0x7f }
|
|
};
|
|
|
|
int
|
|
ahd_slvspltoutadr0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SLVSPLTOUTADR0_parse_table, 1, "SLVSPLTOUTADR0",
|
|
0x98, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SGRXMSG1_parse_table[] = {
|
|
{ "CBNUM", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_sgrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SGRXMSG1_parse_table, 1, "SGRXMSG1",
|
|
0x99, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SLVSPLTOUTADR1_parse_table[] = {
|
|
{ "REQ_FNUM", 0x07, 0x07 },
|
|
{ "REQ_DNUM", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_slvspltoutadr1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SLVSPLTOUTADR1_parse_table, 2, "SLVSPLTOUTADR1",
|
|
0x99, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SGRXMSG2_parse_table[] = {
|
|
{ "MINDEX", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_sgrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SGRXMSG2_parse_table, 1, "SGRXMSG2",
|
|
0x9a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SLVSPLTOUTADR2_parse_table[] = {
|
|
{ "REQ_BNUM", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_slvspltoutadr2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SLVSPLTOUTADR2_parse_table, 1, "SLVSPLTOUTADR2",
|
|
0x9a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SGRXMSG3_parse_table[] = {
|
|
{ "MCLASS", 0x0f, 0x0f }
|
|
};
|
|
|
|
int
|
|
ahd_sgrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SGRXMSG3_parse_table, 1, "SGRXMSG3",
|
|
0x9b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SLVSPLTOUTADR3_parse_table[] = {
|
|
{ "RLXORD", 0x10, 0x10 },
|
|
{ "TAG_NUM", 0x1f, 0x1f }
|
|
};
|
|
|
|
int
|
|
ahd_slvspltoutadr3_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SLVSPLTOUTADR3_parse_table, 2, "SLVSPLTOUTADR3",
|
|
0x9b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SLVSPLTOUTATTR0_parse_table[] = {
|
|
{ "LOWER_BCNT", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_slvspltoutattr0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SLVSPLTOUTATTR0_parse_table, 1, "SLVSPLTOUTATTR0",
|
|
0x9c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sgseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SGSEQBCNT",
|
|
0x9c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SLVSPLTOUTATTR1_parse_table[] = {
|
|
{ "CMPLT_FNUM", 0x07, 0x07 },
|
|
{ "CMPLT_DNUM", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_slvspltoutattr1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SLVSPLTOUTATTR1_parse_table, 2, "SLVSPLTOUTATTR1",
|
|
0x9d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SLVSPLTOUTATTR2_parse_table[] = {
|
|
{ "CMPLT_BNUM", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_slvspltoutattr2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SLVSPLTOUTATTR2_parse_table, 1, "SLVSPLTOUTATTR2",
|
|
0x9e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SGSPLTSTAT0_parse_table[] = {
|
|
{ "RXSPLTRSP", 0x01, 0x01 },
|
|
{ "RXSCEMSG", 0x02, 0x02 },
|
|
{ "RXOVRUN", 0x04, 0x04 },
|
|
{ "CNTNOTCMPLT", 0x08, 0x08 },
|
|
{ "SCDATBUCKET", 0x10, 0x10 },
|
|
{ "SCADERR", 0x20, 0x20 },
|
|
{ "SCBCERR", 0x40, 0x40 },
|
|
{ "STAETERM", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_sgspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SGSPLTSTAT0_parse_table, 8, "SGSPLTSTAT0",
|
|
0x9e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SFUNCT_parse_table[] = {
|
|
{ "TEST_NUM", 0x0f, 0x0f },
|
|
{ "TEST_GROUP", 0xf0, 0xf0 }
|
|
};
|
|
|
|
int
|
|
ahd_sfunct_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SFUNCT_parse_table, 2, "SFUNCT",
|
|
0x9f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SGSPLTSTAT1_parse_table[] = {
|
|
{ "RXDATABUCKET", 0x01, 0x01 }
|
|
};
|
|
|
|
int
|
|
ahd_sgspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SGSPLTSTAT1_parse_table, 1, "SGSPLTSTAT1",
|
|
0x9f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DF0PCISTAT_parse_table[] = {
|
|
{ "DPR", 0x01, 0x01 },
|
|
{ "TWATERR", 0x02, 0x02 },
|
|
{ "RDPERR", 0x04, 0x04 },
|
|
{ "SCAAPERR", 0x08, 0x08 },
|
|
{ "RTA", 0x10, 0x10 },
|
|
{ "RMA", 0x20, 0x20 },
|
|
{ "SSE", 0x40, 0x40 },
|
|
{ "DPE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_df0pcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DF0PCISTAT_parse_table, 8, "DF0PCISTAT",
|
|
0xa0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_reg0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "REG0",
|
|
0xa0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DF1PCISTAT_parse_table[] = {
|
|
{ "DPR", 0x01, 0x01 },
|
|
{ "TWATERR", 0x02, 0x02 },
|
|
{ "RDPERR", 0x04, 0x04 },
|
|
{ "SCAAPERR", 0x08, 0x08 },
|
|
{ "RTA", 0x10, 0x10 },
|
|
{ "RMA", 0x20, 0x20 },
|
|
{ "SSE", 0x40, 0x40 },
|
|
{ "DPE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_df1pcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DF1PCISTAT_parse_table, 8, "DF1PCISTAT",
|
|
0xa1, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SGPCISTAT_parse_table[] = {
|
|
{ "DPR", 0x01, 0x01 },
|
|
{ "RDPERR", 0x04, 0x04 },
|
|
{ "SCAAPERR", 0x08, 0x08 },
|
|
{ "RTA", 0x10, 0x10 },
|
|
{ "RMA", 0x20, 0x20 },
|
|
{ "SSE", 0x40, 0x40 },
|
|
{ "DPE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_sgpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SGPCISTAT_parse_table, 7, "SGPCISTAT",
|
|
0xa2, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_reg1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "REG1",
|
|
0xa2, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMCPCISTAT_parse_table[] = {
|
|
{ "DPR", 0x01, 0x01 },
|
|
{ "TWATERR", 0x02, 0x02 },
|
|
{ "RDPERR", 0x04, 0x04 },
|
|
{ "SCAAPERR", 0x08, 0x08 },
|
|
{ "RTA", 0x10, 0x10 },
|
|
{ "RMA", 0x20, 0x20 },
|
|
{ "SSE", 0x40, 0x40 },
|
|
{ "DPE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_cmcpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMCPCISTAT_parse_table, 8, "CMCPCISTAT",
|
|
0xa3, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t OVLYPCISTAT_parse_table[] = {
|
|
{ "DPR", 0x01, 0x01 },
|
|
{ "RDPERR", 0x04, 0x04 },
|
|
{ "SCAAPERR", 0x08, 0x08 },
|
|
{ "RTA", 0x10, 0x10 },
|
|
{ "RMA", 0x20, 0x20 },
|
|
{ "SSE", 0x40, 0x40 },
|
|
{ "DPE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_ovlypcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(OVLYPCISTAT_parse_table, 7, "OVLYPCISTAT",
|
|
0xa4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_reg_isr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "REG_ISR",
|
|
0xa4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t MSIPCISTAT_parse_table[] = {
|
|
{ "DPR", 0x01, 0x01 },
|
|
{ "TWATERR", 0x02, 0x02 },
|
|
{ "CLRPENDMSI", 0x08, 0x08 },
|
|
{ "RTA", 0x10, 0x10 },
|
|
{ "RMA", 0x20, 0x20 },
|
|
{ "SSE", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_msipcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(MSIPCISTAT_parse_table, 6, "MSIPCISTAT",
|
|
0xa6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SG_STATE_parse_table[] = {
|
|
{ "SEGS_AVAIL", 0x01, 0x01 },
|
|
{ "LOADING_NEEDED", 0x02, 0x02 },
|
|
{ "FETCH_INPROG", 0x04, 0x04 }
|
|
};
|
|
|
|
int
|
|
ahd_sg_state_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SG_STATE_parse_table, 3, "SG_STATE",
|
|
0xa6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t TARGPCISTAT_parse_table[] = {
|
|
{ "TWATERR", 0x02, 0x02 },
|
|
{ "STA", 0x08, 0x08 },
|
|
{ "SSE", 0x40, 0x40 },
|
|
{ "DPE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_targpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(TARGPCISTAT_parse_table, 4, "TARGPCISTAT",
|
|
0xa7, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_data_count_odd_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DATA_COUNT_ODD",
|
|
0xa7, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCBPTR",
|
|
0xa8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ccscbacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CCSCBACNT",
|
|
0xab, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCBAUTOPTR_parse_table[] = {
|
|
{ "SCBPTR_OFF", 0x07, 0x07 },
|
|
{ "SCBPTR_ADDR", 0x38, 0x38 },
|
|
{ "AUSCBPTR_EN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_scbautoptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCBAUTOPTR_parse_table, 3, "SCBAUTOPTR",
|
|
0xab, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ccscbadr_bk_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CCSCBADR_BK",
|
|
0xac, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ccsgaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CCSGADDR",
|
|
0xac, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ccscbaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CCSCBADDR",
|
|
0xac, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CCSCBCTL_parse_table[] = {
|
|
{ "CCSCBRESET", 0x01, 0x01 },
|
|
{ "CCSCBDIR", 0x04, 0x04 },
|
|
{ "CCSCBEN", 0x08, 0x08 },
|
|
{ "CCARREN", 0x10, 0x10 },
|
|
{ "ARRDONE", 0x40, 0x40 },
|
|
{ "CCSCBDONE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_ccscbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CCSCBCTL_parse_table, 6, "CCSCBCTL",
|
|
0xad, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CCSGCTL_parse_table[] = {
|
|
{ "CCSGRESET", 0x01, 0x01 },
|
|
{ "SG_FETCH_REQ", 0x02, 0x02 },
|
|
{ "CCSGENACK", 0x08, 0x08 },
|
|
{ "SG_CACHE_AVAIL", 0x10, 0x10 },
|
|
{ "CCSGDONE", 0x80, 0x80 },
|
|
{ "CCSGEN", 0x0c, 0x0c }
|
|
};
|
|
|
|
int
|
|
ahd_ccsgctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CCSGCTL_parse_table, 6, "CCSGCTL",
|
|
0xad, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t CMC_RAMBIST_parse_table[] = {
|
|
{ "CMC_BUFFER_BIST_EN", 0x01, 0x01 },
|
|
{ "CMC_BUFFER_BIST_FAIL",0x02, 0x02 },
|
|
{ "SG_BIST_EN", 0x10, 0x10 },
|
|
{ "SG_BIST_FAIL", 0x20, 0x20 },
|
|
{ "SCBRAMBIST_FAIL", 0x40, 0x40 },
|
|
{ "SG_ELEMENT_SIZE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_cmc_rambist_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(CMC_RAMBIST_parse_table, 6, "CMC_RAMBIST",
|
|
0xad, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ccsgram_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CCSGRAM",
|
|
0xb0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ccscbram_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CCSCBRAM",
|
|
0xb0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_flexadr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "FLEXADR",
|
|
0xb0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_flexcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "FLEXCNT",
|
|
0xb3, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t FLEXDMASTAT_parse_table[] = {
|
|
{ "FLEXDMADONE", 0x01, 0x01 },
|
|
{ "FLEXDMAERR", 0x02, 0x02 }
|
|
};
|
|
|
|
int
|
|
ahd_flexdmastat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(FLEXDMASTAT_parse_table, 2, "FLEXDMASTAT",
|
|
0xb5, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_flexdata_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "FLEXDATA",
|
|
0xb6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_brddat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "BRDDAT",
|
|
0xb8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t BRDCTL_parse_table[] = {
|
|
{ "BRDSTB", 0x01, 0x01 },
|
|
{ "BRDRW", 0x02, 0x02 },
|
|
{ "BRDEN", 0x04, 0x04 },
|
|
{ "BRDADDR", 0x38, 0x38 },
|
|
{ "FLXARBREQ", 0x40, 0x40 },
|
|
{ "FLXARBACK", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_brdctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(BRDCTL_parse_table, 6, "BRDCTL",
|
|
0xb9, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_seeadr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SEEADR",
|
|
0xba, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_seedat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SEEDAT",
|
|
0xbc, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEECTL_parse_table[] = {
|
|
{ "SEEOP_ERAL", 0x40, 0x70 },
|
|
{ "SEEOP_WRITE", 0x50, 0x70 },
|
|
{ "SEEOP_READ", 0x60, 0x70 },
|
|
{ "SEEOP_ERASE", 0x70, 0x70 },
|
|
{ "SEESTART", 0x01, 0x01 },
|
|
{ "SEERST", 0x02, 0x02 },
|
|
{ "SEEOPCODE", 0x70, 0x70 },
|
|
{ "SEEOP_EWEN", 0x40, 0x40 },
|
|
{ "SEEOP_WALL", 0x40, 0x40 },
|
|
{ "SEEOP_EWDS", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_seectl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEECTL_parse_table, 10, "SEECTL",
|
|
0xbe, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEESTAT_parse_table[] = {
|
|
{ "SEESTART", 0x01, 0x01 },
|
|
{ "SEEBUSY", 0x02, 0x02 },
|
|
{ "SEEARBACK", 0x04, 0x04 },
|
|
{ "LDALTID_L", 0x08, 0x08 },
|
|
{ "SEEOPCODE", 0x70, 0x70 },
|
|
{ "INIT_DONE", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_seestat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEESTAT_parse_table, 6, "SEESTAT",
|
|
0xbe, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCBCNT",
|
|
0xbf, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DSPFLTRCTL_parse_table[] = {
|
|
{ "DSPFCNTSEL", 0x0f, 0x0f },
|
|
{ "EDGESENSE", 0x10, 0x10 },
|
|
{ "FLTRDISABLE", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_dspfltrctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DSPFLTRCTL_parse_table, 3, "DSPFLTRCTL",
|
|
0xc0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfwaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFWADDR",
|
|
0xc0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DSPDATACTL_parse_table[] = {
|
|
{ "XMITOFFSTDIS", 0x02, 0x02 },
|
|
{ "RCVROFFSTDIS", 0x04, 0x04 },
|
|
{ "DESQDIS", 0x10, 0x10 },
|
|
{ "BYPASSENAB", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_dspdatactl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DSPDATACTL_parse_table, 4, "DSPDATACTL",
|
|
0xc1, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DSPREQCTL_parse_table[] = {
|
|
{ "MANREQDLY", 0x3f, 0x3f },
|
|
{ "MANREQCTL", 0xc0, 0xc0 }
|
|
};
|
|
|
|
int
|
|
ahd_dspreqctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DSPREQCTL_parse_table, 2, "DSPREQCTL",
|
|
0xc2, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfraddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFRADDR",
|
|
0xc2, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DSPACKCTL_parse_table[] = {
|
|
{ "MANACKDLY", 0x3f, 0x3f },
|
|
{ "MANACKCTL", 0xc0, 0xc0 }
|
|
};
|
|
|
|
int
|
|
ahd_dspackctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DSPACKCTL_parse_table, 2, "DSPACKCTL",
|
|
0xc3, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfdat_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFDAT",
|
|
0xc4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DSPSELECT_parse_table[] = {
|
|
{ "DSPSEL", 0x1f, 0x1f },
|
|
{ "AUTOINCEN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_dspselect_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DSPSELECT_parse_table, 2, "DSPSELECT",
|
|
0xc4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t WRTBIASCTL_parse_table[] = {
|
|
{ "XMITMANVAL", 0x3f, 0x3f },
|
|
{ "AUTOXBCDIS", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_wrtbiasctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(WRTBIASCTL_parse_table, 2, "WRTBIASCTL",
|
|
0xc5, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t RCVRBIOSCTL_parse_table[] = {
|
|
{ "RCVRMANVAL", 0x3f, 0x3f },
|
|
{ "AUTORBCDIS", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_rcvrbiosctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(RCVRBIOSCTL_parse_table, 2, "RCVRBIOSCTL",
|
|
0xc6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_wrtbiascalc_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "WRTBIASCALC",
|
|
0xc7, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfptrs_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFPTRS",
|
|
0xc8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_rcvrbiascalc_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "RCVRBIASCALC",
|
|
0xc8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfbkptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFBKPTR",
|
|
0xc9, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_skewcalc_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SKEWCALC",
|
|
0xc9, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DFDBCTL_parse_table[] = {
|
|
{ "DFF_RAMBIST_EN", 0x01, 0x01 },
|
|
{ "DFF_RAMBIST_DONE", 0x02, 0x02 },
|
|
{ "DFF_RAMBIST_FAIL", 0x04, 0x04 },
|
|
{ "DFF_DIR_ERR", 0x08, 0x08 },
|
|
{ "DFF_CIO_RD_RDY", 0x10, 0x10 },
|
|
{ "DFF_CIO_WR_RDY", 0x20, 0x20 }
|
|
};
|
|
|
|
int
|
|
ahd_dfdbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DFDBCTL_parse_table, 6, "DFDBCTL",
|
|
0xcb, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfscnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFSCNT",
|
|
0xcc, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dfbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DFBCNT",
|
|
0xce, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ovlyaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "OVLYADDR",
|
|
0xd4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQCTL0_parse_table[] = {
|
|
{ "LOADRAM", 0x01, 0x01 },
|
|
{ "SEQRESET", 0x02, 0x02 },
|
|
{ "STEP", 0x04, 0x04 },
|
|
{ "BRKADRINTEN", 0x08, 0x08 },
|
|
{ "FASTMODE", 0x10, 0x10 },
|
|
{ "FAILDIS", 0x20, 0x20 },
|
|
{ "PAUSEDIS", 0x40, 0x40 },
|
|
{ "PERRORDIS", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_seqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQCTL0_parse_table, 8, "SEQCTL0",
|
|
0xd6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQCTL1_parse_table[] = {
|
|
{ "RAMBIST_EN", 0x01, 0x01 },
|
|
{ "RAMBIST_FAIL", 0x02, 0x02 },
|
|
{ "RAMBIST_DONE", 0x04, 0x04 },
|
|
{ "OVRLAY_DATA_CHK", 0x08, 0x08 }
|
|
};
|
|
|
|
int
|
|
ahd_seqctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQCTL1_parse_table, 4, "SEQCTL1",
|
|
0xd7, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t FLAGS_parse_table[] = {
|
|
{ "CARRY", 0x01, 0x01 },
|
|
{ "ZERO", 0x02, 0x02 }
|
|
};
|
|
|
|
int
|
|
ahd_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(FLAGS_parse_table, 2, "FLAGS",
|
|
0xd8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQINTCTL_parse_table[] = {
|
|
{ "IRET", 0x01, 0x01 },
|
|
{ "INTMASK1", 0x02, 0x02 },
|
|
{ "INTMASK2", 0x04, 0x04 },
|
|
{ "SCS_SEQ_INT1M0", 0x08, 0x08 },
|
|
{ "SCS_SEQ_INT1M1", 0x10, 0x10 },
|
|
{ "INT1_CONTEXT", 0x20, 0x20 },
|
|
{ "INTVEC1DSL", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_seqintctl_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQINTCTL_parse_table, 7, "SEQINTCTL",
|
|
0xd9, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_seqram_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SEQRAM",
|
|
0xda, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_prgmcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "PRGMCNT",
|
|
0xde, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_accum_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ACCUM",
|
|
0xe0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sindex_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SINDEX",
|
|
0xe2, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dindex_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DINDEX",
|
|
0xe4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t BRKADDR1_parse_table[] = {
|
|
{ "BRKDIS", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_brkaddr1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(BRKADDR1_parse_table, 1, "BRKADDR1",
|
|
0xe6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_brkaddr0_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "BRKADDR0",
|
|
0xe6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_allones_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ALLONES",
|
|
0xe8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_none_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "NONE",
|
|
0xea, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_allzeros_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ALLZEROS",
|
|
0xea, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sindir_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SINDIR",
|
|
0xec, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_dindir_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "DINDIR",
|
|
0xed, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_function1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "FUNCTION1",
|
|
0xf0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_stack_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "STACK",
|
|
0xf2, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_intvec1_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "INTVEC1_ADDR",
|
|
0xf4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_curaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CURADDR",
|
|
0xf4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_intvec2_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "INTVEC2_ADDR",
|
|
0xf6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_lastaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LASTADDR",
|
|
0xf6, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_longjmp_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LONGJMP_ADDR",
|
|
0xf8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_accum_save_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ACCUM_SAVE",
|
|
0xfa, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_sram_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SRAM_BASE",
|
|
0x100, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_waiting_scb_tails_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "WAITING_SCB_TAILS",
|
|
0x100, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_ahd_pci_config_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "AHD_PCI_CONFIG_BASE",
|
|
0x100, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_waiting_tid_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "WAITING_TID_HEAD",
|
|
0x120, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_waiting_tid_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "WAITING_TID_TAIL",
|
|
0x122, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_next_queued_scb_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "NEXT_QUEUED_SCB_ADDR",
|
|
0x124, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_complete_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "COMPLETE_SCB_HEAD",
|
|
0x128, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_complete_scb_dmainprog_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "COMPLETE_SCB_DMAINPROG_HEAD",
|
|
0x12a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_complete_dma_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_HEAD",
|
|
0x12c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_complete_dma_scb_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_TAIL",
|
|
0x12e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_complete_on_qfreeze_head_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "COMPLETE_ON_QFREEZE_HEAD",
|
|
0x130, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "QFREEZE_COUNT",
|
|
0x132, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_kernel_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "KERNEL_QFREEZE_COUNT",
|
|
0x134, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_saved_mode_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SAVED_MODE",
|
|
0x136, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_msg_out_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MSG_OUT",
|
|
0x137, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t DMAPARAMS_parse_table[] = {
|
|
{ "FIFORESET", 0x01, 0x01 },
|
|
{ "FIFOFLUSH", 0x02, 0x02 },
|
|
{ "DIRECTION", 0x04, 0x04 },
|
|
{ "HDMAEN", 0x08, 0x08 },
|
|
{ "HDMAENACK", 0x08, 0x08 },
|
|
{ "SDMAEN", 0x10, 0x10 },
|
|
{ "SDMAENACK", 0x10, 0x10 },
|
|
{ "SCSIEN", 0x20, 0x20 },
|
|
{ "WIDEODD", 0x40, 0x40 },
|
|
{ "PRELOADEN", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_dmaparams_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(DMAPARAMS_parse_table, 10, "DMAPARAMS",
|
|
0x138, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQ_FLAGS_parse_table[] = {
|
|
{ "NO_DISCONNECT", 0x01, 0x01 },
|
|
{ "SPHASE_PENDING", 0x02, 0x02 },
|
|
{ "DPHASE_PENDING", 0x04, 0x04 },
|
|
{ "CMDPHASE_PENDING", 0x08, 0x08 },
|
|
{ "TARG_CMD_PENDING", 0x10, 0x10 },
|
|
{ "DPHASE", 0x20, 0x20 },
|
|
{ "NO_CDB_SENT", 0x40, 0x40 },
|
|
{ "TARGET_CMD_IS_TAGGED",0x40, 0x40 },
|
|
{ "NOT_IDENTIFIED", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_seq_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQ_FLAGS_parse_table, 9, "SEQ_FLAGS",
|
|
0x139, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_saved_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SAVED_SCSIID",
|
|
0x13a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_saved_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SAVED_LUN",
|
|
0x13b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t LASTPHASE_parse_table[] = {
|
|
{ "P_DATAOUT", 0x00, 0xe0 },
|
|
{ "P_DATAOUT_DT", 0x20, 0xe0 },
|
|
{ "P_DATAIN", 0x40, 0xe0 },
|
|
{ "P_DATAIN_DT", 0x60, 0xe0 },
|
|
{ "P_COMMAND", 0x80, 0xe0 },
|
|
{ "P_MESGOUT", 0xa0, 0xe0 },
|
|
{ "P_STATUS", 0xc0, 0xe0 },
|
|
{ "P_MESGIN", 0xe0, 0xe0 },
|
|
{ "P_BUSFREE", 0x01, 0x01 },
|
|
{ "MSGI", 0x20, 0x20 },
|
|
{ "IOI", 0x40, 0x40 },
|
|
{ "CDI", 0x80, 0x80 },
|
|
{ "PHASE_MASK", 0xe0, 0xe0 }
|
|
};
|
|
|
|
int
|
|
ahd_lastphase_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(LASTPHASE_parse_table, 13, "LASTPHASE",
|
|
0x13c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_qoutfifo_entry_valid_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "QOUTFIFO_ENTRY_VALID_TAG",
|
|
0x13d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_kernel_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "KERNEL_TQINPOS",
|
|
0x13e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "TQINPOS",
|
|
0x13f, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_shared_data_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SHARED_DATA_ADDR",
|
|
0x140, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_qoutfifo_next_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "QOUTFIFO_NEXT_ADDR",
|
|
0x144, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t ARG_1_parse_table[] = {
|
|
{ "CONT_MSG_LOOP_TARG", 0x02, 0x02 },
|
|
{ "CONT_MSG_LOOP_READ", 0x03, 0x03 },
|
|
{ "CONT_MSG_LOOP_WRITE",0x04, 0x04 },
|
|
{ "EXIT_MSG_LOOP", 0x08, 0x08 },
|
|
{ "MSGOUT_PHASEMIS", 0x10, 0x10 },
|
|
{ "SEND_REJ", 0x20, 0x20 },
|
|
{ "SEND_SENSE", 0x40, 0x40 },
|
|
{ "SEND_MSG", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_arg_1_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(ARG_1_parse_table, 8, "ARG_1",
|
|
0x148, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_arg_2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ARG_2",
|
|
0x149, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_last_msg_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LAST_MSG",
|
|
0x14a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCSISEQ_TEMPLATE_parse_table[] = {
|
|
{ "ALTSTIM", 0x01, 0x01 },
|
|
{ "ENAUTOATNP", 0x02, 0x02 },
|
|
{ "MANUALP", 0x0c, 0x0c },
|
|
{ "ENRSELI", 0x10, 0x10 },
|
|
{ "ENSELI", 0x20, 0x20 },
|
|
{ "MANUALCTL", 0x40, 0x40 }
|
|
};
|
|
|
|
int
|
|
ahd_scsiseq_template_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCSISEQ_TEMPLATE_parse_table, 6, "SCSISEQ_TEMPLATE",
|
|
0x14b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_initiator_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "INITIATOR_TAG",
|
|
0x14c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SEQ_FLAGS2_parse_table[] = {
|
|
{ "PENDING_MK_MESSAGE", 0x01, 0x01 },
|
|
{ "TARGET_MSG_PENDING", 0x02, 0x02 },
|
|
{ "SELECTOUT_QFROZEN", 0x04, 0x04 }
|
|
};
|
|
|
|
int
|
|
ahd_seq_flags2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SEQ_FLAGS2_parse_table, 3, "SEQ_FLAGS2",
|
|
0x14d, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_allocfifo_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "ALLOCFIFO_SCBPTR",
|
|
0x14e, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_int_coalescing_timer_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "INT_COALESCING_TIMER",
|
|
0x150, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_int_coalescing_maxcmds_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "INT_COALESCING_MAXCMDS",
|
|
0x152, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_int_coalescing_mincmds_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "INT_COALESCING_MINCMDS",
|
|
0x153, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_cmds_pending_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CMDS_PENDING",
|
|
0x154, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_int_coalescing_cmdcount_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "INT_COALESCING_CMDCOUNT",
|
|
0x156, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_local_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "LOCAL_HS_MAILBOX",
|
|
0x157, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_cmdsize_table_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "CMDSIZE_TABLE",
|
|
0x158, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_mk_message_scb_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCB",
|
|
0x160, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_mk_message_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCSIID",
|
|
0x162, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_base_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_BASE",
|
|
0x180, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_residual_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_RESIDUAL_DATACNT",
|
|
0x180, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_RESIDUAL_SGPTR_parse_table[] = {
|
|
{ "SG_LIST_NULL", 0x01, 0x01 },
|
|
{ "SG_OVERRUN_RESID", 0x02, 0x02 },
|
|
{ "SG_ADDR_BIT", 0x04, 0x04 },
|
|
{ "SG_ADDR_MASK", 0xf8, 0xf8 }
|
|
};
|
|
|
|
int
|
|
ahd_scb_residual_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_RESIDUAL_SGPTR_parse_table, 4, "SCB_RESIDUAL_SGPTR",
|
|
0x184, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_scsi_status_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_SCSI_STATUS",
|
|
0x188, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_target_phases_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_TARGET_PHASES",
|
|
0x189, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_target_data_dir_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_TARGET_DATA_DIR",
|
|
0x18a, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_target_itag_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_TARGET_ITAG",
|
|
0x18b, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_sense_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_SENSE_BUSADDR",
|
|
0x18c, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_TAG",
|
|
0x190, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_CONTROL_parse_table[] = {
|
|
{ "SCB_TAG_TYPE", 0x03, 0x03 },
|
|
{ "DISCONNECTED", 0x04, 0x04 },
|
|
{ "STATUS_RCVD", 0x08, 0x08 },
|
|
{ "MK_MESSAGE", 0x10, 0x10 },
|
|
{ "TAG_ENB", 0x20, 0x20 },
|
|
{ "DISCENB", 0x40, 0x40 },
|
|
{ "TARGET_SCB", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_scb_control_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_CONTROL_parse_table, 7, "SCB_CONTROL",
|
|
0x192, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_SCSIID_parse_table[] = {
|
|
{ "OID", 0x0f, 0x0f },
|
|
{ "TID", 0xf0, 0xf0 }
|
|
};
|
|
|
|
int
|
|
ahd_scb_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_SCSIID_parse_table, 2, "SCB_SCSIID",
|
|
0x193, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_LUN_parse_table[] = {
|
|
{ "LID", 0xff, 0xff }
|
|
};
|
|
|
|
int
|
|
ahd_scb_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_LUN_parse_table, 1, "SCB_LUN",
|
|
0x194, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_TASK_ATTRIBUTE_parse_table[] = {
|
|
{ "SCB_XFERLEN_ODD", 0x01, 0x01 }
|
|
};
|
|
|
|
int
|
|
ahd_scb_task_attribute_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_TASK_ATTRIBUTE_parse_table, 1, "SCB_TASK_ATTRIBUTE",
|
|
0x195, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_CDB_LEN_parse_table[] = {
|
|
{ "SCB_CDB_LEN_PTR", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_scb_cdb_len_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_CDB_LEN_parse_table, 1, "SCB_CDB_LEN",
|
|
0x196, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_task_management_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_TASK_MANAGEMENT",
|
|
0x197, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_dataptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_DATAPTR",
|
|
0x198, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_DATACNT_parse_table[] = {
|
|
{ "SG_HIGH_ADDR_BITS", 0x7f, 0x7f },
|
|
{ "SG_LAST_SEG", 0x80, 0x80 }
|
|
};
|
|
|
|
int
|
|
ahd_scb_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_DATACNT_parse_table, 2, "SCB_DATACNT",
|
|
0x1a0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
static ahd_reg_parse_entry_t SCB_SGPTR_parse_table[] = {
|
|
{ "SG_LIST_NULL", 0x01, 0x01 },
|
|
{ "SG_FULL_RESID", 0x02, 0x02 },
|
|
{ "SG_STATUS_VALID", 0x04, 0x04 }
|
|
};
|
|
|
|
int
|
|
ahd_scb_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(SCB_SGPTR_parse_table, 3, "SCB_SGPTR",
|
|
0x1a4, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_BUSADDR",
|
|
0x1a8, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_next_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_NEXT",
|
|
0x1ac, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_next2_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_NEXT2",
|
|
0x1ae, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_spare_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_SPARE",
|
|
0x1b0, regvalue, cur_col, wrap));
|
|
}
|
|
|
|
int
|
|
ahd_scb_disconnected_lists_print(u_int regvalue, u_int *cur_col, u_int wrap)
|
|
{
|
|
return (ahd_print_register(NULL, 0, "SCB_DISCONNECTED_LISTS",
|
|
0x1b8, regvalue, cur_col, wrap));
|
|
}
|
|
|