Path: blob/main/sys/dev/aic7xxx/aic79xx_reg_print.c
39536 views
/*1* DO NOT EDIT - This file is automatically generated2* from the following source files:3*4* $Id: //depot/aic7xxx/aic7xxx/aic79xx.seq#119 $5* $Id: //depot/aic7xxx/aic7xxx/aic79xx.reg#76 $6*/78#include <dev/aic7xxx/aic79xx_osm.h>910static ahd_reg_parse_entry_t MODE_PTR_parse_table[] = {11{ "SRC_MODE", 0x07, 0x07 },12{ "DST_MODE", 0x70, 0x70 }13};1415int16ahd_mode_ptr_print(u_int regvalue, u_int *cur_col, u_int wrap)17{18return (ahd_print_register(MODE_PTR_parse_table, 2, "MODE_PTR",190x00, regvalue, cur_col, wrap));20}2122static ahd_reg_parse_entry_t INTSTAT_parse_table[] = {23{ "SPLTINT", 0x01, 0x01 },24{ "CMDCMPLT", 0x02, 0x02 },25{ "SEQINT", 0x04, 0x04 },26{ "SCSIINT", 0x08, 0x08 },27{ "PCIINT", 0x10, 0x10 },28{ "SWTMINT", 0x20, 0x20 },29{ "BRKADRINT", 0x40, 0x40 },30{ "HWERRINT", 0x80, 0x80 },31{ "INT_PEND", 0xff, 0xff }32};3334int35ahd_intstat_print(u_int regvalue, u_int *cur_col, u_int wrap)36{37return (ahd_print_register(INTSTAT_parse_table, 9, "INTSTAT",380x01, regvalue, cur_col, wrap));39}4041static ahd_reg_parse_entry_t SEQINTCODE_parse_table[] = {42{ "NO_SEQINT", 0x00, 0xff },43{ "BAD_PHASE", 0x01, 0xff },44{ "SEND_REJECT", 0x02, 0xff },45{ "PROTO_VIOLATION", 0x03, 0xff },46{ "NO_MATCH", 0x04, 0xff },47{ "IGN_WIDE_RES", 0x05, 0xff },48{ "PDATA_REINIT", 0x06, 0xff },49{ "HOST_MSG_LOOP", 0x07, 0xff },50{ "BAD_STATUS", 0x08, 0xff },51{ "DATA_OVERRUN", 0x09, 0xff },52{ "MKMSG_FAILED", 0x0a, 0xff },53{ "MISSED_BUSFREE", 0x0b, 0xff },54{ "DUMP_CARD_STATE", 0x0c, 0xff },55{ "ILLEGAL_PHASE", 0x0d, 0xff },56{ "INVALID_SEQINT", 0x0e, 0xff },57{ "CFG4ISTAT_INTR", 0x0f, 0xff },58{ "STATUS_OVERRUN", 0x10, 0xff },59{ "CFG4OVERRUN", 0x11, 0xff },60{ "ENTERING_NONPACK", 0x12, 0xff },61{ "TASKMGMT_FUNC_COMPLETE",0x13, 0xff },62{ "TASKMGMT_CMD_CMPLT_OKAY",0x14, 0xff },63{ "TRACEPOINT0", 0x15, 0xff },64{ "TRACEPOINT1", 0x16, 0xff },65{ "TRACEPOINT2", 0x17, 0xff },66{ "TRACEPOINT3", 0x18, 0xff },67{ "SAW_HWERR", 0x19, 0xff },68{ "BAD_SCB_STATUS", 0x1a, 0xff }69};7071int72ahd_seqintcode_print(u_int regvalue, u_int *cur_col, u_int wrap)73{74return (ahd_print_register(SEQINTCODE_parse_table, 27, "SEQINTCODE",750x02, regvalue, cur_col, wrap));76}7778static ahd_reg_parse_entry_t CLRINT_parse_table[] = {79{ "CLRSPLTINT", 0x01, 0x01 },80{ "CLRCMDINT", 0x02, 0x02 },81{ "CLRSEQINT", 0x04, 0x04 },82{ "CLRSCSIINT", 0x08, 0x08 },83{ "CLRPCIINT", 0x10, 0x10 },84{ "CLRSWTMINT", 0x20, 0x20 },85{ "CLRBRKADRINT", 0x40, 0x40 },86{ "CLRHWERRINT", 0x80, 0x80 }87};8889int90ahd_clrint_print(u_int regvalue, u_int *cur_col, u_int wrap)91{92return (ahd_print_register(CLRINT_parse_table, 8, "CLRINT",930x03, regvalue, cur_col, wrap));94}9596static ahd_reg_parse_entry_t ERROR_parse_table[] = {97{ "DSCTMOUT", 0x02, 0x02 },98{ "ILLOPCODE", 0x04, 0x04 },99{ "SQPARERR", 0x08, 0x08 },100{ "DPARERR", 0x10, 0x10 },101{ "MPARERR", 0x20, 0x20 },102{ "CIOACCESFAIL", 0x40, 0x40 },103{ "CIOPARERR", 0x80, 0x80 }104};105106int107ahd_error_print(u_int regvalue, u_int *cur_col, u_int wrap)108{109return (ahd_print_register(ERROR_parse_table, 7, "ERROR",1100x04, regvalue, cur_col, wrap));111}112113static ahd_reg_parse_entry_t CLRERR_parse_table[] = {114{ "CLRDSCTMOUT", 0x02, 0x02 },115{ "CLRILLOPCODE", 0x04, 0x04 },116{ "CLRSQPARERR", 0x08, 0x08 },117{ "CLRDPARERR", 0x10, 0x10 },118{ "CLRMPARERR", 0x20, 0x20 },119{ "CLRCIOACCESFAIL", 0x40, 0x40 },120{ "CLRCIOPARERR", 0x80, 0x80 }121};122123int124ahd_clrerr_print(u_int regvalue, u_int *cur_col, u_int wrap)125{126return (ahd_print_register(CLRERR_parse_table, 7, "CLRERR",1270x04, regvalue, cur_col, wrap));128}129130static ahd_reg_parse_entry_t HCNTRL_parse_table[] = {131{ "CHIPRST", 0x01, 0x01 },132{ "CHIPRSTACK", 0x01, 0x01 },133{ "INTEN", 0x02, 0x02 },134{ "PAUSE", 0x04, 0x04 },135{ "SWTIMER_START_B", 0x08, 0x08 },136{ "SWINT", 0x10, 0x10 },137{ "POWRDN", 0x40, 0x40 },138{ "SEQ_RESET", 0x80, 0x80 }139};140141int142ahd_hcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)143{144return (ahd_print_register(HCNTRL_parse_table, 8, "HCNTRL",1450x05, regvalue, cur_col, wrap));146}147148int149ahd_hnscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)150{151return (ahd_print_register(NULL, 0, "HNSCB_QOFF",1520x06, regvalue, cur_col, wrap));153}154155int156ahd_hescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)157{158return (ahd_print_register(NULL, 0, "HESCB_QOFF",1590x08, regvalue, cur_col, wrap));160}161162static ahd_reg_parse_entry_t HS_MAILBOX_parse_table[] = {163{ "ENINT_COALESCE", 0x40, 0x40 },164{ "HOST_TQINPOS", 0x80, 0x80 }165};166167int168ahd_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)169{170return (ahd_print_register(HS_MAILBOX_parse_table, 2, "HS_MAILBOX",1710x0b, regvalue, cur_col, wrap));172}173174static ahd_reg_parse_entry_t SEQINTSTAT_parse_table[] = {175{ "SEQ_SPLTINT", 0x01, 0x01 },176{ "SEQ_PCIINT", 0x02, 0x02 },177{ "SEQ_SCSIINT", 0x04, 0x04 },178{ "SEQ_SEQINT", 0x08, 0x08 },179{ "SEQ_SWTMRTO", 0x10, 0x10 }180};181182int183ahd_seqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)184{185return (ahd_print_register(SEQINTSTAT_parse_table, 5, "SEQINTSTAT",1860x0c, regvalue, cur_col, wrap));187}188189static ahd_reg_parse_entry_t CLRSEQINTSTAT_parse_table[] = {190{ "CLRSEQ_SPLTINT", 0x01, 0x01 },191{ "CLRSEQ_PCIINT", 0x02, 0x02 },192{ "CLRSEQ_SCSIINT", 0x04, 0x04 },193{ "CLRSEQ_SEQINT", 0x08, 0x08 },194{ "CLRSEQ_SWTMRTO", 0x10, 0x10 }195};196197int198ahd_clrseqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap)199{200return (ahd_print_register(CLRSEQINTSTAT_parse_table, 5, "CLRSEQINTSTAT",2010x0c, regvalue, cur_col, wrap));202}203204int205ahd_swtimer_print(u_int regvalue, u_int *cur_col, u_int wrap)206{207return (ahd_print_register(NULL, 0, "SWTIMER",2080x0e, regvalue, cur_col, wrap));209}210211int212ahd_snscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)213{214return (ahd_print_register(NULL, 0, "SNSCB_QOFF",2150x10, regvalue, cur_col, wrap));216}217218int219ahd_sescb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)220{221return (ahd_print_register(NULL, 0, "SESCB_QOFF",2220x12, regvalue, cur_col, wrap));223}224225int226ahd_sdscb_qoff_print(u_int regvalue, u_int *cur_col, u_int wrap)227{228return (ahd_print_register(NULL, 0, "SDSCB_QOFF",2290x14, regvalue, cur_col, wrap));230}231232static ahd_reg_parse_entry_t QOFF_CTLSTA_parse_table[] = {233{ "SCB_QSIZE_4", 0x00, 0x0f },234{ "SCB_QSIZE_8", 0x01, 0x0f },235{ "SCB_QSIZE_16", 0x02, 0x0f },236{ "SCB_QSIZE_32", 0x03, 0x0f },237{ "SCB_QSIZE_64", 0x04, 0x0f },238{ "SCB_QSIZE_128", 0x05, 0x0f },239{ "SCB_QSIZE_256", 0x06, 0x0f },240{ "SCB_QSIZE_512", 0x07, 0x0f },241{ "SCB_QSIZE_1024", 0x08, 0x0f },242{ "SCB_QSIZE_2048", 0x09, 0x0f },243{ "SCB_QSIZE_4096", 0x0a, 0x0f },244{ "SCB_QSIZE_8192", 0x0b, 0x0f },245{ "SCB_QSIZE_16384", 0x0c, 0x0f },246{ "SCB_QSIZE", 0x0f, 0x0f },247{ "HS_MAILBOX_ACT", 0x10, 0x10 },248{ "SDSCB_ROLLOVR", 0x20, 0x20 },249{ "NEW_SCB_AVAIL", 0x40, 0x40 },250{ "EMPTY_SCB_AVAIL", 0x80, 0x80 }251};252253int254ahd_qoff_ctlsta_print(u_int regvalue, u_int *cur_col, u_int wrap)255{256return (ahd_print_register(QOFF_CTLSTA_parse_table, 18, "QOFF_CTLSTA",2570x16, regvalue, cur_col, wrap));258}259260static ahd_reg_parse_entry_t INTCTL_parse_table[] = {261{ "SPLTINTEN", 0x01, 0x01 },262{ "SEQINTEN", 0x02, 0x02 },263{ "SCSIINTEN", 0x04, 0x04 },264{ "PCIINTEN", 0x08, 0x08 },265{ "AUTOCLRCMDINT", 0x10, 0x10 },266{ "SWTIMER_START", 0x20, 0x20 },267{ "SWTMINTEN", 0x40, 0x40 },268{ "SWTMINTMASK", 0x80, 0x80 }269};270271int272ahd_intctl_print(u_int regvalue, u_int *cur_col, u_int wrap)273{274return (ahd_print_register(INTCTL_parse_table, 8, "INTCTL",2750x18, regvalue, cur_col, wrap));276}277278static ahd_reg_parse_entry_t DFCNTRL_parse_table[] = {279{ "DIRECTIONEN", 0x01, 0x01 },280{ "FIFOFLUSH", 0x02, 0x02 },281{ "FIFOFLUSHACK", 0x02, 0x02 },282{ "DIRECTION", 0x04, 0x04 },283{ "DIRECTIONACK", 0x04, 0x04 },284{ "HDMAEN", 0x08, 0x08 },285{ "HDMAENACK", 0x08, 0x08 },286{ "SCSIEN", 0x20, 0x20 },287{ "SCSIENACK", 0x20, 0x20 },288{ "SCSIENWRDIS", 0x40, 0x40 },289{ "PRELOADEN", 0x80, 0x80 }290};291292int293ahd_dfcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)294{295return (ahd_print_register(DFCNTRL_parse_table, 11, "DFCNTRL",2960x19, regvalue, cur_col, wrap));297}298299static ahd_reg_parse_entry_t DSCOMMAND0_parse_table[] = {300{ "CIOPARCKEN", 0x01, 0x01 },301{ "DISABLE_TWATE", 0x02, 0x02 },302{ "EXTREQLCK", 0x10, 0x10 },303{ "MPARCKEN", 0x20, 0x20 },304{ "DPARCKEN", 0x40, 0x40 },305{ "CACHETHEN", 0x80, 0x80 }306};307308int309ahd_dscommand0_print(u_int regvalue, u_int *cur_col, u_int wrap)310{311return (ahd_print_register(DSCOMMAND0_parse_table, 6, "DSCOMMAND0",3120x19, regvalue, cur_col, wrap));313}314315static ahd_reg_parse_entry_t DFSTATUS_parse_table[] = {316{ "FIFOEMP", 0x01, 0x01 },317{ "FIFOFULL", 0x02, 0x02 },318{ "DFTHRESH", 0x04, 0x04 },319{ "HDONE", 0x08, 0x08 },320{ "MREQPEND", 0x10, 0x10 },321{ "PKT_PRELOAD_AVAIL", 0x40, 0x40 },322{ "PRELOAD_AVAIL", 0x80, 0x80 }323};324325int326ahd_dfstatus_print(u_int regvalue, u_int *cur_col, u_int wrap)327{328return (ahd_print_register(DFSTATUS_parse_table, 7, "DFSTATUS",3290x1a, regvalue, cur_col, wrap));330}331332static ahd_reg_parse_entry_t SG_CACHE_SHADOW_parse_table[] = {333{ "LAST_SEG_DONE", 0x01, 0x01 },334{ "LAST_SEG", 0x02, 0x02 },335{ "ODD_SEG", 0x04, 0x04 },336{ "SG_ADDR_MASK", 0xf8, 0xf8 }337};338339int340ahd_sg_cache_shadow_print(u_int regvalue, u_int *cur_col, u_int wrap)341{342return (ahd_print_register(SG_CACHE_SHADOW_parse_table, 4, "SG_CACHE_SHADOW",3430x1b, regvalue, cur_col, wrap));344}345346static ahd_reg_parse_entry_t SG_CACHE_PRE_parse_table[] = {347{ "LAST_SEG", 0x02, 0x02 },348{ "ODD_SEG", 0x04, 0x04 },349{ "SG_ADDR_MASK", 0xf8, 0xf8 }350};351352int353ahd_sg_cache_pre_print(u_int regvalue, u_int *cur_col, u_int wrap)354{355return (ahd_print_register(SG_CACHE_PRE_parse_table, 3, "SG_CACHE_PRE",3560x1b, regvalue, cur_col, wrap));357}358359static ahd_reg_parse_entry_t ARBCTL_parse_table[] = {360{ "USE_TIME", 0x07, 0x07 },361{ "RETRY_SWEN", 0x08, 0x08 },362{ "RESET_HARB", 0x80, 0x80 }363};364365int366ahd_arbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)367{368return (ahd_print_register(ARBCTL_parse_table, 3, "ARBCTL",3690x1b, regvalue, cur_col, wrap));370}371372int373ahd_lqin_print(u_int regvalue, u_int *cur_col, u_int wrap)374{375return (ahd_print_register(NULL, 0, "LQIN",3760x20, regvalue, cur_col, wrap));377}378379int380ahd_typeptr_print(u_int regvalue, u_int *cur_col, u_int wrap)381{382return (ahd_print_register(NULL, 0, "TYPEPTR",3830x20, regvalue, cur_col, wrap));384}385386int387ahd_tagptr_print(u_int regvalue, u_int *cur_col, u_int wrap)388{389return (ahd_print_register(NULL, 0, "TAGPTR",3900x21, regvalue, cur_col, wrap));391}392393int394ahd_lunptr_print(u_int regvalue, u_int *cur_col, u_int wrap)395{396return (ahd_print_register(NULL, 0, "LUNPTR",3970x22, regvalue, cur_col, wrap));398}399400int401ahd_datalenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)402{403return (ahd_print_register(NULL, 0, "DATALENPTR",4040x23, regvalue, cur_col, wrap));405}406407int408ahd_statlenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)409{410return (ahd_print_register(NULL, 0, "STATLENPTR",4110x24, regvalue, cur_col, wrap));412}413414int415ahd_cmdlenptr_print(u_int regvalue, u_int *cur_col, u_int wrap)416{417return (ahd_print_register(NULL, 0, "CMDLENPTR",4180x25, regvalue, cur_col, wrap));419}420421int422ahd_attrptr_print(u_int regvalue, u_int *cur_col, u_int wrap)423{424return (ahd_print_register(NULL, 0, "ATTRPTR",4250x26, regvalue, cur_col, wrap));426}427428int429ahd_flagptr_print(u_int regvalue, u_int *cur_col, u_int wrap)430{431return (ahd_print_register(NULL, 0, "FLAGPTR",4320x27, regvalue, cur_col, wrap));433}434435int436ahd_cmdptr_print(u_int regvalue, u_int *cur_col, u_int wrap)437{438return (ahd_print_register(NULL, 0, "CMDPTR",4390x28, regvalue, cur_col, wrap));440}441442int443ahd_qnextptr_print(u_int regvalue, u_int *cur_col, u_int wrap)444{445return (ahd_print_register(NULL, 0, "QNEXTPTR",4460x29, regvalue, cur_col, wrap));447}448449int450ahd_idptr_print(u_int regvalue, u_int *cur_col, u_int wrap)451{452return (ahd_print_register(NULL, 0, "IDPTR",4530x2a, regvalue, cur_col, wrap));454}455456int457ahd_abrtbyteptr_print(u_int regvalue, u_int *cur_col, u_int wrap)458{459return (ahd_print_register(NULL, 0, "ABRTBYTEPTR",4600x2b, regvalue, cur_col, wrap));461}462463int464ahd_abrtbitptr_print(u_int regvalue, u_int *cur_col, u_int wrap)465{466return (ahd_print_register(NULL, 0, "ABRTBITPTR",4670x2c, regvalue, cur_col, wrap));468}469470int471ahd_maxcmdbytes_print(u_int regvalue, u_int *cur_col, u_int wrap)472{473return (ahd_print_register(NULL, 0, "MAXCMDBYTES",4740x2d, regvalue, cur_col, wrap));475}476477int478ahd_maxcmd2rcv_print(u_int regvalue, u_int *cur_col, u_int wrap)479{480return (ahd_print_register(NULL, 0, "MAXCMD2RCV",4810x2e, regvalue, cur_col, wrap));482}483484int485ahd_shortthresh_print(u_int regvalue, u_int *cur_col, u_int wrap)486{487return (ahd_print_register(NULL, 0, "SHORTTHRESH",4880x2f, regvalue, cur_col, wrap));489}490491static ahd_reg_parse_entry_t LUNLEN_parse_table[] = {492{ "ILUNLEN", 0x0f, 0x0f },493{ "TLUNLEN", 0xf0, 0xf0 }494};495496int497ahd_lunlen_print(u_int regvalue, u_int *cur_col, u_int wrap)498{499return (ahd_print_register(LUNLEN_parse_table, 2, "LUNLEN",5000x30, regvalue, cur_col, wrap));501}502503int504ahd_cdblimit_print(u_int regvalue, u_int *cur_col, u_int wrap)505{506return (ahd_print_register(NULL, 0, "CDBLIMIT",5070x31, regvalue, cur_col, wrap));508}509510int511ahd_maxcmd_print(u_int regvalue, u_int *cur_col, u_int wrap)512{513return (ahd_print_register(NULL, 0, "MAXCMD",5140x32, regvalue, cur_col, wrap));515}516517int518ahd_maxcmdcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)519{520return (ahd_print_register(NULL, 0, "MAXCMDCNT",5210x33, regvalue, cur_col, wrap));522}523524int525ahd_lqrsvd01_print(u_int regvalue, u_int *cur_col, u_int wrap)526{527return (ahd_print_register(NULL, 0, "LQRSVD01",5280x34, regvalue, cur_col, wrap));529}530531int532ahd_lqrsvd16_print(u_int regvalue, u_int *cur_col, u_int wrap)533{534return (ahd_print_register(NULL, 0, "LQRSVD16",5350x35, regvalue, cur_col, wrap));536}537538int539ahd_lqrsvd17_print(u_int regvalue, u_int *cur_col, u_int wrap)540{541return (ahd_print_register(NULL, 0, "LQRSVD17",5420x36, regvalue, cur_col, wrap));543}544545int546ahd_cmdrsvd0_print(u_int regvalue, u_int *cur_col, u_int wrap)547{548return (ahd_print_register(NULL, 0, "CMDRSVD0",5490x37, regvalue, cur_col, wrap));550}551552static ahd_reg_parse_entry_t LQCTL0_parse_table[] = {553{ "LQ0INITGCLT", 0x03, 0x03 },554{ "LQ0TARGCLT", 0x0c, 0x0c },555{ "LQIINITGCLT", 0x30, 0x30 },556{ "LQITARGCLT", 0xc0, 0xc0 }557};558559int560ahd_lqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)561{562return (ahd_print_register(LQCTL0_parse_table, 4, "LQCTL0",5630x38, regvalue, cur_col, wrap));564}565566static ahd_reg_parse_entry_t LQCTL1_parse_table[] = {567{ "ABORTPENDING", 0x01, 0x01 },568{ "SINGLECMD", 0x02, 0x02 },569{ "PCI2PCI", 0x04, 0x04 }570};571572int573ahd_lqctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)574{575return (ahd_print_register(LQCTL1_parse_table, 3, "LQCTL1",5760x38, regvalue, cur_col, wrap));577}578579static ahd_reg_parse_entry_t LQCTL2_parse_table[] = {580{ "LQOPAUSE", 0x01, 0x01 },581{ "LQOTOIDLE", 0x02, 0x02 },582{ "LQOCONTINUE", 0x04, 0x04 },583{ "LQORETRY", 0x08, 0x08 },584{ "LQIPAUSE", 0x10, 0x10 },585{ "LQITOIDLE", 0x20, 0x20 },586{ "LQICONTINUE", 0x40, 0x40 },587{ "LQIRETRY", 0x80, 0x80 }588};589590int591ahd_lqctl2_print(u_int regvalue, u_int *cur_col, u_int wrap)592{593return (ahd_print_register(LQCTL2_parse_table, 8, "LQCTL2",5940x39, regvalue, cur_col, wrap));595}596597static ahd_reg_parse_entry_t SCSBIST0_parse_table[] = {598{ "OSBISTRUN", 0x01, 0x01 },599{ "OSBISTDONE", 0x02, 0x02 },600{ "OSBISTERR", 0x04, 0x04 },601{ "GSBISTRUN", 0x10, 0x10 },602{ "GSBISTDONE", 0x20, 0x20 },603{ "GSBISTERR", 0x40, 0x40 }604};605606int607ahd_scsbist0_print(u_int regvalue, u_int *cur_col, u_int wrap)608{609return (ahd_print_register(SCSBIST0_parse_table, 6, "SCSBIST0",6100x39, regvalue, cur_col, wrap));611}612613static ahd_reg_parse_entry_t SCSISEQ0_parse_table[] = {614{ "SCSIRSTO", 0x01, 0x01 },615{ "FORCEBUSFREE", 0x10, 0x10 },616{ "ENARBO", 0x20, 0x20 },617{ "ENSELO", 0x40, 0x40 },618{ "TEMODEO", 0x80, 0x80 }619};620621int622ahd_scsiseq0_print(u_int regvalue, u_int *cur_col, u_int wrap)623{624return (ahd_print_register(SCSISEQ0_parse_table, 5, "SCSISEQ0",6250x3a, regvalue, cur_col, wrap));626}627628static ahd_reg_parse_entry_t SCSBIST1_parse_table[] = {629{ "NTBISTRUN", 0x01, 0x01 },630{ "NTBISTDONE", 0x02, 0x02 },631{ "NTBISTERR", 0x04, 0x04 }632};633634int635ahd_scsbist1_print(u_int regvalue, u_int *cur_col, u_int wrap)636{637return (ahd_print_register(SCSBIST1_parse_table, 3, "SCSBIST1",6380x3a, regvalue, cur_col, wrap));639}640641static ahd_reg_parse_entry_t SCSISEQ1_parse_table[] = {642{ "ALTSTIM", 0x01, 0x01 },643{ "ENAUTOATNP", 0x02, 0x02 },644{ "MANUALP", 0x0c, 0x0c },645{ "ENRSELI", 0x10, 0x10 },646{ "ENSELI", 0x20, 0x20 },647{ "MANUALCTL", 0x40, 0x40 }648};649650int651ahd_scsiseq1_print(u_int regvalue, u_int *cur_col, u_int wrap)652{653return (ahd_print_register(SCSISEQ1_parse_table, 6, "SCSISEQ1",6540x3b, regvalue, cur_col, wrap));655}656657int658ahd_businitid_print(u_int regvalue, u_int *cur_col, u_int wrap)659{660return (ahd_print_register(NULL, 0, "BUSINITID",6610x3c, regvalue, cur_col, wrap));662}663664static ahd_reg_parse_entry_t SXFRCTL0_parse_table[] = {665{ "SPIOEN", 0x08, 0x08 },666{ "BIOSCANCELEN", 0x10, 0x10 },667{ "DFPEXP", 0x40, 0x40 },668{ "DFON", 0x80, 0x80 }669};670671int672ahd_sxfrctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)673{674return (ahd_print_register(SXFRCTL0_parse_table, 4, "SXFRCTL0",6750x3c, regvalue, cur_col, wrap));676}677678int679ahd_dlcount_print(u_int regvalue, u_int *cur_col, u_int wrap)680{681return (ahd_print_register(NULL, 0, "DLCOUNT",6820x3c, regvalue, cur_col, wrap));683}684685static ahd_reg_parse_entry_t SXFRCTL1_parse_table[] = {686{ "STPWEN", 0x01, 0x01 },687{ "ACTNEGEN", 0x02, 0x02 },688{ "ENSTIMER", 0x04, 0x04 },689{ "STIMESEL", 0x18, 0x18 },690{ "ENSPCHK", 0x20, 0x20 },691{ "ENSACHK", 0x40, 0x40 },692{ "BITBUCKET", 0x80, 0x80 }693};694695int696ahd_sxfrctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)697{698return (ahd_print_register(SXFRCTL1_parse_table, 7, "SXFRCTL1",6990x3d, regvalue, cur_col, wrap));700}701702int703ahd_bustargid_print(u_int regvalue, u_int *cur_col, u_int wrap)704{705return (ahd_print_register(NULL, 0, "BUSTARGID",7060x3e, regvalue, cur_col, wrap));707}708709static ahd_reg_parse_entry_t SXFRCTL2_parse_table[] = {710{ "ASU", 0x07, 0x07 },711{ "CMDDMAEN", 0x08, 0x08 },712{ "AUTORSTDIS", 0x10, 0x10 }713};714715int716ahd_sxfrctl2_print(u_int regvalue, u_int *cur_col, u_int wrap)717{718return (ahd_print_register(SXFRCTL2_parse_table, 3, "SXFRCTL2",7190x3e, regvalue, cur_col, wrap));720}721722static ahd_reg_parse_entry_t DFFSTAT_parse_table[] = {723{ "CURRFIFO_0", 0x00, 0x03 },724{ "CURRFIFO_1", 0x01, 0x03 },725{ "CURRFIFO_NONE", 0x03, 0x03 },726{ "FIFO0FREE", 0x10, 0x10 },727{ "FIFO1FREE", 0x20, 0x20 },728{ "CURRFIFO", 0x03, 0x03 }729};730731int732ahd_dffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)733{734return (ahd_print_register(DFFSTAT_parse_table, 6, "DFFSTAT",7350x3f, regvalue, cur_col, wrap));736}737738static ahd_reg_parse_entry_t SCSISIGO_parse_table[] = {739{ "P_DATAOUT", 0x00, 0xe0 },740{ "P_DATAOUT_DT", 0x20, 0xe0 },741{ "P_DATAIN", 0x40, 0xe0 },742{ "P_DATAIN_DT", 0x60, 0xe0 },743{ "P_COMMAND", 0x80, 0xe0 },744{ "P_MESGOUT", 0xa0, 0xe0 },745{ "P_STATUS", 0xc0, 0xe0 },746{ "P_MESGIN", 0xe0, 0xe0 },747{ "ACKO", 0x01, 0x01 },748{ "REQO", 0x02, 0x02 },749{ "BSYO", 0x04, 0x04 },750{ "SELO", 0x08, 0x08 },751{ "ATNO", 0x10, 0x10 },752{ "MSGO", 0x20, 0x20 },753{ "IOO", 0x40, 0x40 },754{ "CDO", 0x80, 0x80 },755{ "PHASE_MASK", 0xe0, 0xe0 }756};757758int759ahd_scsisigo_print(u_int regvalue, u_int *cur_col, u_int wrap)760{761return (ahd_print_register(SCSISIGO_parse_table, 17, "SCSISIGO",7620x40, regvalue, cur_col, wrap));763}764765int766ahd_multargid_print(u_int regvalue, u_int *cur_col, u_int wrap)767{768return (ahd_print_register(NULL, 0, "MULTARGID",7690x40, regvalue, cur_col, wrap));770}771772static ahd_reg_parse_entry_t SCSISIGI_parse_table[] = {773{ "P_DATAOUT", 0x00, 0xe0 },774{ "P_DATAOUT_DT", 0x20, 0xe0 },775{ "P_DATAIN", 0x40, 0xe0 },776{ "P_DATAIN_DT", 0x60, 0xe0 },777{ "P_COMMAND", 0x80, 0xe0 },778{ "P_MESGOUT", 0xa0, 0xe0 },779{ "P_STATUS", 0xc0, 0xe0 },780{ "P_MESGIN", 0xe0, 0xe0 },781{ "ACKI", 0x01, 0x01 },782{ "REQI", 0x02, 0x02 },783{ "BSYI", 0x04, 0x04 },784{ "SELI", 0x08, 0x08 },785{ "ATNI", 0x10, 0x10 },786{ "MSGI", 0x20, 0x20 },787{ "IOI", 0x40, 0x40 },788{ "CDI", 0x80, 0x80 },789{ "PHASE_MASK", 0xe0, 0xe0 }790};791792int793ahd_scsisigi_print(u_int regvalue, u_int *cur_col, u_int wrap)794{795return (ahd_print_register(SCSISIGI_parse_table, 17, "SCSISIGI",7960x41, regvalue, cur_col, wrap));797}798799static ahd_reg_parse_entry_t SCSIPHASE_parse_table[] = {800{ "DATA_OUT_PHASE", 0x01, 0x03 },801{ "DATA_IN_PHASE", 0x02, 0x03 },802{ "DATA_PHASE_MASK", 0x03, 0x03 },803{ "MSG_OUT_PHASE", 0x04, 0x04 },804{ "MSG_IN_PHASE", 0x08, 0x08 },805{ "COMMAND_PHASE", 0x10, 0x10 },806{ "STATUS_PHASE", 0x20, 0x20 }807};808809int810ahd_scsiphase_print(u_int regvalue, u_int *cur_col, u_int wrap)811{812return (ahd_print_register(SCSIPHASE_parse_table, 7, "SCSIPHASE",8130x42, regvalue, cur_col, wrap));814}815816int817ahd_scsidat0_img_print(u_int regvalue, u_int *cur_col, u_int wrap)818{819return (ahd_print_register(NULL, 0, "SCSIDAT0_IMG",8200x43, regvalue, cur_col, wrap));821}822823int824ahd_scsidat_print(u_int regvalue, u_int *cur_col, u_int wrap)825{826return (ahd_print_register(NULL, 0, "SCSIDAT",8270x44, regvalue, cur_col, wrap));828}829830int831ahd_scsibus_print(u_int regvalue, u_int *cur_col, u_int wrap)832{833return (ahd_print_register(NULL, 0, "SCSIBUS",8340x46, regvalue, cur_col, wrap));835}836837static ahd_reg_parse_entry_t TARGIDIN_parse_table[] = {838{ "TARGID", 0x0f, 0x0f },839{ "CLKOUT", 0x80, 0x80 }840};841842int843ahd_targidin_print(u_int regvalue, u_int *cur_col, u_int wrap)844{845return (ahd_print_register(TARGIDIN_parse_table, 2, "TARGIDIN",8460x48, regvalue, cur_col, wrap));847}848849static ahd_reg_parse_entry_t SELID_parse_table[] = {850{ "ONEBIT", 0x08, 0x08 },851{ "SELID_MASK", 0xf0, 0xf0 }852};853854int855ahd_selid_print(u_int regvalue, u_int *cur_col, u_int wrap)856{857return (ahd_print_register(SELID_parse_table, 2, "SELID",8580x49, regvalue, cur_col, wrap));859}860861static ahd_reg_parse_entry_t OPTIONMODE_parse_table[] = {862{ "AUTO_MSGOUT_DE", 0x02, 0x02 },863{ "ENDGFORMCHK", 0x04, 0x04 },864{ "BUSFREEREV", 0x10, 0x10 },865{ "BIASCANCTL", 0x20, 0x20 },866{ "AUTOACKEN", 0x40, 0x40 },867{ "BIOSCANCTL", 0x80, 0x80 },868{ "OPTIONMODE_DEFAULTS",0x02, 0x02 }869};870871int872ahd_optionmode_print(u_int regvalue, u_int *cur_col, u_int wrap)873{874return (ahd_print_register(OPTIONMODE_parse_table, 7, "OPTIONMODE",8750x4a, regvalue, cur_col, wrap));876}877878static ahd_reg_parse_entry_t SBLKCTL_parse_table[] = {879{ "SELWIDE", 0x02, 0x02 },880{ "ENAB20", 0x04, 0x04 },881{ "ENAB40", 0x08, 0x08 },882{ "DIAGLEDON", 0x40, 0x40 },883{ "DIAGLEDEN", 0x80, 0x80 }884};885886int887ahd_sblkctl_print(u_int regvalue, u_int *cur_col, u_int wrap)888{889return (ahd_print_register(SBLKCTL_parse_table, 5, "SBLKCTL",8900x4a, regvalue, cur_col, wrap));891}892893static ahd_reg_parse_entry_t SIMODE0_parse_table[] = {894{ "ENARBDO", 0x01, 0x01 },895{ "ENSPIORDY", 0x02, 0x02 },896{ "ENOVERRUN", 0x04, 0x04 },897{ "ENIOERR", 0x08, 0x08 },898{ "ENSELINGO", 0x10, 0x10 },899{ "ENSELDI", 0x20, 0x20 },900{ "ENSELDO", 0x40, 0x40 }901};902903int904ahd_simode0_print(u_int regvalue, u_int *cur_col, u_int wrap)905{906return (ahd_print_register(SIMODE0_parse_table, 7, "SIMODE0",9070x4b, regvalue, cur_col, wrap));908}909910static ahd_reg_parse_entry_t SSTAT0_parse_table[] = {911{ "ARBDO", 0x01, 0x01 },912{ "SPIORDY", 0x02, 0x02 },913{ "OVERRUN", 0x04, 0x04 },914{ "IOERR", 0x08, 0x08 },915{ "SELINGO", 0x10, 0x10 },916{ "SELDI", 0x20, 0x20 },917{ "SELDO", 0x40, 0x40 },918{ "TARGET", 0x80, 0x80 }919};920921int922ahd_sstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)923{924return (ahd_print_register(SSTAT0_parse_table, 8, "SSTAT0",9250x4b, regvalue, cur_col, wrap));926}927928static ahd_reg_parse_entry_t CLRSINT0_parse_table[] = {929{ "CLRARBDO", 0x01, 0x01 },930{ "CLRSPIORDY", 0x02, 0x02 },931{ "CLROVERRUN", 0x04, 0x04 },932{ "CLRIOERR", 0x08, 0x08 },933{ "CLRSELINGO", 0x10, 0x10 },934{ "CLRSELDI", 0x20, 0x20 },935{ "CLRSELDO", 0x40, 0x40 }936};937938int939ahd_clrsint0_print(u_int regvalue, u_int *cur_col, u_int wrap)940{941return (ahd_print_register(CLRSINT0_parse_table, 7, "CLRSINT0",9420x4b, regvalue, cur_col, wrap));943}944945static ahd_reg_parse_entry_t SSTAT1_parse_table[] = {946{ "REQINIT", 0x01, 0x01 },947{ "STRB2FAST", 0x02, 0x02 },948{ "SCSIPERR", 0x04, 0x04 },949{ "BUSFREE", 0x08, 0x08 },950{ "PHASEMIS", 0x10, 0x10 },951{ "SCSIRSTI", 0x20, 0x20 },952{ "ATNTARG", 0x40, 0x40 },953{ "SELTO", 0x80, 0x80 }954};955956int957ahd_sstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)958{959return (ahd_print_register(SSTAT1_parse_table, 8, "SSTAT1",9600x4c, regvalue, cur_col, wrap));961}962963static ahd_reg_parse_entry_t CLRSINT1_parse_table[] = {964{ "CLRREQINIT", 0x01, 0x01 },965{ "CLRSTRB2FAST", 0x02, 0x02 },966{ "CLRSCSIPERR", 0x04, 0x04 },967{ "CLRBUSFREE", 0x08, 0x08 },968{ "CLRSCSIRSTI", 0x20, 0x20 },969{ "CLRATNO", 0x40, 0x40 },970{ "CLRSELTIMEO", 0x80, 0x80 }971};972973int974ahd_clrsint1_print(u_int regvalue, u_int *cur_col, u_int wrap)975{976return (ahd_print_register(CLRSINT1_parse_table, 7, "CLRSINT1",9770x4c, regvalue, cur_col, wrap));978}979980static ahd_reg_parse_entry_t SSTAT2_parse_table[] = {981{ "BUSFREE_LQO", 0x40, 0xc0 },982{ "BUSFREE_DFF0", 0x80, 0xc0 },983{ "BUSFREE_DFF1", 0xc0, 0xc0 },984{ "DMADONE", 0x01, 0x01 },985{ "SDONE", 0x02, 0x02 },986{ "WIDE_RES", 0x04, 0x04 },987{ "BSYX", 0x08, 0x08 },988{ "EXP_ACTIVE", 0x10, 0x10 },989{ "NONPACKREQ", 0x20, 0x20 },990{ "BUSFREETIME", 0xc0, 0xc0 }991};992993int994ahd_sstat2_print(u_int regvalue, u_int *cur_col, u_int wrap)995{996return (ahd_print_register(SSTAT2_parse_table, 10, "SSTAT2",9970x4d, regvalue, cur_col, wrap));998}9991000static ahd_reg_parse_entry_t CLRSINT2_parse_table[] = {1001{ "CLRDMADONE", 0x01, 0x01 },1002{ "CLRSDONE", 0x02, 0x02 },1003{ "CLRWIDE_RES", 0x04, 0x04 },1004{ "CLRNONPACKREQ", 0x20, 0x20 }1005};10061007int1008ahd_clrsint2_print(u_int regvalue, u_int *cur_col, u_int wrap)1009{1010return (ahd_print_register(CLRSINT2_parse_table, 4, "CLRSINT2",10110x4d, regvalue, cur_col, wrap));1012}10131014static ahd_reg_parse_entry_t SIMODE2_parse_table[] = {1015{ "ENDMADONE", 0x01, 0x01 },1016{ "ENSDONE", 0x02, 0x02 },1017{ "ENWIDE_RES", 0x04, 0x04 }1018};10191020int1021ahd_simode2_print(u_int regvalue, u_int *cur_col, u_int wrap)1022{1023return (ahd_print_register(SIMODE2_parse_table, 3, "SIMODE2",10240x4d, regvalue, cur_col, wrap));1025}10261027static ahd_reg_parse_entry_t PERRDIAG_parse_table[] = {1028{ "DTERR", 0x01, 0x01 },1029{ "DGFORMERR", 0x02, 0x02 },1030{ "CRCERR", 0x04, 0x04 },1031{ "AIPERR", 0x08, 0x08 },1032{ "PARITYERR", 0x10, 0x10 },1033{ "PREVPHASE", 0x20, 0x20 },1034{ "HIPERR", 0x40, 0x40 },1035{ "HIZERO", 0x80, 0x80 }1036};10371038int1039ahd_perrdiag_print(u_int regvalue, u_int *cur_col, u_int wrap)1040{1041return (ahd_print_register(PERRDIAG_parse_table, 8, "PERRDIAG",10420x4e, regvalue, cur_col, wrap));1043}10441045int1046ahd_lqistate_print(u_int regvalue, u_int *cur_col, u_int wrap)1047{1048return (ahd_print_register(NULL, 0, "LQISTATE",10490x4e, regvalue, cur_col, wrap));1050}10511052int1053ahd_soffcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)1054{1055return (ahd_print_register(NULL, 0, "SOFFCNT",10560x4f, regvalue, cur_col, wrap));1057}10581059int1060ahd_lqostate_print(u_int regvalue, u_int *cur_col, u_int wrap)1061{1062return (ahd_print_register(NULL, 0, "LQOSTATE",10630x4f, regvalue, cur_col, wrap));1064}10651066static ahd_reg_parse_entry_t LQISTAT0_parse_table[] = {1067{ "LQIATNCMD", 0x01, 0x01 },1068{ "LQIATNLQ", 0x02, 0x02 },1069{ "LQIBADLQT", 0x04, 0x04 },1070{ "LQICRCT2", 0x08, 0x08 },1071{ "LQICRCT1", 0x10, 0x10 },1072{ "LQIATNQAS", 0x20, 0x20 }1073};10741075int1076ahd_lqistat0_print(u_int regvalue, u_int *cur_col, u_int wrap)1077{1078return (ahd_print_register(LQISTAT0_parse_table, 6, "LQISTAT0",10790x50, regvalue, cur_col, wrap));1080}10811082static ahd_reg_parse_entry_t CLRLQIINT0_parse_table[] = {1083{ "CLRLQIATNCMD", 0x01, 0x01 },1084{ "CLRLQIATNLQ", 0x02, 0x02 },1085{ "CLRLQIBADLQT", 0x04, 0x04 },1086{ "CLRLQICRCT2", 0x08, 0x08 },1087{ "CLRLQICRCT1", 0x10, 0x10 },1088{ "CLRLQIATNQAS", 0x20, 0x20 }1089};10901091int1092ahd_clrlqiint0_print(u_int regvalue, u_int *cur_col, u_int wrap)1093{1094return (ahd_print_register(CLRLQIINT0_parse_table, 6, "CLRLQIINT0",10950x50, regvalue, cur_col, wrap));1096}10971098static ahd_reg_parse_entry_t LQIMODE0_parse_table[] = {1099{ "ENLQIATNCMD", 0x01, 0x01 },1100{ "ENLQIATNLQ", 0x02, 0x02 },1101{ "ENLQIBADLQT", 0x04, 0x04 },1102{ "ENLQICRCT2", 0x08, 0x08 },1103{ "ENLQICRCT1", 0x10, 0x10 },1104{ "ENLQIATNQASK", 0x20, 0x20 }1105};11061107int1108ahd_lqimode0_print(u_int regvalue, u_int *cur_col, u_int wrap)1109{1110return (ahd_print_register(LQIMODE0_parse_table, 6, "LQIMODE0",11110x50, regvalue, cur_col, wrap));1112}11131114static ahd_reg_parse_entry_t LQISTAT1_parse_table[] = {1115{ "LQIOVERI_NLQ", 0x01, 0x01 },1116{ "LQIOVERI_LQ", 0x02, 0x02 },1117{ "LQIBADLQI", 0x04, 0x04 },1118{ "LQICRCI_NLQ", 0x08, 0x08 },1119{ "LQICRCI_LQ", 0x10, 0x10 },1120{ "LQIABORT", 0x20, 0x20 },1121{ "LQIPHASE_NLQ", 0x40, 0x40 },1122{ "LQIPHASE_LQ", 0x80, 0x80 }1123};11241125int1126ahd_lqistat1_print(u_int regvalue, u_int *cur_col, u_int wrap)1127{1128return (ahd_print_register(LQISTAT1_parse_table, 8, "LQISTAT1",11290x51, regvalue, cur_col, wrap));1130}11311132static ahd_reg_parse_entry_t CLRLQIINT1_parse_table[] = {1133{ "CLRLQIOVERI_NLQ", 0x01, 0x01 },1134{ "CLRLQIOVERI_LQ", 0x02, 0x02 },1135{ "CLRLQIBADLQI", 0x04, 0x04 },1136{ "CLRLQICRCI_NLQ", 0x08, 0x08 },1137{ "CLRLQICRCI_LQ", 0x10, 0x10 },1138{ "CLRLIQABORT", 0x20, 0x20 },1139{ "CLRLQIPHASE_NLQ", 0x40, 0x40 },1140{ "CLRLQIPHASE_LQ", 0x80, 0x80 }1141};11421143int1144ahd_clrlqiint1_print(u_int regvalue, u_int *cur_col, u_int wrap)1145{1146return (ahd_print_register(CLRLQIINT1_parse_table, 8, "CLRLQIINT1",11470x51, regvalue, cur_col, wrap));1148}11491150static ahd_reg_parse_entry_t LQIMODE1_parse_table[] = {1151{ "ENLQIOVERI_NLQ", 0x01, 0x01 },1152{ "ENLQIOVERI_LQ", 0x02, 0x02 },1153{ "ENLQIBADLQI", 0x04, 0x04 },1154{ "ENLQICRCI_NLQ", 0x08, 0x08 },1155{ "ENLQICRCI_LQ", 0x10, 0x10 },1156{ "ENLIQABORT", 0x20, 0x20 },1157{ "ENLQIPHASE_NLQ", 0x40, 0x40 },1158{ "ENLQIPHASE_LQ", 0x80, 0x80 }1159};11601161int1162ahd_lqimode1_print(u_int regvalue, u_int *cur_col, u_int wrap)1163{1164return (ahd_print_register(LQIMODE1_parse_table, 8, "LQIMODE1",11650x51, regvalue, cur_col, wrap));1166}11671168static ahd_reg_parse_entry_t LQISTAT2_parse_table[] = {1169{ "LQIGSAVAIL", 0x01, 0x01 },1170{ "LQISTOPCMD", 0x02, 0x02 },1171{ "LQISTOPLQ", 0x04, 0x04 },1172{ "LQISTOPPKT", 0x08, 0x08 },1173{ "LQIWAITFIFO", 0x10, 0x10 },1174{ "LQIWORKONLQ", 0x20, 0x20 },1175{ "LQIPHASE_OUTPKT", 0x40, 0x40 },1176{ "PACKETIZED", 0x80, 0x80 }1177};11781179int1180ahd_lqistat2_print(u_int regvalue, u_int *cur_col, u_int wrap)1181{1182return (ahd_print_register(LQISTAT2_parse_table, 8, "LQISTAT2",11830x52, regvalue, cur_col, wrap));1184}11851186static ahd_reg_parse_entry_t SSTAT3_parse_table[] = {1187{ "OSRAMPERR", 0x01, 0x01 },1188{ "NTRAMPERR", 0x02, 0x02 }1189};11901191int1192ahd_sstat3_print(u_int regvalue, u_int *cur_col, u_int wrap)1193{1194return (ahd_print_register(SSTAT3_parse_table, 2, "SSTAT3",11950x53, regvalue, cur_col, wrap));1196}11971198static ahd_reg_parse_entry_t CLRSINT3_parse_table[] = {1199{ "CLROSRAMPERR", 0x01, 0x01 },1200{ "CLRNTRAMPERR", 0x02, 0x02 }1201};12021203int1204ahd_clrsint3_print(u_int regvalue, u_int *cur_col, u_int wrap)1205{1206return (ahd_print_register(CLRSINT3_parse_table, 2, "CLRSINT3",12070x53, regvalue, cur_col, wrap));1208}12091210static ahd_reg_parse_entry_t SIMODE3_parse_table[] = {1211{ "ENOSRAMPERR", 0x01, 0x01 },1212{ "ENNTRAMPERR", 0x02, 0x02 }1213};12141215int1216ahd_simode3_print(u_int regvalue, u_int *cur_col, u_int wrap)1217{1218return (ahd_print_register(SIMODE3_parse_table, 2, "SIMODE3",12190x53, regvalue, cur_col, wrap));1220}12211222static ahd_reg_parse_entry_t LQOMODE0_parse_table[] = {1223{ "ENLQOTCRC", 0x01, 0x01 },1224{ "ENLQOATNPKT", 0x02, 0x02 },1225{ "ENLQOATNLQ", 0x04, 0x04 },1226{ "ENLQOSTOPT2", 0x08, 0x08 },1227{ "ENLQOTARGSCBPERR", 0x10, 0x10 }1228};12291230int1231ahd_lqomode0_print(u_int regvalue, u_int *cur_col, u_int wrap)1232{1233return (ahd_print_register(LQOMODE0_parse_table, 5, "LQOMODE0",12340x54, regvalue, cur_col, wrap));1235}12361237static ahd_reg_parse_entry_t LQOSTAT0_parse_table[] = {1238{ "LQOTCRC", 0x01, 0x01 },1239{ "LQOATNPKT", 0x02, 0x02 },1240{ "LQOATNLQ", 0x04, 0x04 },1241{ "LQOSTOPT2", 0x08, 0x08 },1242{ "LQOTARGSCBPERR", 0x10, 0x10 }1243};12441245int1246ahd_lqostat0_print(u_int regvalue, u_int *cur_col, u_int wrap)1247{1248return (ahd_print_register(LQOSTAT0_parse_table, 5, "LQOSTAT0",12490x54, regvalue, cur_col, wrap));1250}12511252static ahd_reg_parse_entry_t CLRLQOINT0_parse_table[] = {1253{ "CLRLQOTCRC", 0x01, 0x01 },1254{ "CLRLQOATNPKT", 0x02, 0x02 },1255{ "CLRLQOATNLQ", 0x04, 0x04 },1256{ "CLRLQOSTOPT2", 0x08, 0x08 },1257{ "CLRLQOTARGSCBPERR", 0x10, 0x10 }1258};12591260int1261ahd_clrlqoint0_print(u_int regvalue, u_int *cur_col, u_int wrap)1262{1263return (ahd_print_register(CLRLQOINT0_parse_table, 5, "CLRLQOINT0",12640x54, regvalue, cur_col, wrap));1265}12661267static ahd_reg_parse_entry_t LQOMODE1_parse_table[] = {1268{ "ENLQOPHACHGINPKT", 0x01, 0x01 },1269{ "ENLQOBUSFREE", 0x02, 0x02 },1270{ "ENLQOBADQAS", 0x04, 0x04 },1271{ "ENLQOSTOPI2", 0x08, 0x08 },1272{ "ENLQOINITSCBPERR", 0x10, 0x10 }1273};12741275int1276ahd_lqomode1_print(u_int regvalue, u_int *cur_col, u_int wrap)1277{1278return (ahd_print_register(LQOMODE1_parse_table, 5, "LQOMODE1",12790x55, regvalue, cur_col, wrap));1280}12811282static ahd_reg_parse_entry_t LQOSTAT1_parse_table[] = {1283{ "LQOPHACHGINPKT", 0x01, 0x01 },1284{ "LQOBUSFREE", 0x02, 0x02 },1285{ "LQOBADQAS", 0x04, 0x04 },1286{ "LQOSTOPI2", 0x08, 0x08 },1287{ "LQOINITSCBPERR", 0x10, 0x10 }1288};12891290int1291ahd_lqostat1_print(u_int regvalue, u_int *cur_col, u_int wrap)1292{1293return (ahd_print_register(LQOSTAT1_parse_table, 5, "LQOSTAT1",12940x55, regvalue, cur_col, wrap));1295}12961297static ahd_reg_parse_entry_t CLRLQOINT1_parse_table[] = {1298{ "CLRLQOPHACHGINPKT", 0x01, 0x01 },1299{ "CLRLQOBUSFREE", 0x02, 0x02 },1300{ "CLRLQOBADQAS", 0x04, 0x04 },1301{ "CLRLQOSTOPI2", 0x08, 0x08 },1302{ "CLRLQOINITSCBPERR", 0x10, 0x10 }1303};13041305int1306ahd_clrlqoint1_print(u_int regvalue, u_int *cur_col, u_int wrap)1307{1308return (ahd_print_register(CLRLQOINT1_parse_table, 5, "CLRLQOINT1",13090x55, regvalue, cur_col, wrap));1310}13111312int1313ahd_os_space_cnt_print(u_int regvalue, u_int *cur_col, u_int wrap)1314{1315return (ahd_print_register(NULL, 0, "OS_SPACE_CNT",13160x56, regvalue, cur_col, wrap));1317}13181319static ahd_reg_parse_entry_t LQOSTAT2_parse_table[] = {1320{ "LQOSTOP0", 0x01, 0x01 },1321{ "LQOPHACHGOUTPKT", 0x02, 0x02 },1322{ "LQOWAITFIFO", 0x10, 0x10 },1323{ "LQOPKT", 0xe0, 0xe0 }1324};13251326int1327ahd_lqostat2_print(u_int regvalue, u_int *cur_col, u_int wrap)1328{1329return (ahd_print_register(LQOSTAT2_parse_table, 4, "LQOSTAT2",13300x56, regvalue, cur_col, wrap));1331}13321333static ahd_reg_parse_entry_t SIMODE1_parse_table[] = {1334{ "ENREQINIT", 0x01, 0x01 },1335{ "ENSTRB2FAST", 0x02, 0x02 },1336{ "ENSCSIPERR", 0x04, 0x04 },1337{ "ENBUSFREE", 0x08, 0x08 },1338{ "ENPHASEMIS", 0x10, 0x10 },1339{ "ENSCSIRST", 0x20, 0x20 },1340{ "ENATNTARG", 0x40, 0x40 },1341{ "ENSELTIMO", 0x80, 0x80 }1342};13431344int1345ahd_simode1_print(u_int regvalue, u_int *cur_col, u_int wrap)1346{1347return (ahd_print_register(SIMODE1_parse_table, 8, "SIMODE1",13480x57, regvalue, cur_col, wrap));1349}13501351int1352ahd_gsfifo_print(u_int regvalue, u_int *cur_col, u_int wrap)1353{1354return (ahd_print_register(NULL, 0, "GSFIFO",13550x58, regvalue, cur_col, wrap));1356}13571358static ahd_reg_parse_entry_t DFFSXFRCTL_parse_table[] = {1359{ "RSTCHN", 0x01, 0x01 },1360{ "CLRCHN", 0x02, 0x02 },1361{ "CLRSHCNT", 0x04, 0x04 },1362{ "DFFBITBUCKET", 0x08, 0x08 }1363};13641365int1366ahd_dffsxfrctl_print(u_int regvalue, u_int *cur_col, u_int wrap)1367{1368return (ahd_print_register(DFFSXFRCTL_parse_table, 4, "DFFSXFRCTL",13690x5a, regvalue, cur_col, wrap));1370}13711372int1373ahd_nextscb_print(u_int regvalue, u_int *cur_col, u_int wrap)1374{1375return (ahd_print_register(NULL, 0, "NEXTSCB",13760x5a, regvalue, cur_col, wrap));1377}13781379static ahd_reg_parse_entry_t LQOSCSCTL_parse_table[] = {1380{ "LQONOCHKOVER", 0x01, 0x01 },1381{ "LQOH2A_VERSION", 0x80, 0x80 }1382};13831384int1385ahd_lqoscsctl_print(u_int regvalue, u_int *cur_col, u_int wrap)1386{1387return (ahd_print_register(LQOSCSCTL_parse_table, 2, "LQOSCSCTL",13880x5a, regvalue, cur_col, wrap));1389}13901391static ahd_reg_parse_entry_t SEQINTSRC_parse_table[] = {1392{ "CFG4TCMD", 0x01, 0x01 },1393{ "CFG4ICMD", 0x02, 0x02 },1394{ "CFG4TSTAT", 0x04, 0x04 },1395{ "CFG4ISTAT", 0x08, 0x08 },1396{ "CFG4DATA", 0x10, 0x10 },1397{ "SAVEPTRS", 0x20, 0x20 },1398{ "CTXTDONE", 0x40, 0x40 }1399};14001401int1402ahd_seqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)1403{1404return (ahd_print_register(SEQINTSRC_parse_table, 7, "SEQINTSRC",14050x5b, regvalue, cur_col, wrap));1406}14071408static ahd_reg_parse_entry_t CLRSEQINTSRC_parse_table[] = {1409{ "CLRCFG4TCMD", 0x01, 0x01 },1410{ "CLRCFG4ICMD", 0x02, 0x02 },1411{ "CLRCFG4TSTAT", 0x04, 0x04 },1412{ "CLRCFG4ISTAT", 0x08, 0x08 },1413{ "CLRCFG4DATA", 0x10, 0x10 },1414{ "CLRSAVEPTRS", 0x20, 0x20 },1415{ "CLRCTXTDONE", 0x40, 0x40 }1416};14171418int1419ahd_clrseqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap)1420{1421return (ahd_print_register(CLRSEQINTSRC_parse_table, 7, "CLRSEQINTSRC",14220x5b, regvalue, cur_col, wrap));1423}14241425int1426ahd_currscb_print(u_int regvalue, u_int *cur_col, u_int wrap)1427{1428return (ahd_print_register(NULL, 0, "CURRSCB",14290x5c, regvalue, cur_col, wrap));1430}14311432static ahd_reg_parse_entry_t SEQIMODE_parse_table[] = {1433{ "ENCFG4TCMD", 0x01, 0x01 },1434{ "ENCFG4ICMD", 0x02, 0x02 },1435{ "ENCFG4TSTAT", 0x04, 0x04 },1436{ "ENCFG4ISTAT", 0x08, 0x08 },1437{ "ENCFG4DATA", 0x10, 0x10 },1438{ "ENSAVEPTRS", 0x20, 0x20 },1439{ "ENCTXTDONE", 0x40, 0x40 }1440};14411442int1443ahd_seqimode_print(u_int regvalue, u_int *cur_col, u_int wrap)1444{1445return (ahd_print_register(SEQIMODE_parse_table, 7, "SEQIMODE",14460x5c, regvalue, cur_col, wrap));1447}14481449static ahd_reg_parse_entry_t MDFFSTAT_parse_table[] = {1450{ "FIFOFREE", 0x01, 0x01 },1451{ "DATAINFIFO", 0x02, 0x02 },1452{ "DLZERO", 0x04, 0x04 },1453{ "SHVALID", 0x08, 0x08 },1454{ "LASTSDONE", 0x10, 0x10 },1455{ "SHCNTMINUS1", 0x20, 0x20 },1456{ "SHCNTNEGATIVE", 0x40, 0x40 }1457};14581459int1460ahd_mdffstat_print(u_int regvalue, u_int *cur_col, u_int wrap)1461{1462return (ahd_print_register(MDFFSTAT_parse_table, 7, "MDFFSTAT",14630x5d, regvalue, cur_col, wrap));1464}14651466static ahd_reg_parse_entry_t CRCCONTROL_parse_table[] = {1467{ "CRCVALCHKEN", 0x40, 0x40 }1468};14691470int1471ahd_crccontrol_print(u_int regvalue, u_int *cur_col, u_int wrap)1472{1473return (ahd_print_register(CRCCONTROL_parse_table, 1, "CRCCONTROL",14740x5d, regvalue, cur_col, wrap));1475}14761477static ahd_reg_parse_entry_t SCSITEST_parse_table[] = {1478{ "SEL_TXPLL_DEBUG", 0x04, 0x04 },1479{ "CNTRTEST", 0x08, 0x08 }1480};14811482int1483ahd_scsitest_print(u_int regvalue, u_int *cur_col, u_int wrap)1484{1485return (ahd_print_register(SCSITEST_parse_table, 2, "SCSITEST",14860x5e, regvalue, cur_col, wrap));1487}14881489int1490ahd_dfftag_print(u_int regvalue, u_int *cur_col, u_int wrap)1491{1492return (ahd_print_register(NULL, 0, "DFFTAG",14930x5e, regvalue, cur_col, wrap));1494}14951496int1497ahd_lastscb_print(u_int regvalue, u_int *cur_col, u_int wrap)1498{1499return (ahd_print_register(NULL, 0, "LASTSCB",15000x5e, regvalue, cur_col, wrap));1501}15021503static ahd_reg_parse_entry_t IOPDNCTL_parse_table[] = {1504{ "PDN_DIFFSENSE", 0x01, 0x01 },1505{ "PDN_IDIST", 0x04, 0x04 },1506{ "DISABLE_OE", 0x80, 0x80 }1507};15081509int1510ahd_iopdnctl_print(u_int regvalue, u_int *cur_col, u_int wrap)1511{1512return (ahd_print_register(IOPDNCTL_parse_table, 3, "IOPDNCTL",15130x5f, regvalue, cur_col, wrap));1514}15151516int1517ahd_negoaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)1518{1519return (ahd_print_register(NULL, 0, "NEGOADDR",15200x60, regvalue, cur_col, wrap));1521}15221523int1524ahd_shaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)1525{1526return (ahd_print_register(NULL, 0, "SHADDR",15270x60, regvalue, cur_col, wrap));1528}15291530int1531ahd_dgrpcrci_print(u_int regvalue, u_int *cur_col, u_int wrap)1532{1533return (ahd_print_register(NULL, 0, "DGRPCRCI",15340x60, regvalue, cur_col, wrap));1535}15361537int1538ahd_negperiod_print(u_int regvalue, u_int *cur_col, u_int wrap)1539{1540return (ahd_print_register(NULL, 0, "NEGPERIOD",15410x61, regvalue, cur_col, wrap));1542}15431544int1545ahd_packcrci_print(u_int regvalue, u_int *cur_col, u_int wrap)1546{1547return (ahd_print_register(NULL, 0, "PACKCRCI",15480x62, regvalue, cur_col, wrap));1549}15501551int1552ahd_negoffset_print(u_int regvalue, u_int *cur_col, u_int wrap)1553{1554return (ahd_print_register(NULL, 0, "NEGOFFSET",15550x62, regvalue, cur_col, wrap));1556}15571558static ahd_reg_parse_entry_t NEGPPROPTS_parse_table[] = {1559{ "PPROPT_IUT", 0x01, 0x01 },1560{ "PPROPT_DT", 0x02, 0x02 },1561{ "PPROPT_QAS", 0x04, 0x04 },1562{ "PPROPT_PACE", 0x08, 0x08 }1563};15641565int1566ahd_negppropts_print(u_int regvalue, u_int *cur_col, u_int wrap)1567{1568return (ahd_print_register(NEGPPROPTS_parse_table, 4, "NEGPPROPTS",15690x63, regvalue, cur_col, wrap));1570}15711572static ahd_reg_parse_entry_t NEGCONOPTS_parse_table[] = {1573{ "WIDEXFER", 0x01, 0x01 },1574{ "ENAUTOATNO", 0x02, 0x02 },1575{ "ENAUTOATNI", 0x04, 0x04 },1576{ "ENSLOWCRC", 0x08, 0x08 },1577{ "RTI_OVRDTRN", 0x10, 0x10 },1578{ "RTI_WRTDIS", 0x20, 0x20 },1579{ "ENSNAPSHOT", 0x40, 0x40 }1580};15811582int1583ahd_negconopts_print(u_int regvalue, u_int *cur_col, u_int wrap)1584{1585return (ahd_print_register(NEGCONOPTS_parse_table, 7, "NEGCONOPTS",15860x64, regvalue, cur_col, wrap));1587}15881589int1590ahd_annexcol_print(u_int regvalue, u_int *cur_col, u_int wrap)1591{1592return (ahd_print_register(NULL, 0, "ANNEXCOL",15930x65, regvalue, cur_col, wrap));1594}15951596int1597ahd_annexdat_print(u_int regvalue, u_int *cur_col, u_int wrap)1598{1599return (ahd_print_register(NULL, 0, "ANNEXDAT",16000x66, regvalue, cur_col, wrap));1601}16021603static ahd_reg_parse_entry_t SCSCHKN_parse_table[] = {1604{ "LSTSGCLRDIS", 0x01, 0x01 },1605{ "SHVALIDSTDIS", 0x02, 0x02 },1606{ "DFFACTCLR", 0x04, 0x04 },1607{ "SDONEMSKDIS", 0x08, 0x08 },1608{ "WIDERESEN", 0x10, 0x10 },1609{ "CURRFIFODEF", 0x20, 0x20 },1610{ "STSELSKIDDIS", 0x40, 0x40 }1611};16121613int1614ahd_scschkn_print(u_int regvalue, u_int *cur_col, u_int wrap)1615{1616return (ahd_print_register(SCSCHKN_parse_table, 7, "SCSCHKN",16170x66, regvalue, cur_col, wrap));1618}16191620int1621ahd_iownid_print(u_int regvalue, u_int *cur_col, u_int wrap)1622{1623return (ahd_print_register(NULL, 0, "IOWNID",16240x67, regvalue, cur_col, wrap));1625}16261627int1628ahd_shcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)1629{1630return (ahd_print_register(NULL, 0, "SHCNT",16310x68, regvalue, cur_col, wrap));1632}16331634static ahd_reg_parse_entry_t PLL960CTL0_parse_table[] = {1635{ "PLL_ENFBM", 0x01, 0x01 },1636{ "PLL_DLPF", 0x02, 0x02 },1637{ "PLL_ENLPF", 0x04, 0x04 },1638{ "PLL_ENLUD", 0x08, 0x08 },1639{ "PLL_NS", 0x30, 0x30 },1640{ "PLL_PWDN", 0x40, 0x40 },1641{ "PLL_VCOSEL", 0x80, 0x80 }1642};16431644int1645ahd_pll960ctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)1646{1647return (ahd_print_register(PLL960CTL0_parse_table, 7, "PLL960CTL0",16480x68, regvalue, cur_col, wrap));1649}16501651static ahd_reg_parse_entry_t PLL960CTL1_parse_table[] = {1652{ "PLL_RST", 0x01, 0x01 },1653{ "PLL_CNTCLR", 0x40, 0x40 },1654{ "PLL_CNTEN", 0x80, 0x80 }1655};16561657int1658ahd_pll960ctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)1659{1660return (ahd_print_register(PLL960CTL1_parse_table, 3, "PLL960CTL1",16610x69, regvalue, cur_col, wrap));1662}16631664int1665ahd_townid_print(u_int regvalue, u_int *cur_col, u_int wrap)1666{1667return (ahd_print_register(NULL, 0, "TOWNID",16680x69, regvalue, cur_col, wrap));1669}16701671int1672ahd_xsig_print(u_int regvalue, u_int *cur_col, u_int wrap)1673{1674return (ahd_print_register(NULL, 0, "XSIG",16750x6a, regvalue, cur_col, wrap));1676}16771678int1679ahd_pll960cnt0_print(u_int regvalue, u_int *cur_col, u_int wrap)1680{1681return (ahd_print_register(NULL, 0, "PLL960CNT0",16820x6a, regvalue, cur_col, wrap));1683}16841685int1686ahd_seloid_print(u_int regvalue, u_int *cur_col, u_int wrap)1687{1688return (ahd_print_register(NULL, 0, "SELOID",16890x6b, regvalue, cur_col, wrap));1690}16911692int1693ahd_fairness_print(u_int regvalue, u_int *cur_col, u_int wrap)1694{1695return (ahd_print_register(NULL, 0, "FAIRNESS",16960x6c, regvalue, cur_col, wrap));1697}16981699static ahd_reg_parse_entry_t PLL400CTL0_parse_table[] = {1700{ "PLL_ENFBM", 0x01, 0x01 },1701{ "PLL_DLPF", 0x02, 0x02 },1702{ "PLL_ENLPF", 0x04, 0x04 },1703{ "PLL_ENLUD", 0x08, 0x08 },1704{ "PLL_NS", 0x30, 0x30 },1705{ "PLL_PWDN", 0x40, 0x40 },1706{ "PLL_VCOSEL", 0x80, 0x80 }1707};17081709int1710ahd_pll400ctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)1711{1712return (ahd_print_register(PLL400CTL0_parse_table, 7, "PLL400CTL0",17130x6c, regvalue, cur_col, wrap));1714}17151716static ahd_reg_parse_entry_t PLL400CTL1_parse_table[] = {1717{ "PLL_RST", 0x01, 0x01 },1718{ "PLL_CNTCLR", 0x40, 0x40 },1719{ "PLL_CNTEN", 0x80, 0x80 }1720};17211722int1723ahd_pll400ctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)1724{1725return (ahd_print_register(PLL400CTL1_parse_table, 3, "PLL400CTL1",17260x6d, regvalue, cur_col, wrap));1727}17281729int1730ahd_pll400cnt0_print(u_int regvalue, u_int *cur_col, u_int wrap)1731{1732return (ahd_print_register(NULL, 0, "PLL400CNT0",17330x6e, regvalue, cur_col, wrap));1734}17351736int1737ahd_unfairness_print(u_int regvalue, u_int *cur_col, u_int wrap)1738{1739return (ahd_print_register(NULL, 0, "UNFAIRNESS",17400x6e, regvalue, cur_col, wrap));1741}17421743int1744ahd_hodmaadr_print(u_int regvalue, u_int *cur_col, u_int wrap)1745{1746return (ahd_print_register(NULL, 0, "HODMAADR",17470x70, regvalue, cur_col, wrap));1748}17491750int1751ahd_haddr_print(u_int regvalue, u_int *cur_col, u_int wrap)1752{1753return (ahd_print_register(NULL, 0, "HADDR",17540x70, regvalue, cur_col, wrap));1755}17561757static ahd_reg_parse_entry_t PLLDELAY_parse_table[] = {1758{ "SPLIT_DROP_REQ", 0x80, 0x80 }1759};17601761int1762ahd_plldelay_print(u_int regvalue, u_int *cur_col, u_int wrap)1763{1764return (ahd_print_register(PLLDELAY_parse_table, 1, "PLLDELAY",17650x70, regvalue, cur_col, wrap));1766}17671768int1769ahd_hcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)1770{1771return (ahd_print_register(NULL, 0, "HCNT",17720x78, regvalue, cur_col, wrap));1773}17741775int1776ahd_hodmacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)1777{1778return (ahd_print_register(NULL, 0, "HODMACNT",17790x78, regvalue, cur_col, wrap));1780}17811782int1783ahd_hodmaen_print(u_int regvalue, u_int *cur_col, u_int wrap)1784{1785return (ahd_print_register(NULL, 0, "HODMAEN",17860x7a, regvalue, cur_col, wrap));1787}17881789int1790ahd_scbhaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)1791{1792return (ahd_print_register(NULL, 0, "SCBHADDR",17930x7c, regvalue, cur_col, wrap));1794}17951796int1797ahd_sghaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)1798{1799return (ahd_print_register(NULL, 0, "SGHADDR",18000x7c, regvalue, cur_col, wrap));1801}18021803int1804ahd_scbhcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)1805{1806return (ahd_print_register(NULL, 0, "SCBHCNT",18070x84, regvalue, cur_col, wrap));1808}18091810int1811ahd_sghcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)1812{1813return (ahd_print_register(NULL, 0, "SGHCNT",18140x84, regvalue, cur_col, wrap));1815}18161817static ahd_reg_parse_entry_t DFF_THRSH_parse_table[] = {1818{ "WR_DFTHRSH_MIN", 0x00, 0x70 },1819{ "RD_DFTHRSH_MIN", 0x00, 0x07 },1820{ "RD_DFTHRSH_25", 0x01, 0x07 },1821{ "RD_DFTHRSH_50", 0x02, 0x07 },1822{ "RD_DFTHRSH_63", 0x03, 0x07 },1823{ "RD_DFTHRSH_75", 0x04, 0x07 },1824{ "RD_DFTHRSH_85", 0x05, 0x07 },1825{ "RD_DFTHRSH_90", 0x06, 0x07 },1826{ "RD_DFTHRSH_MAX", 0x07, 0x07 },1827{ "WR_DFTHRSH_25", 0x10, 0x70 },1828{ "WR_DFTHRSH_50", 0x20, 0x70 },1829{ "WR_DFTHRSH_63", 0x30, 0x70 },1830{ "WR_DFTHRSH_75", 0x40, 0x70 },1831{ "WR_DFTHRSH_85", 0x50, 0x70 },1832{ "WR_DFTHRSH_90", 0x60, 0x70 },1833{ "WR_DFTHRSH_MAX", 0x70, 0x70 },1834{ "RD_DFTHRSH", 0x07, 0x07 },1835{ "WR_DFTHRSH", 0x70, 0x70 }1836};18371838int1839ahd_dff_thrsh_print(u_int regvalue, u_int *cur_col, u_int wrap)1840{1841return (ahd_print_register(DFF_THRSH_parse_table, 18, "DFF_THRSH",18420x88, regvalue, cur_col, wrap));1843}18441845int1846ahd_romaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)1847{1848return (ahd_print_register(NULL, 0, "ROMADDR",18490x8a, regvalue, cur_col, wrap));1850}18511852static ahd_reg_parse_entry_t ROMCNTRL_parse_table[] = {1853{ "RDY", 0x01, 0x01 },1854{ "REPEAT", 0x02, 0x02 },1855{ "ROMSPD", 0x18, 0x18 },1856{ "ROMOP", 0xe0, 0xe0 }1857};18581859int1860ahd_romcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap)1861{1862return (ahd_print_register(ROMCNTRL_parse_table, 4, "ROMCNTRL",18630x8d, regvalue, cur_col, wrap));1864}18651866int1867ahd_romdata_print(u_int regvalue, u_int *cur_col, u_int wrap)1868{1869return (ahd_print_register(NULL, 0, "ROMDATA",18700x8e, regvalue, cur_col, wrap));1871}18721873static ahd_reg_parse_entry_t DCHRXMSG0_parse_table[] = {1874{ "CFNUM", 0x07, 0x07 },1875{ "CDNUM", 0xf8, 0xf8 }1876};18771878int1879ahd_dchrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)1880{1881return (ahd_print_register(DCHRXMSG0_parse_table, 2, "DCHRXMSG0",18820x90, regvalue, cur_col, wrap));1883}18841885static ahd_reg_parse_entry_t OVLYRXMSG0_parse_table[] = {1886{ "CFNUM", 0x07, 0x07 },1887{ "CDNUM", 0xf8, 0xf8 }1888};18891890int1891ahd_ovlyrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)1892{1893return (ahd_print_register(OVLYRXMSG0_parse_table, 2, "OVLYRXMSG0",18940x90, regvalue, cur_col, wrap));1895}18961897static ahd_reg_parse_entry_t CMCRXMSG0_parse_table[] = {1898{ "CFNUM", 0x07, 0x07 },1899{ "CDNUM", 0xf8, 0xf8 }1900};19011902int1903ahd_cmcrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)1904{1905return (ahd_print_register(CMCRXMSG0_parse_table, 2, "CMCRXMSG0",19060x90, regvalue, cur_col, wrap));1907}19081909static ahd_reg_parse_entry_t ROENABLE_parse_table[] = {1910{ "DCH0ROEN", 0x01, 0x01 },1911{ "DCH1ROEN", 0x02, 0x02 },1912{ "SGROEN", 0x04, 0x04 },1913{ "CMCROEN", 0x08, 0x08 },1914{ "OVLYROEN", 0x10, 0x10 },1915{ "MSIROEN", 0x20, 0x20 }1916};19171918int1919ahd_roenable_print(u_int regvalue, u_int *cur_col, u_int wrap)1920{1921return (ahd_print_register(ROENABLE_parse_table, 6, "ROENABLE",19220x90, regvalue, cur_col, wrap));1923}19241925static ahd_reg_parse_entry_t DCHRXMSG1_parse_table[] = {1926{ "CBNUM", 0xff, 0xff }1927};19281929int1930ahd_dchrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)1931{1932return (ahd_print_register(DCHRXMSG1_parse_table, 1, "DCHRXMSG1",19330x91, regvalue, cur_col, wrap));1934}19351936static ahd_reg_parse_entry_t OVLYRXMSG1_parse_table[] = {1937{ "CBNUM", 0xff, 0xff }1938};19391940int1941ahd_ovlyrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)1942{1943return (ahd_print_register(OVLYRXMSG1_parse_table, 1, "OVLYRXMSG1",19440x91, regvalue, cur_col, wrap));1945}19461947static ahd_reg_parse_entry_t CMCRXMSG1_parse_table[] = {1948{ "CBNUM", 0xff, 0xff }1949};19501951int1952ahd_cmcrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)1953{1954return (ahd_print_register(CMCRXMSG1_parse_table, 1, "CMCRXMSG1",19550x91, regvalue, cur_col, wrap));1956}19571958static ahd_reg_parse_entry_t NSENABLE_parse_table[] = {1959{ "DCH0NSEN", 0x01, 0x01 },1960{ "DCH1NSEN", 0x02, 0x02 },1961{ "SGNSEN", 0x04, 0x04 },1962{ "CMCNSEN", 0x08, 0x08 },1963{ "OVLYNSEN", 0x10, 0x10 },1964{ "MSINSEN", 0x20, 0x20 }1965};19661967int1968ahd_nsenable_print(u_int regvalue, u_int *cur_col, u_int wrap)1969{1970return (ahd_print_register(NSENABLE_parse_table, 6, "NSENABLE",19710x91, regvalue, cur_col, wrap));1972}19731974static ahd_reg_parse_entry_t DCHRXMSG2_parse_table[] = {1975{ "MINDEX", 0xff, 0xff }1976};19771978int1979ahd_dchrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)1980{1981return (ahd_print_register(DCHRXMSG2_parse_table, 1, "DCHRXMSG2",19820x92, regvalue, cur_col, wrap));1983}19841985static ahd_reg_parse_entry_t OVLYRXMSG2_parse_table[] = {1986{ "MINDEX", 0xff, 0xff }1987};19881989int1990ahd_ovlyrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)1991{1992return (ahd_print_register(OVLYRXMSG2_parse_table, 1, "OVLYRXMSG2",19930x92, regvalue, cur_col, wrap));1994}19951996static ahd_reg_parse_entry_t CMCRXMSG2_parse_table[] = {1997{ "MINDEX", 0xff, 0xff }1998};19992000int2001ahd_cmcrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)2002{2003return (ahd_print_register(CMCRXMSG2_parse_table, 1, "CMCRXMSG2",20040x92, regvalue, cur_col, wrap));2005}20062007int2008ahd_ost_print(u_int regvalue, u_int *cur_col, u_int wrap)2009{2010return (ahd_print_register(NULL, 0, "OST",20110x92, regvalue, cur_col, wrap));2012}20132014static ahd_reg_parse_entry_t DCHRXMSG3_parse_table[] = {2015{ "MCLASS", 0x0f, 0x0f }2016};20172018int2019ahd_dchrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)2020{2021return (ahd_print_register(DCHRXMSG3_parse_table, 1, "DCHRXMSG3",20220x93, regvalue, cur_col, wrap));2023}20242025static ahd_reg_parse_entry_t OVLYRXMSG3_parse_table[] = {2026{ "MCLASS", 0x0f, 0x0f }2027};20282029int2030ahd_ovlyrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)2031{2032return (ahd_print_register(OVLYRXMSG3_parse_table, 1, "OVLYRXMSG3",20330x93, regvalue, cur_col, wrap));2034}20352036static ahd_reg_parse_entry_t CMCRXMSG3_parse_table[] = {2037{ "MCLASS", 0x0f, 0x0f }2038};20392040int2041ahd_cmcrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)2042{2043return (ahd_print_register(CMCRXMSG3_parse_table, 1, "CMCRXMSG3",20440x93, regvalue, cur_col, wrap));2045}20462047static ahd_reg_parse_entry_t PCIXCTL_parse_table[] = {2048{ "CMPABCDIS", 0x01, 0x01 },2049{ "TSCSERREN", 0x02, 0x02 },2050{ "SRSPDPEEN", 0x04, 0x04 },2051{ "SPLTSTADIS", 0x08, 0x08 },2052{ "SPLTSMADIS", 0x10, 0x10 },2053{ "UNEXPSCIEN", 0x20, 0x20 },2054{ "SERRPULSE", 0x80, 0x80 }2055};20562057int2058ahd_pcixctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2059{2060return (ahd_print_register(PCIXCTL_parse_table, 7, "PCIXCTL",20610x93, regvalue, cur_col, wrap));2062}20632064int2065ahd_cmcseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2066{2067return (ahd_print_register(NULL, 0, "CMCSEQBCNT",20680x94, regvalue, cur_col, wrap));2069}20702071int2072ahd_dchseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2073{2074return (ahd_print_register(NULL, 0, "DCHSEQBCNT",20750x94, regvalue, cur_col, wrap));2076}20772078int2079ahd_ovlyseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2080{2081return (ahd_print_register(NULL, 0, "OVLYSEQBCNT",20820x94, regvalue, cur_col, wrap));2083}20842085static ahd_reg_parse_entry_t CMCSPLTSTAT0_parse_table[] = {2086{ "RXSPLTRSP", 0x01, 0x01 },2087{ "RXSCEMSG", 0x02, 0x02 },2088{ "RXOVRUN", 0x04, 0x04 },2089{ "CNTNOTCMPLT", 0x08, 0x08 },2090{ "SCDATBUCKET", 0x10, 0x10 },2091{ "SCADERR", 0x20, 0x20 },2092{ "SCBCERR", 0x40, 0x40 },2093{ "STAETERM", 0x80, 0x80 }2094};20952096int2097ahd_cmcspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)2098{2099return (ahd_print_register(CMCSPLTSTAT0_parse_table, 8, "CMCSPLTSTAT0",21000x96, regvalue, cur_col, wrap));2101}21022103static ahd_reg_parse_entry_t DCHSPLTSTAT0_parse_table[] = {2104{ "RXSPLTRSP", 0x01, 0x01 },2105{ "RXSCEMSG", 0x02, 0x02 },2106{ "RXOVRUN", 0x04, 0x04 },2107{ "CNTNOTCMPLT", 0x08, 0x08 },2108{ "SCDATBUCKET", 0x10, 0x10 },2109{ "SCADERR", 0x20, 0x20 },2110{ "SCBCERR", 0x40, 0x40 },2111{ "STAETERM", 0x80, 0x80 }2112};21132114int2115ahd_dchspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)2116{2117return (ahd_print_register(DCHSPLTSTAT0_parse_table, 8, "DCHSPLTSTAT0",21180x96, regvalue, cur_col, wrap));2119}21202121static ahd_reg_parse_entry_t OVLYSPLTSTAT0_parse_table[] = {2122{ "RXSPLTRSP", 0x01, 0x01 },2123{ "RXSCEMSG", 0x02, 0x02 },2124{ "RXOVRUN", 0x04, 0x04 },2125{ "CNTNOTCMPLT", 0x08, 0x08 },2126{ "SCDATBUCKET", 0x10, 0x10 },2127{ "SCADERR", 0x20, 0x20 },2128{ "SCBCERR", 0x40, 0x40 },2129{ "STAETERM", 0x80, 0x80 }2130};21312132int2133ahd_ovlyspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)2134{2135return (ahd_print_register(OVLYSPLTSTAT0_parse_table, 8, "OVLYSPLTSTAT0",21360x96, regvalue, cur_col, wrap));2137}21382139static ahd_reg_parse_entry_t CMCSPLTSTAT1_parse_table[] = {2140{ "RXDATABUCKET", 0x01, 0x01 }2141};21422143int2144ahd_cmcspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)2145{2146return (ahd_print_register(CMCSPLTSTAT1_parse_table, 1, "CMCSPLTSTAT1",21470x97, regvalue, cur_col, wrap));2148}21492150static ahd_reg_parse_entry_t DCHSPLTSTAT1_parse_table[] = {2151{ "RXDATABUCKET", 0x01, 0x01 }2152};21532154int2155ahd_dchspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)2156{2157return (ahd_print_register(DCHSPLTSTAT1_parse_table, 1, "DCHSPLTSTAT1",21580x97, regvalue, cur_col, wrap));2159}21602161static ahd_reg_parse_entry_t OVLYSPLTSTAT1_parse_table[] = {2162{ "RXDATABUCKET", 0x01, 0x01 }2163};21642165int2166ahd_ovlyspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)2167{2168return (ahd_print_register(OVLYSPLTSTAT1_parse_table, 1, "OVLYSPLTSTAT1",21690x97, regvalue, cur_col, wrap));2170}21712172static ahd_reg_parse_entry_t SGRXMSG0_parse_table[] = {2173{ "CFNUM", 0x07, 0x07 },2174{ "CDNUM", 0xf8, 0xf8 }2175};21762177int2178ahd_sgrxmsg0_print(u_int regvalue, u_int *cur_col, u_int wrap)2179{2180return (ahd_print_register(SGRXMSG0_parse_table, 2, "SGRXMSG0",21810x98, regvalue, cur_col, wrap));2182}21832184static ahd_reg_parse_entry_t SLVSPLTOUTADR0_parse_table[] = {2185{ "LOWER_ADDR", 0x7f, 0x7f }2186};21872188int2189ahd_slvspltoutadr0_print(u_int regvalue, u_int *cur_col, u_int wrap)2190{2191return (ahd_print_register(SLVSPLTOUTADR0_parse_table, 1, "SLVSPLTOUTADR0",21920x98, regvalue, cur_col, wrap));2193}21942195static ahd_reg_parse_entry_t SGRXMSG1_parse_table[] = {2196{ "CBNUM", 0xff, 0xff }2197};21982199int2200ahd_sgrxmsg1_print(u_int regvalue, u_int *cur_col, u_int wrap)2201{2202return (ahd_print_register(SGRXMSG1_parse_table, 1, "SGRXMSG1",22030x99, regvalue, cur_col, wrap));2204}22052206static ahd_reg_parse_entry_t SLVSPLTOUTADR1_parse_table[] = {2207{ "REQ_FNUM", 0x07, 0x07 },2208{ "REQ_DNUM", 0xf8, 0xf8 }2209};22102211int2212ahd_slvspltoutadr1_print(u_int regvalue, u_int *cur_col, u_int wrap)2213{2214return (ahd_print_register(SLVSPLTOUTADR1_parse_table, 2, "SLVSPLTOUTADR1",22150x99, regvalue, cur_col, wrap));2216}22172218static ahd_reg_parse_entry_t SGRXMSG2_parse_table[] = {2219{ "MINDEX", 0xff, 0xff }2220};22212222int2223ahd_sgrxmsg2_print(u_int regvalue, u_int *cur_col, u_int wrap)2224{2225return (ahd_print_register(SGRXMSG2_parse_table, 1, "SGRXMSG2",22260x9a, regvalue, cur_col, wrap));2227}22282229static ahd_reg_parse_entry_t SLVSPLTOUTADR2_parse_table[] = {2230{ "REQ_BNUM", 0xff, 0xff }2231};22322233int2234ahd_slvspltoutadr2_print(u_int regvalue, u_int *cur_col, u_int wrap)2235{2236return (ahd_print_register(SLVSPLTOUTADR2_parse_table, 1, "SLVSPLTOUTADR2",22370x9a, regvalue, cur_col, wrap));2238}22392240static ahd_reg_parse_entry_t SGRXMSG3_parse_table[] = {2241{ "MCLASS", 0x0f, 0x0f }2242};22432244int2245ahd_sgrxmsg3_print(u_int regvalue, u_int *cur_col, u_int wrap)2246{2247return (ahd_print_register(SGRXMSG3_parse_table, 1, "SGRXMSG3",22480x9b, regvalue, cur_col, wrap));2249}22502251static ahd_reg_parse_entry_t SLVSPLTOUTADR3_parse_table[] = {2252{ "RLXORD", 0x10, 0x10 },2253{ "TAG_NUM", 0x1f, 0x1f }2254};22552256int2257ahd_slvspltoutadr3_print(u_int regvalue, u_int *cur_col, u_int wrap)2258{2259return (ahd_print_register(SLVSPLTOUTADR3_parse_table, 2, "SLVSPLTOUTADR3",22600x9b, regvalue, cur_col, wrap));2261}22622263static ahd_reg_parse_entry_t SLVSPLTOUTATTR0_parse_table[] = {2264{ "LOWER_BCNT", 0xff, 0xff }2265};22662267int2268ahd_slvspltoutattr0_print(u_int regvalue, u_int *cur_col, u_int wrap)2269{2270return (ahd_print_register(SLVSPLTOUTATTR0_parse_table, 1, "SLVSPLTOUTATTR0",22710x9c, regvalue, cur_col, wrap));2272}22732274int2275ahd_sgseqbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2276{2277return (ahd_print_register(NULL, 0, "SGSEQBCNT",22780x9c, regvalue, cur_col, wrap));2279}22802281static ahd_reg_parse_entry_t SLVSPLTOUTATTR1_parse_table[] = {2282{ "CMPLT_FNUM", 0x07, 0x07 },2283{ "CMPLT_DNUM", 0xf8, 0xf8 }2284};22852286int2287ahd_slvspltoutattr1_print(u_int regvalue, u_int *cur_col, u_int wrap)2288{2289return (ahd_print_register(SLVSPLTOUTATTR1_parse_table, 2, "SLVSPLTOUTATTR1",22900x9d, regvalue, cur_col, wrap));2291}22922293static ahd_reg_parse_entry_t SLVSPLTOUTATTR2_parse_table[] = {2294{ "CMPLT_BNUM", 0xff, 0xff }2295};22962297int2298ahd_slvspltoutattr2_print(u_int regvalue, u_int *cur_col, u_int wrap)2299{2300return (ahd_print_register(SLVSPLTOUTATTR2_parse_table, 1, "SLVSPLTOUTATTR2",23010x9e, regvalue, cur_col, wrap));2302}23032304static ahd_reg_parse_entry_t SGSPLTSTAT0_parse_table[] = {2305{ "RXSPLTRSP", 0x01, 0x01 },2306{ "RXSCEMSG", 0x02, 0x02 },2307{ "RXOVRUN", 0x04, 0x04 },2308{ "CNTNOTCMPLT", 0x08, 0x08 },2309{ "SCDATBUCKET", 0x10, 0x10 },2310{ "SCADERR", 0x20, 0x20 },2311{ "SCBCERR", 0x40, 0x40 },2312{ "STAETERM", 0x80, 0x80 }2313};23142315int2316ahd_sgspltstat0_print(u_int regvalue, u_int *cur_col, u_int wrap)2317{2318return (ahd_print_register(SGSPLTSTAT0_parse_table, 8, "SGSPLTSTAT0",23190x9e, regvalue, cur_col, wrap));2320}23212322static ahd_reg_parse_entry_t SFUNCT_parse_table[] = {2323{ "TEST_NUM", 0x0f, 0x0f },2324{ "TEST_GROUP", 0xf0, 0xf0 }2325};23262327int2328ahd_sfunct_print(u_int regvalue, u_int *cur_col, u_int wrap)2329{2330return (ahd_print_register(SFUNCT_parse_table, 2, "SFUNCT",23310x9f, regvalue, cur_col, wrap));2332}23332334static ahd_reg_parse_entry_t SGSPLTSTAT1_parse_table[] = {2335{ "RXDATABUCKET", 0x01, 0x01 }2336};23372338int2339ahd_sgspltstat1_print(u_int regvalue, u_int *cur_col, u_int wrap)2340{2341return (ahd_print_register(SGSPLTSTAT1_parse_table, 1, "SGSPLTSTAT1",23420x9f, regvalue, cur_col, wrap));2343}23442345static ahd_reg_parse_entry_t DF0PCISTAT_parse_table[] = {2346{ "DPR", 0x01, 0x01 },2347{ "TWATERR", 0x02, 0x02 },2348{ "RDPERR", 0x04, 0x04 },2349{ "SCAAPERR", 0x08, 0x08 },2350{ "RTA", 0x10, 0x10 },2351{ "RMA", 0x20, 0x20 },2352{ "SSE", 0x40, 0x40 },2353{ "DPE", 0x80, 0x80 }2354};23552356int2357ahd_df0pcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)2358{2359return (ahd_print_register(DF0PCISTAT_parse_table, 8, "DF0PCISTAT",23600xa0, regvalue, cur_col, wrap));2361}23622363int2364ahd_reg0_print(u_int regvalue, u_int *cur_col, u_int wrap)2365{2366return (ahd_print_register(NULL, 0, "REG0",23670xa0, regvalue, cur_col, wrap));2368}23692370static ahd_reg_parse_entry_t DF1PCISTAT_parse_table[] = {2371{ "DPR", 0x01, 0x01 },2372{ "TWATERR", 0x02, 0x02 },2373{ "RDPERR", 0x04, 0x04 },2374{ "SCAAPERR", 0x08, 0x08 },2375{ "RTA", 0x10, 0x10 },2376{ "RMA", 0x20, 0x20 },2377{ "SSE", 0x40, 0x40 },2378{ "DPE", 0x80, 0x80 }2379};23802381int2382ahd_df1pcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)2383{2384return (ahd_print_register(DF1PCISTAT_parse_table, 8, "DF1PCISTAT",23850xa1, regvalue, cur_col, wrap));2386}23872388static ahd_reg_parse_entry_t SGPCISTAT_parse_table[] = {2389{ "DPR", 0x01, 0x01 },2390{ "RDPERR", 0x04, 0x04 },2391{ "SCAAPERR", 0x08, 0x08 },2392{ "RTA", 0x10, 0x10 },2393{ "RMA", 0x20, 0x20 },2394{ "SSE", 0x40, 0x40 },2395{ "DPE", 0x80, 0x80 }2396};23972398int2399ahd_sgpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)2400{2401return (ahd_print_register(SGPCISTAT_parse_table, 7, "SGPCISTAT",24020xa2, regvalue, cur_col, wrap));2403}24042405int2406ahd_reg1_print(u_int regvalue, u_int *cur_col, u_int wrap)2407{2408return (ahd_print_register(NULL, 0, "REG1",24090xa2, regvalue, cur_col, wrap));2410}24112412static ahd_reg_parse_entry_t CMCPCISTAT_parse_table[] = {2413{ "DPR", 0x01, 0x01 },2414{ "TWATERR", 0x02, 0x02 },2415{ "RDPERR", 0x04, 0x04 },2416{ "SCAAPERR", 0x08, 0x08 },2417{ "RTA", 0x10, 0x10 },2418{ "RMA", 0x20, 0x20 },2419{ "SSE", 0x40, 0x40 },2420{ "DPE", 0x80, 0x80 }2421};24222423int2424ahd_cmcpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)2425{2426return (ahd_print_register(CMCPCISTAT_parse_table, 8, "CMCPCISTAT",24270xa3, regvalue, cur_col, wrap));2428}24292430static ahd_reg_parse_entry_t OVLYPCISTAT_parse_table[] = {2431{ "DPR", 0x01, 0x01 },2432{ "RDPERR", 0x04, 0x04 },2433{ "SCAAPERR", 0x08, 0x08 },2434{ "RTA", 0x10, 0x10 },2435{ "RMA", 0x20, 0x20 },2436{ "SSE", 0x40, 0x40 },2437{ "DPE", 0x80, 0x80 }2438};24392440int2441ahd_ovlypcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)2442{2443return (ahd_print_register(OVLYPCISTAT_parse_table, 7, "OVLYPCISTAT",24440xa4, regvalue, cur_col, wrap));2445}24462447int2448ahd_reg_isr_print(u_int regvalue, u_int *cur_col, u_int wrap)2449{2450return (ahd_print_register(NULL, 0, "REG_ISR",24510xa4, regvalue, cur_col, wrap));2452}24532454static ahd_reg_parse_entry_t MSIPCISTAT_parse_table[] = {2455{ "DPR", 0x01, 0x01 },2456{ "TWATERR", 0x02, 0x02 },2457{ "CLRPENDMSI", 0x08, 0x08 },2458{ "RTA", 0x10, 0x10 },2459{ "RMA", 0x20, 0x20 },2460{ "SSE", 0x40, 0x40 }2461};24622463int2464ahd_msipcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)2465{2466return (ahd_print_register(MSIPCISTAT_parse_table, 6, "MSIPCISTAT",24670xa6, regvalue, cur_col, wrap));2468}24692470static ahd_reg_parse_entry_t SG_STATE_parse_table[] = {2471{ "SEGS_AVAIL", 0x01, 0x01 },2472{ "LOADING_NEEDED", 0x02, 0x02 },2473{ "FETCH_INPROG", 0x04, 0x04 }2474};24752476int2477ahd_sg_state_print(u_int regvalue, u_int *cur_col, u_int wrap)2478{2479return (ahd_print_register(SG_STATE_parse_table, 3, "SG_STATE",24800xa6, regvalue, cur_col, wrap));2481}24822483static ahd_reg_parse_entry_t TARGPCISTAT_parse_table[] = {2484{ "TWATERR", 0x02, 0x02 },2485{ "STA", 0x08, 0x08 },2486{ "SSE", 0x40, 0x40 },2487{ "DPE", 0x80, 0x80 }2488};24892490int2491ahd_targpcistat_print(u_int regvalue, u_int *cur_col, u_int wrap)2492{2493return (ahd_print_register(TARGPCISTAT_parse_table, 4, "TARGPCISTAT",24940xa7, regvalue, cur_col, wrap));2495}24962497int2498ahd_data_count_odd_print(u_int regvalue, u_int *cur_col, u_int wrap)2499{2500return (ahd_print_register(NULL, 0, "DATA_COUNT_ODD",25010xa7, regvalue, cur_col, wrap));2502}25032504int2505ahd_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)2506{2507return (ahd_print_register(NULL, 0, "SCBPTR",25080xa8, regvalue, cur_col, wrap));2509}25102511int2512ahd_ccscbacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2513{2514return (ahd_print_register(NULL, 0, "CCSCBACNT",25150xab, regvalue, cur_col, wrap));2516}25172518static ahd_reg_parse_entry_t SCBAUTOPTR_parse_table[] = {2519{ "SCBPTR_OFF", 0x07, 0x07 },2520{ "SCBPTR_ADDR", 0x38, 0x38 },2521{ "AUSCBPTR_EN", 0x80, 0x80 }2522};25232524int2525ahd_scbautoptr_print(u_int regvalue, u_int *cur_col, u_int wrap)2526{2527return (ahd_print_register(SCBAUTOPTR_parse_table, 3, "SCBAUTOPTR",25280xab, regvalue, cur_col, wrap));2529}25302531int2532ahd_ccscbadr_bk_print(u_int regvalue, u_int *cur_col, u_int wrap)2533{2534return (ahd_print_register(NULL, 0, "CCSCBADR_BK",25350xac, regvalue, cur_col, wrap));2536}25372538int2539ahd_ccsgaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)2540{2541return (ahd_print_register(NULL, 0, "CCSGADDR",25420xac, regvalue, cur_col, wrap));2543}25442545int2546ahd_ccscbaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)2547{2548return (ahd_print_register(NULL, 0, "CCSCBADDR",25490xac, regvalue, cur_col, wrap));2550}25512552static ahd_reg_parse_entry_t CCSCBCTL_parse_table[] = {2553{ "CCSCBRESET", 0x01, 0x01 },2554{ "CCSCBDIR", 0x04, 0x04 },2555{ "CCSCBEN", 0x08, 0x08 },2556{ "CCARREN", 0x10, 0x10 },2557{ "ARRDONE", 0x40, 0x40 },2558{ "CCSCBDONE", 0x80, 0x80 }2559};25602561int2562ahd_ccscbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2563{2564return (ahd_print_register(CCSCBCTL_parse_table, 6, "CCSCBCTL",25650xad, regvalue, cur_col, wrap));2566}25672568static ahd_reg_parse_entry_t CCSGCTL_parse_table[] = {2569{ "CCSGRESET", 0x01, 0x01 },2570{ "SG_FETCH_REQ", 0x02, 0x02 },2571{ "CCSGENACK", 0x08, 0x08 },2572{ "SG_CACHE_AVAIL", 0x10, 0x10 },2573{ "CCSGDONE", 0x80, 0x80 },2574{ "CCSGEN", 0x0c, 0x0c }2575};25762577int2578ahd_ccsgctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2579{2580return (ahd_print_register(CCSGCTL_parse_table, 6, "CCSGCTL",25810xad, regvalue, cur_col, wrap));2582}25832584static ahd_reg_parse_entry_t CMC_RAMBIST_parse_table[] = {2585{ "CMC_BUFFER_BIST_EN", 0x01, 0x01 },2586{ "CMC_BUFFER_BIST_FAIL",0x02, 0x02 },2587{ "SG_BIST_EN", 0x10, 0x10 },2588{ "SG_BIST_FAIL", 0x20, 0x20 },2589{ "SCBRAMBIST_FAIL", 0x40, 0x40 },2590{ "SG_ELEMENT_SIZE", 0x80, 0x80 }2591};25922593int2594ahd_cmc_rambist_print(u_int regvalue, u_int *cur_col, u_int wrap)2595{2596return (ahd_print_register(CMC_RAMBIST_parse_table, 6, "CMC_RAMBIST",25970xad, regvalue, cur_col, wrap));2598}25992600int2601ahd_ccsgram_print(u_int regvalue, u_int *cur_col, u_int wrap)2602{2603return (ahd_print_register(NULL, 0, "CCSGRAM",26040xb0, regvalue, cur_col, wrap));2605}26062607int2608ahd_ccscbram_print(u_int regvalue, u_int *cur_col, u_int wrap)2609{2610return (ahd_print_register(NULL, 0, "CCSCBRAM",26110xb0, regvalue, cur_col, wrap));2612}26132614int2615ahd_flexadr_print(u_int regvalue, u_int *cur_col, u_int wrap)2616{2617return (ahd_print_register(NULL, 0, "FLEXADR",26180xb0, regvalue, cur_col, wrap));2619}26202621int2622ahd_flexcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2623{2624return (ahd_print_register(NULL, 0, "FLEXCNT",26250xb3, regvalue, cur_col, wrap));2626}26272628static ahd_reg_parse_entry_t FLEXDMASTAT_parse_table[] = {2629{ "FLEXDMADONE", 0x01, 0x01 },2630{ "FLEXDMAERR", 0x02, 0x02 }2631};26322633int2634ahd_flexdmastat_print(u_int regvalue, u_int *cur_col, u_int wrap)2635{2636return (ahd_print_register(FLEXDMASTAT_parse_table, 2, "FLEXDMASTAT",26370xb5, regvalue, cur_col, wrap));2638}26392640int2641ahd_flexdata_print(u_int regvalue, u_int *cur_col, u_int wrap)2642{2643return (ahd_print_register(NULL, 0, "FLEXDATA",26440xb6, regvalue, cur_col, wrap));2645}26462647int2648ahd_brddat_print(u_int regvalue, u_int *cur_col, u_int wrap)2649{2650return (ahd_print_register(NULL, 0, "BRDDAT",26510xb8, regvalue, cur_col, wrap));2652}26532654static ahd_reg_parse_entry_t BRDCTL_parse_table[] = {2655{ "BRDSTB", 0x01, 0x01 },2656{ "BRDRW", 0x02, 0x02 },2657{ "BRDEN", 0x04, 0x04 },2658{ "BRDADDR", 0x38, 0x38 },2659{ "FLXARBREQ", 0x40, 0x40 },2660{ "FLXARBACK", 0x80, 0x80 }2661};26622663int2664ahd_brdctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2665{2666return (ahd_print_register(BRDCTL_parse_table, 6, "BRDCTL",26670xb9, regvalue, cur_col, wrap));2668}26692670int2671ahd_seeadr_print(u_int regvalue, u_int *cur_col, u_int wrap)2672{2673return (ahd_print_register(NULL, 0, "SEEADR",26740xba, regvalue, cur_col, wrap));2675}26762677int2678ahd_seedat_print(u_int regvalue, u_int *cur_col, u_int wrap)2679{2680return (ahd_print_register(NULL, 0, "SEEDAT",26810xbc, regvalue, cur_col, wrap));2682}26832684static ahd_reg_parse_entry_t SEECTL_parse_table[] = {2685{ "SEEOP_ERAL", 0x40, 0x70 },2686{ "SEEOP_WRITE", 0x50, 0x70 },2687{ "SEEOP_READ", 0x60, 0x70 },2688{ "SEEOP_ERASE", 0x70, 0x70 },2689{ "SEESTART", 0x01, 0x01 },2690{ "SEERST", 0x02, 0x02 },2691{ "SEEOPCODE", 0x70, 0x70 },2692{ "SEEOP_EWEN", 0x40, 0x40 },2693{ "SEEOP_WALL", 0x40, 0x40 },2694{ "SEEOP_EWDS", 0x40, 0x40 }2695};26962697int2698ahd_seectl_print(u_int regvalue, u_int *cur_col, u_int wrap)2699{2700return (ahd_print_register(SEECTL_parse_table, 10, "SEECTL",27010xbe, regvalue, cur_col, wrap));2702}27032704static ahd_reg_parse_entry_t SEESTAT_parse_table[] = {2705{ "SEESTART", 0x01, 0x01 },2706{ "SEEBUSY", 0x02, 0x02 },2707{ "SEEARBACK", 0x04, 0x04 },2708{ "LDALTID_L", 0x08, 0x08 },2709{ "SEEOPCODE", 0x70, 0x70 },2710{ "INIT_DONE", 0x80, 0x80 }2711};27122713int2714ahd_seestat_print(u_int regvalue, u_int *cur_col, u_int wrap)2715{2716return (ahd_print_register(SEESTAT_parse_table, 6, "SEESTAT",27170xbe, regvalue, cur_col, wrap));2718}27192720int2721ahd_scbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2722{2723return (ahd_print_register(NULL, 0, "SCBCNT",27240xbf, regvalue, cur_col, wrap));2725}27262727static ahd_reg_parse_entry_t DSPFLTRCTL_parse_table[] = {2728{ "DSPFCNTSEL", 0x0f, 0x0f },2729{ "EDGESENSE", 0x10, 0x10 },2730{ "FLTRDISABLE", 0x20, 0x20 }2731};27322733int2734ahd_dspfltrctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2735{2736return (ahd_print_register(DSPFLTRCTL_parse_table, 3, "DSPFLTRCTL",27370xc0, regvalue, cur_col, wrap));2738}27392740int2741ahd_dfwaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)2742{2743return (ahd_print_register(NULL, 0, "DFWADDR",27440xc0, regvalue, cur_col, wrap));2745}27462747static ahd_reg_parse_entry_t DSPDATACTL_parse_table[] = {2748{ "XMITOFFSTDIS", 0x02, 0x02 },2749{ "RCVROFFSTDIS", 0x04, 0x04 },2750{ "DESQDIS", 0x10, 0x10 },2751{ "BYPASSENAB", 0x80, 0x80 }2752};27532754int2755ahd_dspdatactl_print(u_int regvalue, u_int *cur_col, u_int wrap)2756{2757return (ahd_print_register(DSPDATACTL_parse_table, 4, "DSPDATACTL",27580xc1, regvalue, cur_col, wrap));2759}27602761static ahd_reg_parse_entry_t DSPREQCTL_parse_table[] = {2762{ "MANREQDLY", 0x3f, 0x3f },2763{ "MANREQCTL", 0xc0, 0xc0 }2764};27652766int2767ahd_dspreqctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2768{2769return (ahd_print_register(DSPREQCTL_parse_table, 2, "DSPREQCTL",27700xc2, regvalue, cur_col, wrap));2771}27722773int2774ahd_dfraddr_print(u_int regvalue, u_int *cur_col, u_int wrap)2775{2776return (ahd_print_register(NULL, 0, "DFRADDR",27770xc2, regvalue, cur_col, wrap));2778}27792780static ahd_reg_parse_entry_t DSPACKCTL_parse_table[] = {2781{ "MANACKDLY", 0x3f, 0x3f },2782{ "MANACKCTL", 0xc0, 0xc0 }2783};27842785int2786ahd_dspackctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2787{2788return (ahd_print_register(DSPACKCTL_parse_table, 2, "DSPACKCTL",27890xc3, regvalue, cur_col, wrap));2790}27912792int2793ahd_dfdat_print(u_int regvalue, u_int *cur_col, u_int wrap)2794{2795return (ahd_print_register(NULL, 0, "DFDAT",27960xc4, regvalue, cur_col, wrap));2797}27982799static ahd_reg_parse_entry_t DSPSELECT_parse_table[] = {2800{ "DSPSEL", 0x1f, 0x1f },2801{ "AUTOINCEN", 0x80, 0x80 }2802};28032804int2805ahd_dspselect_print(u_int regvalue, u_int *cur_col, u_int wrap)2806{2807return (ahd_print_register(DSPSELECT_parse_table, 2, "DSPSELECT",28080xc4, regvalue, cur_col, wrap));2809}28102811static ahd_reg_parse_entry_t WRTBIASCTL_parse_table[] = {2812{ "XMITMANVAL", 0x3f, 0x3f },2813{ "AUTOXBCDIS", 0x80, 0x80 }2814};28152816int2817ahd_wrtbiasctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2818{2819return (ahd_print_register(WRTBIASCTL_parse_table, 2, "WRTBIASCTL",28200xc5, regvalue, cur_col, wrap));2821}28222823static ahd_reg_parse_entry_t RCVRBIOSCTL_parse_table[] = {2824{ "RCVRMANVAL", 0x3f, 0x3f },2825{ "AUTORBCDIS", 0x80, 0x80 }2826};28272828int2829ahd_rcvrbiosctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2830{2831return (ahd_print_register(RCVRBIOSCTL_parse_table, 2, "RCVRBIOSCTL",28320xc6, regvalue, cur_col, wrap));2833}28342835int2836ahd_wrtbiascalc_print(u_int regvalue, u_int *cur_col, u_int wrap)2837{2838return (ahd_print_register(NULL, 0, "WRTBIASCALC",28390xc7, regvalue, cur_col, wrap));2840}28412842int2843ahd_dfptrs_print(u_int regvalue, u_int *cur_col, u_int wrap)2844{2845return (ahd_print_register(NULL, 0, "DFPTRS",28460xc8, regvalue, cur_col, wrap));2847}28482849int2850ahd_rcvrbiascalc_print(u_int regvalue, u_int *cur_col, u_int wrap)2851{2852return (ahd_print_register(NULL, 0, "RCVRBIASCALC",28530xc8, regvalue, cur_col, wrap));2854}28552856int2857ahd_dfbkptr_print(u_int regvalue, u_int *cur_col, u_int wrap)2858{2859return (ahd_print_register(NULL, 0, "DFBKPTR",28600xc9, regvalue, cur_col, wrap));2861}28622863int2864ahd_skewcalc_print(u_int regvalue, u_int *cur_col, u_int wrap)2865{2866return (ahd_print_register(NULL, 0, "SKEWCALC",28670xc9, regvalue, cur_col, wrap));2868}28692870static ahd_reg_parse_entry_t DFDBCTL_parse_table[] = {2871{ "DFF_RAMBIST_EN", 0x01, 0x01 },2872{ "DFF_RAMBIST_DONE", 0x02, 0x02 },2873{ "DFF_RAMBIST_FAIL", 0x04, 0x04 },2874{ "DFF_DIR_ERR", 0x08, 0x08 },2875{ "DFF_CIO_RD_RDY", 0x10, 0x10 },2876{ "DFF_CIO_WR_RDY", 0x20, 0x20 }2877};28782879int2880ahd_dfdbctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2881{2882return (ahd_print_register(DFDBCTL_parse_table, 6, "DFDBCTL",28830xcb, regvalue, cur_col, wrap));2884}28852886int2887ahd_dfscnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2888{2889return (ahd_print_register(NULL, 0, "DFSCNT",28900xcc, regvalue, cur_col, wrap));2891}28922893int2894ahd_dfbcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2895{2896return (ahd_print_register(NULL, 0, "DFBCNT",28970xce, regvalue, cur_col, wrap));2898}28992900int2901ahd_ovlyaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)2902{2903return (ahd_print_register(NULL, 0, "OVLYADDR",29040xd4, regvalue, cur_col, wrap));2905}29062907static ahd_reg_parse_entry_t SEQCTL0_parse_table[] = {2908{ "LOADRAM", 0x01, 0x01 },2909{ "SEQRESET", 0x02, 0x02 },2910{ "STEP", 0x04, 0x04 },2911{ "BRKADRINTEN", 0x08, 0x08 },2912{ "FASTMODE", 0x10, 0x10 },2913{ "FAILDIS", 0x20, 0x20 },2914{ "PAUSEDIS", 0x40, 0x40 },2915{ "PERRORDIS", 0x80, 0x80 }2916};29172918int2919ahd_seqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap)2920{2921return (ahd_print_register(SEQCTL0_parse_table, 8, "SEQCTL0",29220xd6, regvalue, cur_col, wrap));2923}29242925static ahd_reg_parse_entry_t SEQCTL1_parse_table[] = {2926{ "RAMBIST_EN", 0x01, 0x01 },2927{ "RAMBIST_FAIL", 0x02, 0x02 },2928{ "RAMBIST_DONE", 0x04, 0x04 },2929{ "OVRLAY_DATA_CHK", 0x08, 0x08 }2930};29312932int2933ahd_seqctl1_print(u_int regvalue, u_int *cur_col, u_int wrap)2934{2935return (ahd_print_register(SEQCTL1_parse_table, 4, "SEQCTL1",29360xd7, regvalue, cur_col, wrap));2937}29382939static ahd_reg_parse_entry_t FLAGS_parse_table[] = {2940{ "CARRY", 0x01, 0x01 },2941{ "ZERO", 0x02, 0x02 }2942};29432944int2945ahd_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)2946{2947return (ahd_print_register(FLAGS_parse_table, 2, "FLAGS",29480xd8, regvalue, cur_col, wrap));2949}29502951static ahd_reg_parse_entry_t SEQINTCTL_parse_table[] = {2952{ "IRET", 0x01, 0x01 },2953{ "INTMASK1", 0x02, 0x02 },2954{ "INTMASK2", 0x04, 0x04 },2955{ "SCS_SEQ_INT1M0", 0x08, 0x08 },2956{ "SCS_SEQ_INT1M1", 0x10, 0x10 },2957{ "INT1_CONTEXT", 0x20, 0x20 },2958{ "INTVEC1DSL", 0x80, 0x80 }2959};29602961int2962ahd_seqintctl_print(u_int regvalue, u_int *cur_col, u_int wrap)2963{2964return (ahd_print_register(SEQINTCTL_parse_table, 7, "SEQINTCTL",29650xd9, regvalue, cur_col, wrap));2966}29672968int2969ahd_seqram_print(u_int regvalue, u_int *cur_col, u_int wrap)2970{2971return (ahd_print_register(NULL, 0, "SEQRAM",29720xda, regvalue, cur_col, wrap));2973}29742975int2976ahd_prgmcnt_print(u_int regvalue, u_int *cur_col, u_int wrap)2977{2978return (ahd_print_register(NULL, 0, "PRGMCNT",29790xde, regvalue, cur_col, wrap));2980}29812982int2983ahd_accum_print(u_int regvalue, u_int *cur_col, u_int wrap)2984{2985return (ahd_print_register(NULL, 0, "ACCUM",29860xe0, regvalue, cur_col, wrap));2987}29882989int2990ahd_sindex_print(u_int regvalue, u_int *cur_col, u_int wrap)2991{2992return (ahd_print_register(NULL, 0, "SINDEX",29930xe2, regvalue, cur_col, wrap));2994}29952996int2997ahd_dindex_print(u_int regvalue, u_int *cur_col, u_int wrap)2998{2999return (ahd_print_register(NULL, 0, "DINDEX",30000xe4, regvalue, cur_col, wrap));3001}30023003static ahd_reg_parse_entry_t BRKADDR1_parse_table[] = {3004{ "BRKDIS", 0x80, 0x80 }3005};30063007int3008ahd_brkaddr1_print(u_int regvalue, u_int *cur_col, u_int wrap)3009{3010return (ahd_print_register(BRKADDR1_parse_table, 1, "BRKADDR1",30110xe6, regvalue, cur_col, wrap));3012}30133014int3015ahd_brkaddr0_print(u_int regvalue, u_int *cur_col, u_int wrap)3016{3017return (ahd_print_register(NULL, 0, "BRKADDR0",30180xe6, regvalue, cur_col, wrap));3019}30203021int3022ahd_allones_print(u_int regvalue, u_int *cur_col, u_int wrap)3023{3024return (ahd_print_register(NULL, 0, "ALLONES",30250xe8, regvalue, cur_col, wrap));3026}30273028int3029ahd_none_print(u_int regvalue, u_int *cur_col, u_int wrap)3030{3031return (ahd_print_register(NULL, 0, "NONE",30320xea, regvalue, cur_col, wrap));3033}30343035int3036ahd_allzeros_print(u_int regvalue, u_int *cur_col, u_int wrap)3037{3038return (ahd_print_register(NULL, 0, "ALLZEROS",30390xea, regvalue, cur_col, wrap));3040}30413042int3043ahd_sindir_print(u_int regvalue, u_int *cur_col, u_int wrap)3044{3045return (ahd_print_register(NULL, 0, "SINDIR",30460xec, regvalue, cur_col, wrap));3047}30483049int3050ahd_dindir_print(u_int regvalue, u_int *cur_col, u_int wrap)3051{3052return (ahd_print_register(NULL, 0, "DINDIR",30530xed, regvalue, cur_col, wrap));3054}30553056int3057ahd_function1_print(u_int regvalue, u_int *cur_col, u_int wrap)3058{3059return (ahd_print_register(NULL, 0, "FUNCTION1",30600xf0, regvalue, cur_col, wrap));3061}30623063int3064ahd_stack_print(u_int regvalue, u_int *cur_col, u_int wrap)3065{3066return (ahd_print_register(NULL, 0, "STACK",30670xf2, regvalue, cur_col, wrap));3068}30693070int3071ahd_intvec1_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)3072{3073return (ahd_print_register(NULL, 0, "INTVEC1_ADDR",30740xf4, regvalue, cur_col, wrap));3075}30763077int3078ahd_curaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)3079{3080return (ahd_print_register(NULL, 0, "CURADDR",30810xf4, regvalue, cur_col, wrap));3082}30833084int3085ahd_intvec2_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)3086{3087return (ahd_print_register(NULL, 0, "INTVEC2_ADDR",30880xf6, regvalue, cur_col, wrap));3089}30903091int3092ahd_lastaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)3093{3094return (ahd_print_register(NULL, 0, "LASTADDR",30950xf6, regvalue, cur_col, wrap));3096}30973098int3099ahd_longjmp_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)3100{3101return (ahd_print_register(NULL, 0, "LONGJMP_ADDR",31020xf8, regvalue, cur_col, wrap));3103}31043105int3106ahd_accum_save_print(u_int regvalue, u_int *cur_col, u_int wrap)3107{3108return (ahd_print_register(NULL, 0, "ACCUM_SAVE",31090xfa, regvalue, cur_col, wrap));3110}31113112int3113ahd_sram_base_print(u_int regvalue, u_int *cur_col, u_int wrap)3114{3115return (ahd_print_register(NULL, 0, "SRAM_BASE",31160x100, regvalue, cur_col, wrap));3117}31183119int3120ahd_waiting_scb_tails_print(u_int regvalue, u_int *cur_col, u_int wrap)3121{3122return (ahd_print_register(NULL, 0, "WAITING_SCB_TAILS",31230x100, regvalue, cur_col, wrap));3124}31253126int3127ahd_ahd_pci_config_base_print(u_int regvalue, u_int *cur_col, u_int wrap)3128{3129return (ahd_print_register(NULL, 0, "AHD_PCI_CONFIG_BASE",31300x100, regvalue, cur_col, wrap));3131}31323133int3134ahd_waiting_tid_head_print(u_int regvalue, u_int *cur_col, u_int wrap)3135{3136return (ahd_print_register(NULL, 0, "WAITING_TID_HEAD",31370x120, regvalue, cur_col, wrap));3138}31393140int3141ahd_waiting_tid_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)3142{3143return (ahd_print_register(NULL, 0, "WAITING_TID_TAIL",31440x122, regvalue, cur_col, wrap));3145}31463147int3148ahd_next_queued_scb_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)3149{3150return (ahd_print_register(NULL, 0, "NEXT_QUEUED_SCB_ADDR",31510x124, regvalue, cur_col, wrap));3152}31533154int3155ahd_complete_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)3156{3157return (ahd_print_register(NULL, 0, "COMPLETE_SCB_HEAD",31580x128, regvalue, cur_col, wrap));3159}31603161int3162ahd_complete_scb_dmainprog_head_print(u_int regvalue, u_int *cur_col, u_int wrap)3163{3164return (ahd_print_register(NULL, 0, "COMPLETE_SCB_DMAINPROG_HEAD",31650x12a, regvalue, cur_col, wrap));3166}31673168int3169ahd_complete_dma_scb_head_print(u_int regvalue, u_int *cur_col, u_int wrap)3170{3171return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_HEAD",31720x12c, regvalue, cur_col, wrap));3173}31743175int3176ahd_complete_dma_scb_tail_print(u_int regvalue, u_int *cur_col, u_int wrap)3177{3178return (ahd_print_register(NULL, 0, "COMPLETE_DMA_SCB_TAIL",31790x12e, regvalue, cur_col, wrap));3180}31813182int3183ahd_complete_on_qfreeze_head_print(u_int regvalue, u_int *cur_col, u_int wrap)3184{3185return (ahd_print_register(NULL, 0, "COMPLETE_ON_QFREEZE_HEAD",31860x130, regvalue, cur_col, wrap));3187}31883189int3190ahd_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)3191{3192return (ahd_print_register(NULL, 0, "QFREEZE_COUNT",31930x132, regvalue, cur_col, wrap));3194}31953196int3197ahd_kernel_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap)3198{3199return (ahd_print_register(NULL, 0, "KERNEL_QFREEZE_COUNT",32000x134, regvalue, cur_col, wrap));3201}32023203int3204ahd_saved_mode_print(u_int regvalue, u_int *cur_col, u_int wrap)3205{3206return (ahd_print_register(NULL, 0, "SAVED_MODE",32070x136, regvalue, cur_col, wrap));3208}32093210int3211ahd_msg_out_print(u_int regvalue, u_int *cur_col, u_int wrap)3212{3213return (ahd_print_register(NULL, 0, "MSG_OUT",32140x137, regvalue, cur_col, wrap));3215}32163217static ahd_reg_parse_entry_t DMAPARAMS_parse_table[] = {3218{ "FIFORESET", 0x01, 0x01 },3219{ "FIFOFLUSH", 0x02, 0x02 },3220{ "DIRECTION", 0x04, 0x04 },3221{ "HDMAEN", 0x08, 0x08 },3222{ "HDMAENACK", 0x08, 0x08 },3223{ "SDMAEN", 0x10, 0x10 },3224{ "SDMAENACK", 0x10, 0x10 },3225{ "SCSIEN", 0x20, 0x20 },3226{ "WIDEODD", 0x40, 0x40 },3227{ "PRELOADEN", 0x80, 0x80 }3228};32293230int3231ahd_dmaparams_print(u_int regvalue, u_int *cur_col, u_int wrap)3232{3233return (ahd_print_register(DMAPARAMS_parse_table, 10, "DMAPARAMS",32340x138, regvalue, cur_col, wrap));3235}32363237static ahd_reg_parse_entry_t SEQ_FLAGS_parse_table[] = {3238{ "NO_DISCONNECT", 0x01, 0x01 },3239{ "SPHASE_PENDING", 0x02, 0x02 },3240{ "DPHASE_PENDING", 0x04, 0x04 },3241{ "CMDPHASE_PENDING", 0x08, 0x08 },3242{ "TARG_CMD_PENDING", 0x10, 0x10 },3243{ "DPHASE", 0x20, 0x20 },3244{ "NO_CDB_SENT", 0x40, 0x40 },3245{ "TARGET_CMD_IS_TAGGED",0x40, 0x40 },3246{ "NOT_IDENTIFIED", 0x80, 0x80 }3247};32483249int3250ahd_seq_flags_print(u_int regvalue, u_int *cur_col, u_int wrap)3251{3252return (ahd_print_register(SEQ_FLAGS_parse_table, 9, "SEQ_FLAGS",32530x139, regvalue, cur_col, wrap));3254}32553256int3257ahd_saved_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)3258{3259return (ahd_print_register(NULL, 0, "SAVED_SCSIID",32600x13a, regvalue, cur_col, wrap));3261}32623263int3264ahd_saved_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)3265{3266return (ahd_print_register(NULL, 0, "SAVED_LUN",32670x13b, regvalue, cur_col, wrap));3268}32693270static ahd_reg_parse_entry_t LASTPHASE_parse_table[] = {3271{ "P_DATAOUT", 0x00, 0xe0 },3272{ "P_DATAOUT_DT", 0x20, 0xe0 },3273{ "P_DATAIN", 0x40, 0xe0 },3274{ "P_DATAIN_DT", 0x60, 0xe0 },3275{ "P_COMMAND", 0x80, 0xe0 },3276{ "P_MESGOUT", 0xa0, 0xe0 },3277{ "P_STATUS", 0xc0, 0xe0 },3278{ "P_MESGIN", 0xe0, 0xe0 },3279{ "P_BUSFREE", 0x01, 0x01 },3280{ "MSGI", 0x20, 0x20 },3281{ "IOI", 0x40, 0x40 },3282{ "CDI", 0x80, 0x80 },3283{ "PHASE_MASK", 0xe0, 0xe0 }3284};32853286int3287ahd_lastphase_print(u_int regvalue, u_int *cur_col, u_int wrap)3288{3289return (ahd_print_register(LASTPHASE_parse_table, 13, "LASTPHASE",32900x13c, regvalue, cur_col, wrap));3291}32923293int3294ahd_qoutfifo_entry_valid_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)3295{3296return (ahd_print_register(NULL, 0, "QOUTFIFO_ENTRY_VALID_TAG",32970x13d, regvalue, cur_col, wrap));3298}32993300int3301ahd_kernel_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)3302{3303return (ahd_print_register(NULL, 0, "KERNEL_TQINPOS",33040x13e, regvalue, cur_col, wrap));3305}33063307int3308ahd_tqinpos_print(u_int regvalue, u_int *cur_col, u_int wrap)3309{3310return (ahd_print_register(NULL, 0, "TQINPOS",33110x13f, regvalue, cur_col, wrap));3312}33133314int3315ahd_shared_data_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)3316{3317return (ahd_print_register(NULL, 0, "SHARED_DATA_ADDR",33180x140, regvalue, cur_col, wrap));3319}33203321int3322ahd_qoutfifo_next_addr_print(u_int regvalue, u_int *cur_col, u_int wrap)3323{3324return (ahd_print_register(NULL, 0, "QOUTFIFO_NEXT_ADDR",33250x144, regvalue, cur_col, wrap));3326}33273328static ahd_reg_parse_entry_t ARG_1_parse_table[] = {3329{ "CONT_MSG_LOOP_TARG", 0x02, 0x02 },3330{ "CONT_MSG_LOOP_READ", 0x03, 0x03 },3331{ "CONT_MSG_LOOP_WRITE",0x04, 0x04 },3332{ "EXIT_MSG_LOOP", 0x08, 0x08 },3333{ "MSGOUT_PHASEMIS", 0x10, 0x10 },3334{ "SEND_REJ", 0x20, 0x20 },3335{ "SEND_SENSE", 0x40, 0x40 },3336{ "SEND_MSG", 0x80, 0x80 }3337};33383339int3340ahd_arg_1_print(u_int regvalue, u_int *cur_col, u_int wrap)3341{3342return (ahd_print_register(ARG_1_parse_table, 8, "ARG_1",33430x148, regvalue, cur_col, wrap));3344}33453346int3347ahd_arg_2_print(u_int regvalue, u_int *cur_col, u_int wrap)3348{3349return (ahd_print_register(NULL, 0, "ARG_2",33500x149, regvalue, cur_col, wrap));3351}33523353int3354ahd_last_msg_print(u_int regvalue, u_int *cur_col, u_int wrap)3355{3356return (ahd_print_register(NULL, 0, "LAST_MSG",33570x14a, regvalue, cur_col, wrap));3358}33593360static ahd_reg_parse_entry_t SCSISEQ_TEMPLATE_parse_table[] = {3361{ "ALTSTIM", 0x01, 0x01 },3362{ "ENAUTOATNP", 0x02, 0x02 },3363{ "MANUALP", 0x0c, 0x0c },3364{ "ENRSELI", 0x10, 0x10 },3365{ "ENSELI", 0x20, 0x20 },3366{ "MANUALCTL", 0x40, 0x40 }3367};33683369int3370ahd_scsiseq_template_print(u_int regvalue, u_int *cur_col, u_int wrap)3371{3372return (ahd_print_register(SCSISEQ_TEMPLATE_parse_table, 6, "SCSISEQ_TEMPLATE",33730x14b, regvalue, cur_col, wrap));3374}33753376int3377ahd_initiator_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)3378{3379return (ahd_print_register(NULL, 0, "INITIATOR_TAG",33800x14c, regvalue, cur_col, wrap));3381}33823383static ahd_reg_parse_entry_t SEQ_FLAGS2_parse_table[] = {3384{ "PENDING_MK_MESSAGE", 0x01, 0x01 },3385{ "TARGET_MSG_PENDING", 0x02, 0x02 },3386{ "SELECTOUT_QFROZEN", 0x04, 0x04 }3387};33883389int3390ahd_seq_flags2_print(u_int regvalue, u_int *cur_col, u_int wrap)3391{3392return (ahd_print_register(SEQ_FLAGS2_parse_table, 3, "SEQ_FLAGS2",33930x14d, regvalue, cur_col, wrap));3394}33953396int3397ahd_allocfifo_scbptr_print(u_int regvalue, u_int *cur_col, u_int wrap)3398{3399return (ahd_print_register(NULL, 0, "ALLOCFIFO_SCBPTR",34000x14e, regvalue, cur_col, wrap));3401}34023403int3404ahd_int_coalescing_timer_print(u_int regvalue, u_int *cur_col, u_int wrap)3405{3406return (ahd_print_register(NULL, 0, "INT_COALESCING_TIMER",34070x150, regvalue, cur_col, wrap));3408}34093410int3411ahd_int_coalescing_maxcmds_print(u_int regvalue, u_int *cur_col, u_int wrap)3412{3413return (ahd_print_register(NULL, 0, "INT_COALESCING_MAXCMDS",34140x152, regvalue, cur_col, wrap));3415}34163417int3418ahd_int_coalescing_mincmds_print(u_int regvalue, u_int *cur_col, u_int wrap)3419{3420return (ahd_print_register(NULL, 0, "INT_COALESCING_MINCMDS",34210x153, regvalue, cur_col, wrap));3422}34233424int3425ahd_cmds_pending_print(u_int regvalue, u_int *cur_col, u_int wrap)3426{3427return (ahd_print_register(NULL, 0, "CMDS_PENDING",34280x154, regvalue, cur_col, wrap));3429}34303431int3432ahd_int_coalescing_cmdcount_print(u_int regvalue, u_int *cur_col, u_int wrap)3433{3434return (ahd_print_register(NULL, 0, "INT_COALESCING_CMDCOUNT",34350x156, regvalue, cur_col, wrap));3436}34373438int3439ahd_local_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap)3440{3441return (ahd_print_register(NULL, 0, "LOCAL_HS_MAILBOX",34420x157, regvalue, cur_col, wrap));3443}34443445int3446ahd_cmdsize_table_print(u_int regvalue, u_int *cur_col, u_int wrap)3447{3448return (ahd_print_register(NULL, 0, "CMDSIZE_TABLE",34490x158, regvalue, cur_col, wrap));3450}34513452int3453ahd_mk_message_scb_print(u_int regvalue, u_int *cur_col, u_int wrap)3454{3455return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCB",34560x160, regvalue, cur_col, wrap));3457}34583459int3460ahd_mk_message_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)3461{3462return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCSIID",34630x162, regvalue, cur_col, wrap));3464}34653466int3467ahd_scb_base_print(u_int regvalue, u_int *cur_col, u_int wrap)3468{3469return (ahd_print_register(NULL, 0, "SCB_BASE",34700x180, regvalue, cur_col, wrap));3471}34723473int3474ahd_scb_residual_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)3475{3476return (ahd_print_register(NULL, 0, "SCB_RESIDUAL_DATACNT",34770x180, regvalue, cur_col, wrap));3478}34793480static ahd_reg_parse_entry_t SCB_RESIDUAL_SGPTR_parse_table[] = {3481{ "SG_LIST_NULL", 0x01, 0x01 },3482{ "SG_OVERRUN_RESID", 0x02, 0x02 },3483{ "SG_ADDR_BIT", 0x04, 0x04 },3484{ "SG_ADDR_MASK", 0xf8, 0xf8 }3485};34863487int3488ahd_scb_residual_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)3489{3490return (ahd_print_register(SCB_RESIDUAL_SGPTR_parse_table, 4, "SCB_RESIDUAL_SGPTR",34910x184, regvalue, cur_col, wrap));3492}34933494int3495ahd_scb_scsi_status_print(u_int regvalue, u_int *cur_col, u_int wrap)3496{3497return (ahd_print_register(NULL, 0, "SCB_SCSI_STATUS",34980x188, regvalue, cur_col, wrap));3499}35003501int3502ahd_scb_target_phases_print(u_int regvalue, u_int *cur_col, u_int wrap)3503{3504return (ahd_print_register(NULL, 0, "SCB_TARGET_PHASES",35050x189, regvalue, cur_col, wrap));3506}35073508int3509ahd_scb_target_data_dir_print(u_int regvalue, u_int *cur_col, u_int wrap)3510{3511return (ahd_print_register(NULL, 0, "SCB_TARGET_DATA_DIR",35120x18a, regvalue, cur_col, wrap));3513}35143515int3516ahd_scb_target_itag_print(u_int regvalue, u_int *cur_col, u_int wrap)3517{3518return (ahd_print_register(NULL, 0, "SCB_TARGET_ITAG",35190x18b, regvalue, cur_col, wrap));3520}35213522int3523ahd_scb_sense_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)3524{3525return (ahd_print_register(NULL, 0, "SCB_SENSE_BUSADDR",35260x18c, regvalue, cur_col, wrap));3527}35283529int3530ahd_scb_tag_print(u_int regvalue, u_int *cur_col, u_int wrap)3531{3532return (ahd_print_register(NULL, 0, "SCB_TAG",35330x190, regvalue, cur_col, wrap));3534}35353536static ahd_reg_parse_entry_t SCB_CONTROL_parse_table[] = {3537{ "SCB_TAG_TYPE", 0x03, 0x03 },3538{ "DISCONNECTED", 0x04, 0x04 },3539{ "STATUS_RCVD", 0x08, 0x08 },3540{ "MK_MESSAGE", 0x10, 0x10 },3541{ "TAG_ENB", 0x20, 0x20 },3542{ "DISCENB", 0x40, 0x40 },3543{ "TARGET_SCB", 0x80, 0x80 }3544};35453546int3547ahd_scb_control_print(u_int regvalue, u_int *cur_col, u_int wrap)3548{3549return (ahd_print_register(SCB_CONTROL_parse_table, 7, "SCB_CONTROL",35500x192, regvalue, cur_col, wrap));3551}35523553static ahd_reg_parse_entry_t SCB_SCSIID_parse_table[] = {3554{ "OID", 0x0f, 0x0f },3555{ "TID", 0xf0, 0xf0 }3556};35573558int3559ahd_scb_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap)3560{3561return (ahd_print_register(SCB_SCSIID_parse_table, 2, "SCB_SCSIID",35620x193, regvalue, cur_col, wrap));3563}35643565static ahd_reg_parse_entry_t SCB_LUN_parse_table[] = {3566{ "LID", 0xff, 0xff }3567};35683569int3570ahd_scb_lun_print(u_int regvalue, u_int *cur_col, u_int wrap)3571{3572return (ahd_print_register(SCB_LUN_parse_table, 1, "SCB_LUN",35730x194, regvalue, cur_col, wrap));3574}35753576static ahd_reg_parse_entry_t SCB_TASK_ATTRIBUTE_parse_table[] = {3577{ "SCB_XFERLEN_ODD", 0x01, 0x01 }3578};35793580int3581ahd_scb_task_attribute_print(u_int regvalue, u_int *cur_col, u_int wrap)3582{3583return (ahd_print_register(SCB_TASK_ATTRIBUTE_parse_table, 1, "SCB_TASK_ATTRIBUTE",35840x195, regvalue, cur_col, wrap));3585}35863587static ahd_reg_parse_entry_t SCB_CDB_LEN_parse_table[] = {3588{ "SCB_CDB_LEN_PTR", 0x80, 0x80 }3589};35903591int3592ahd_scb_cdb_len_print(u_int regvalue, u_int *cur_col, u_int wrap)3593{3594return (ahd_print_register(SCB_CDB_LEN_parse_table, 1, "SCB_CDB_LEN",35950x196, regvalue, cur_col, wrap));3596}35973598int3599ahd_scb_task_management_print(u_int regvalue, u_int *cur_col, u_int wrap)3600{3601return (ahd_print_register(NULL, 0, "SCB_TASK_MANAGEMENT",36020x197, regvalue, cur_col, wrap));3603}36043605int3606ahd_scb_dataptr_print(u_int regvalue, u_int *cur_col, u_int wrap)3607{3608return (ahd_print_register(NULL, 0, "SCB_DATAPTR",36090x198, regvalue, cur_col, wrap));3610}36113612static ahd_reg_parse_entry_t SCB_DATACNT_parse_table[] = {3613{ "SG_HIGH_ADDR_BITS", 0x7f, 0x7f },3614{ "SG_LAST_SEG", 0x80, 0x80 }3615};36163617int3618ahd_scb_datacnt_print(u_int regvalue, u_int *cur_col, u_int wrap)3619{3620return (ahd_print_register(SCB_DATACNT_parse_table, 2, "SCB_DATACNT",36210x1a0, regvalue, cur_col, wrap));3622}36233624static ahd_reg_parse_entry_t SCB_SGPTR_parse_table[] = {3625{ "SG_LIST_NULL", 0x01, 0x01 },3626{ "SG_FULL_RESID", 0x02, 0x02 },3627{ "SG_STATUS_VALID", 0x04, 0x04 }3628};36293630int3631ahd_scb_sgptr_print(u_int regvalue, u_int *cur_col, u_int wrap)3632{3633return (ahd_print_register(SCB_SGPTR_parse_table, 3, "SCB_SGPTR",36340x1a4, regvalue, cur_col, wrap));3635}36363637int3638ahd_scb_busaddr_print(u_int regvalue, u_int *cur_col, u_int wrap)3639{3640return (ahd_print_register(NULL, 0, "SCB_BUSADDR",36410x1a8, regvalue, cur_col, wrap));3642}36433644int3645ahd_scb_next_print(u_int regvalue, u_int *cur_col, u_int wrap)3646{3647return (ahd_print_register(NULL, 0, "SCB_NEXT",36480x1ac, regvalue, cur_col, wrap));3649}36503651int3652ahd_scb_next2_print(u_int regvalue, u_int *cur_col, u_int wrap)3653{3654return (ahd_print_register(NULL, 0, "SCB_NEXT2",36550x1ae, regvalue, cur_col, wrap));3656}36573658int3659ahd_scb_spare_print(u_int regvalue, u_int *cur_col, u_int wrap)3660{3661return (ahd_print_register(NULL, 0, "SCB_SPARE",36620x1b0, regvalue, cur_col, wrap));3663}36643665int3666ahd_scb_disconnected_lists_print(u_int regvalue, u_int *cur_col, u_int wrap)3667{3668return (ahd_print_register(NULL, 0, "SCB_DISCONNECTED_LISTS",36690x1b8, regvalue, cur_col, wrap));3670}367136723673