1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * DO NOT EDIT - This file is automatically generated 3*4882a593Smuzhiyun * from the following source files: 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * $Id: //depot/aic7xxx/aic7xxx/aic79xx.seq#120 $ 6*4882a593Smuzhiyun * $Id: //depot/aic7xxx/aic7xxx/aic79xx.reg#77 $ 7*4882a593Smuzhiyun */ 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun#include "aic79xx_osm.h" 10*4882a593Smuzhiyun 11*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t INTSTAT_parse_table[] = { 12*4882a593Smuzhiyun { "SPLTINT", 0x01, 0x01 }, 13*4882a593Smuzhiyun { "CMDCMPLT", 0x02, 0x02 }, 14*4882a593Smuzhiyun { "SEQINT", 0x04, 0x04 }, 15*4882a593Smuzhiyun { "SCSIINT", 0x08, 0x08 }, 16*4882a593Smuzhiyun { "PCIINT", 0x10, 0x10 }, 17*4882a593Smuzhiyun { "SWTMINT", 0x20, 0x20 }, 18*4882a593Smuzhiyun { "BRKADRINT", 0x40, 0x40 }, 19*4882a593Smuzhiyun { "HWERRINT", 0x80, 0x80 }, 20*4882a593Smuzhiyun { "INT_PEND", 0xff, 0xff } 21*4882a593Smuzhiyun}; 22*4882a593Smuzhiyun 23*4882a593Smuzhiyunint 24*4882a593Smuzhiyunahd_intstat_print(u_int regvalue, u_int *cur_col, u_int wrap) 25*4882a593Smuzhiyun{ 26*4882a593Smuzhiyun return (ahd_print_register(INTSTAT_parse_table, 9, "INTSTAT", 27*4882a593Smuzhiyun 0x01, regvalue, cur_col, wrap)); 28*4882a593Smuzhiyun} 29*4882a593Smuzhiyun 30*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t HS_MAILBOX_parse_table[] = { 31*4882a593Smuzhiyun { "ENINT_COALESCE", 0x40, 0x40 }, 32*4882a593Smuzhiyun { "HOST_TQINPOS", 0x80, 0x80 } 33*4882a593Smuzhiyun}; 34*4882a593Smuzhiyun 35*4882a593Smuzhiyunint 36*4882a593Smuzhiyunahd_hs_mailbox_print(u_int regvalue, u_int *cur_col, u_int wrap) 37*4882a593Smuzhiyun{ 38*4882a593Smuzhiyun return (ahd_print_register(HS_MAILBOX_parse_table, 2, "HS_MAILBOX", 39*4882a593Smuzhiyun 0x0b, regvalue, cur_col, wrap)); 40*4882a593Smuzhiyun} 41*4882a593Smuzhiyun 42*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SEQINTSTAT_parse_table[] = { 43*4882a593Smuzhiyun { "SEQ_SPLTINT", 0x01, 0x01 }, 44*4882a593Smuzhiyun { "SEQ_PCIINT", 0x02, 0x02 }, 45*4882a593Smuzhiyun { "SEQ_SCSIINT", 0x04, 0x04 }, 46*4882a593Smuzhiyun { "SEQ_SEQINT", 0x08, 0x08 }, 47*4882a593Smuzhiyun { "SEQ_SWTMRTO", 0x10, 0x10 } 48*4882a593Smuzhiyun}; 49*4882a593Smuzhiyun 50*4882a593Smuzhiyunint 51*4882a593Smuzhiyunahd_seqintstat_print(u_int regvalue, u_int *cur_col, u_int wrap) 52*4882a593Smuzhiyun{ 53*4882a593Smuzhiyun return (ahd_print_register(SEQINTSTAT_parse_table, 5, "SEQINTSTAT", 54*4882a593Smuzhiyun 0x0c, regvalue, cur_col, wrap)); 55*4882a593Smuzhiyun} 56*4882a593Smuzhiyun 57*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t INTCTL_parse_table[] = { 58*4882a593Smuzhiyun { "SPLTINTEN", 0x01, 0x01 }, 59*4882a593Smuzhiyun { "SEQINTEN", 0x02, 0x02 }, 60*4882a593Smuzhiyun { "SCSIINTEN", 0x04, 0x04 }, 61*4882a593Smuzhiyun { "PCIINTEN", 0x08, 0x08 }, 62*4882a593Smuzhiyun { "AUTOCLRCMDINT", 0x10, 0x10 }, 63*4882a593Smuzhiyun { "SWTIMER_START", 0x20, 0x20 }, 64*4882a593Smuzhiyun { "SWTMINTEN", 0x40, 0x40 }, 65*4882a593Smuzhiyun { "SWTMINTMASK", 0x80, 0x80 } 66*4882a593Smuzhiyun}; 67*4882a593Smuzhiyun 68*4882a593Smuzhiyunint 69*4882a593Smuzhiyunahd_intctl_print(u_int regvalue, u_int *cur_col, u_int wrap) 70*4882a593Smuzhiyun{ 71*4882a593Smuzhiyun return (ahd_print_register(INTCTL_parse_table, 8, "INTCTL", 72*4882a593Smuzhiyun 0x18, regvalue, cur_col, wrap)); 73*4882a593Smuzhiyun} 74*4882a593Smuzhiyun 75*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t DFCNTRL_parse_table[] = { 76*4882a593Smuzhiyun { "DIRECTIONEN", 0x01, 0x01 }, 77*4882a593Smuzhiyun { "FIFOFLUSH", 0x02, 0x02 }, 78*4882a593Smuzhiyun { "FIFOFLUSHACK", 0x02, 0x02 }, 79*4882a593Smuzhiyun { "DIRECTION", 0x04, 0x04 }, 80*4882a593Smuzhiyun { "DIRECTIONACK", 0x04, 0x04 }, 81*4882a593Smuzhiyun { "HDMAEN", 0x08, 0x08 }, 82*4882a593Smuzhiyun { "HDMAENACK", 0x08, 0x08 }, 83*4882a593Smuzhiyun { "SCSIEN", 0x20, 0x20 }, 84*4882a593Smuzhiyun { "SCSIENACK", 0x20, 0x20 }, 85*4882a593Smuzhiyun { "SCSIENWRDIS", 0x40, 0x40 }, 86*4882a593Smuzhiyun { "PRELOADEN", 0x80, 0x80 } 87*4882a593Smuzhiyun}; 88*4882a593Smuzhiyun 89*4882a593Smuzhiyunint 90*4882a593Smuzhiyunahd_dfcntrl_print(u_int regvalue, u_int *cur_col, u_int wrap) 91*4882a593Smuzhiyun{ 92*4882a593Smuzhiyun return (ahd_print_register(DFCNTRL_parse_table, 11, "DFCNTRL", 93*4882a593Smuzhiyun 0x19, regvalue, cur_col, wrap)); 94*4882a593Smuzhiyun} 95*4882a593Smuzhiyun 96*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t DFSTATUS_parse_table[] = { 97*4882a593Smuzhiyun { "FIFOEMP", 0x01, 0x01 }, 98*4882a593Smuzhiyun { "FIFOFULL", 0x02, 0x02 }, 99*4882a593Smuzhiyun { "DFTHRESH", 0x04, 0x04 }, 100*4882a593Smuzhiyun { "HDONE", 0x08, 0x08 }, 101*4882a593Smuzhiyun { "MREQPEND", 0x10, 0x10 }, 102*4882a593Smuzhiyun { "PKT_PRELOAD_AVAIL", 0x40, 0x40 }, 103*4882a593Smuzhiyun { "PRELOAD_AVAIL", 0x80, 0x80 } 104*4882a593Smuzhiyun}; 105*4882a593Smuzhiyun 106*4882a593Smuzhiyunint 107*4882a593Smuzhiyunahd_dfstatus_print(u_int regvalue, u_int *cur_col, u_int wrap) 108*4882a593Smuzhiyun{ 109*4882a593Smuzhiyun return (ahd_print_register(DFSTATUS_parse_table, 7, "DFSTATUS", 110*4882a593Smuzhiyun 0x1a, regvalue, cur_col, wrap)); 111*4882a593Smuzhiyun} 112*4882a593Smuzhiyun 113*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SG_CACHE_SHADOW_parse_table[] = { 114*4882a593Smuzhiyun { "LAST_SEG_DONE", 0x01, 0x01 }, 115*4882a593Smuzhiyun { "LAST_SEG", 0x02, 0x02 }, 116*4882a593Smuzhiyun { "ODD_SEG", 0x04, 0x04 }, 117*4882a593Smuzhiyun { "SG_ADDR_MASK", 0xf8, 0xf8 } 118*4882a593Smuzhiyun}; 119*4882a593Smuzhiyun 120*4882a593Smuzhiyunint 121*4882a593Smuzhiyunahd_sg_cache_shadow_print(u_int regvalue, u_int *cur_col, u_int wrap) 122*4882a593Smuzhiyun{ 123*4882a593Smuzhiyun return (ahd_print_register(SG_CACHE_SHADOW_parse_table, 4, "SG_CACHE_SHADOW", 124*4882a593Smuzhiyun 0x1b, regvalue, cur_col, wrap)); 125*4882a593Smuzhiyun} 126*4882a593Smuzhiyun 127*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SCSISEQ0_parse_table[] = { 128*4882a593Smuzhiyun { "SCSIRSTO", 0x01, 0x01 }, 129*4882a593Smuzhiyun { "FORCEBUSFREE", 0x10, 0x10 }, 130*4882a593Smuzhiyun { "ENARBO", 0x20, 0x20 }, 131*4882a593Smuzhiyun { "ENSELO", 0x40, 0x40 }, 132*4882a593Smuzhiyun { "TEMODEO", 0x80, 0x80 } 133*4882a593Smuzhiyun}; 134*4882a593Smuzhiyun 135*4882a593Smuzhiyunint 136*4882a593Smuzhiyunahd_scsiseq0_print(u_int regvalue, u_int *cur_col, u_int wrap) 137*4882a593Smuzhiyun{ 138*4882a593Smuzhiyun return (ahd_print_register(SCSISEQ0_parse_table, 5, "SCSISEQ0", 139*4882a593Smuzhiyun 0x3a, regvalue, cur_col, wrap)); 140*4882a593Smuzhiyun} 141*4882a593Smuzhiyun 142*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SCSISEQ1_parse_table[] = { 143*4882a593Smuzhiyun { "ALTSTIM", 0x01, 0x01 }, 144*4882a593Smuzhiyun { "ENAUTOATNP", 0x02, 0x02 }, 145*4882a593Smuzhiyun { "MANUALP", 0x0c, 0x0c }, 146*4882a593Smuzhiyun { "ENRSELI", 0x10, 0x10 }, 147*4882a593Smuzhiyun { "ENSELI", 0x20, 0x20 }, 148*4882a593Smuzhiyun { "MANUALCTL", 0x40, 0x40 } 149*4882a593Smuzhiyun}; 150*4882a593Smuzhiyun 151*4882a593Smuzhiyunint 152*4882a593Smuzhiyunahd_scsiseq1_print(u_int regvalue, u_int *cur_col, u_int wrap) 153*4882a593Smuzhiyun{ 154*4882a593Smuzhiyun return (ahd_print_register(SCSISEQ1_parse_table, 6, "SCSISEQ1", 155*4882a593Smuzhiyun 0x3b, regvalue, cur_col, wrap)); 156*4882a593Smuzhiyun} 157*4882a593Smuzhiyun 158*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t DFFSTAT_parse_table[] = { 159*4882a593Smuzhiyun { "CURRFIFO_0", 0x00, 0x03 }, 160*4882a593Smuzhiyun { "CURRFIFO_1", 0x01, 0x03 }, 161*4882a593Smuzhiyun { "CURRFIFO_NONE", 0x03, 0x03 }, 162*4882a593Smuzhiyun { "FIFO0FREE", 0x10, 0x10 }, 163*4882a593Smuzhiyun { "FIFO1FREE", 0x20, 0x20 }, 164*4882a593Smuzhiyun { "CURRFIFO", 0x03, 0x03 } 165*4882a593Smuzhiyun}; 166*4882a593Smuzhiyun 167*4882a593Smuzhiyunint 168*4882a593Smuzhiyunahd_dffstat_print(u_int regvalue, u_int *cur_col, u_int wrap) 169*4882a593Smuzhiyun{ 170*4882a593Smuzhiyun return (ahd_print_register(DFFSTAT_parse_table, 6, "DFFSTAT", 171*4882a593Smuzhiyun 0x3f, regvalue, cur_col, wrap)); 172*4882a593Smuzhiyun} 173*4882a593Smuzhiyun 174*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SCSISIGI_parse_table[] = { 175*4882a593Smuzhiyun { "P_DATAOUT", 0x00, 0xe0 }, 176*4882a593Smuzhiyun { "P_DATAOUT_DT", 0x20, 0xe0 }, 177*4882a593Smuzhiyun { "P_DATAIN", 0x40, 0xe0 }, 178*4882a593Smuzhiyun { "P_DATAIN_DT", 0x60, 0xe0 }, 179*4882a593Smuzhiyun { "P_COMMAND", 0x80, 0xe0 }, 180*4882a593Smuzhiyun { "P_MESGOUT", 0xa0, 0xe0 }, 181*4882a593Smuzhiyun { "P_STATUS", 0xc0, 0xe0 }, 182*4882a593Smuzhiyun { "P_MESGIN", 0xe0, 0xe0 }, 183*4882a593Smuzhiyun { "ACKI", 0x01, 0x01 }, 184*4882a593Smuzhiyun { "REQI", 0x02, 0x02 }, 185*4882a593Smuzhiyun { "BSYI", 0x04, 0x04 }, 186*4882a593Smuzhiyun { "SELI", 0x08, 0x08 }, 187*4882a593Smuzhiyun { "ATNI", 0x10, 0x10 }, 188*4882a593Smuzhiyun { "MSGI", 0x20, 0x20 }, 189*4882a593Smuzhiyun { "IOI", 0x40, 0x40 }, 190*4882a593Smuzhiyun { "CDI", 0x80, 0x80 }, 191*4882a593Smuzhiyun { "PHASE_MASK", 0xe0, 0xe0 } 192*4882a593Smuzhiyun}; 193*4882a593Smuzhiyun 194*4882a593Smuzhiyunint 195*4882a593Smuzhiyunahd_scsisigi_print(u_int regvalue, u_int *cur_col, u_int wrap) 196*4882a593Smuzhiyun{ 197*4882a593Smuzhiyun return (ahd_print_register(SCSISIGI_parse_table, 17, "SCSISIGI", 198*4882a593Smuzhiyun 0x41, regvalue, cur_col, wrap)); 199*4882a593Smuzhiyun} 200*4882a593Smuzhiyun 201*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SCSIPHASE_parse_table[] = { 202*4882a593Smuzhiyun { "DATA_OUT_PHASE", 0x01, 0x03 }, 203*4882a593Smuzhiyun { "DATA_IN_PHASE", 0x02, 0x03 }, 204*4882a593Smuzhiyun { "DATA_PHASE_MASK", 0x03, 0x03 }, 205*4882a593Smuzhiyun { "MSG_OUT_PHASE", 0x04, 0x04 }, 206*4882a593Smuzhiyun { "MSG_IN_PHASE", 0x08, 0x08 }, 207*4882a593Smuzhiyun { "COMMAND_PHASE", 0x10, 0x10 }, 208*4882a593Smuzhiyun { "STATUS_PHASE", 0x20, 0x20 } 209*4882a593Smuzhiyun}; 210*4882a593Smuzhiyun 211*4882a593Smuzhiyunint 212*4882a593Smuzhiyunahd_scsiphase_print(u_int regvalue, u_int *cur_col, u_int wrap) 213*4882a593Smuzhiyun{ 214*4882a593Smuzhiyun return (ahd_print_register(SCSIPHASE_parse_table, 7, "SCSIPHASE", 215*4882a593Smuzhiyun 0x42, regvalue, cur_col, wrap)); 216*4882a593Smuzhiyun} 217*4882a593Smuzhiyun 218*4882a593Smuzhiyunint 219*4882a593Smuzhiyunahd_scsibus_print(u_int regvalue, u_int *cur_col, u_int wrap) 220*4882a593Smuzhiyun{ 221*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "SCSIBUS", 222*4882a593Smuzhiyun 0x46, regvalue, cur_col, wrap)); 223*4882a593Smuzhiyun} 224*4882a593Smuzhiyun 225*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SELID_parse_table[] = { 226*4882a593Smuzhiyun { "ONEBIT", 0x08, 0x08 }, 227*4882a593Smuzhiyun { "SELID_MASK", 0xf0, 0xf0 } 228*4882a593Smuzhiyun}; 229*4882a593Smuzhiyun 230*4882a593Smuzhiyunint 231*4882a593Smuzhiyunahd_selid_print(u_int regvalue, u_int *cur_col, u_int wrap) 232*4882a593Smuzhiyun{ 233*4882a593Smuzhiyun return (ahd_print_register(SELID_parse_table, 2, "SELID", 234*4882a593Smuzhiyun 0x49, regvalue, cur_col, wrap)); 235*4882a593Smuzhiyun} 236*4882a593Smuzhiyun 237*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SIMODE0_parse_table[] = { 238*4882a593Smuzhiyun { "ENARBDO", 0x01, 0x01 }, 239*4882a593Smuzhiyun { "ENSPIORDY", 0x02, 0x02 }, 240*4882a593Smuzhiyun { "ENOVERRUN", 0x04, 0x04 }, 241*4882a593Smuzhiyun { "ENIOERR", 0x08, 0x08 }, 242*4882a593Smuzhiyun { "ENSELINGO", 0x10, 0x10 }, 243*4882a593Smuzhiyun { "ENSELDI", 0x20, 0x20 }, 244*4882a593Smuzhiyun { "ENSELDO", 0x40, 0x40 } 245*4882a593Smuzhiyun}; 246*4882a593Smuzhiyun 247*4882a593Smuzhiyunint 248*4882a593Smuzhiyunahd_simode0_print(u_int regvalue, u_int *cur_col, u_int wrap) 249*4882a593Smuzhiyun{ 250*4882a593Smuzhiyun return (ahd_print_register(SIMODE0_parse_table, 7, "SIMODE0", 251*4882a593Smuzhiyun 0x4b, regvalue, cur_col, wrap)); 252*4882a593Smuzhiyun} 253*4882a593Smuzhiyun 254*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SSTAT0_parse_table[] = { 255*4882a593Smuzhiyun { "ARBDO", 0x01, 0x01 }, 256*4882a593Smuzhiyun { "SPIORDY", 0x02, 0x02 }, 257*4882a593Smuzhiyun { "OVERRUN", 0x04, 0x04 }, 258*4882a593Smuzhiyun { "IOERR", 0x08, 0x08 }, 259*4882a593Smuzhiyun { "SELINGO", 0x10, 0x10 }, 260*4882a593Smuzhiyun { "SELDI", 0x20, 0x20 }, 261*4882a593Smuzhiyun { "SELDO", 0x40, 0x40 }, 262*4882a593Smuzhiyun { "TARGET", 0x80, 0x80 } 263*4882a593Smuzhiyun}; 264*4882a593Smuzhiyun 265*4882a593Smuzhiyunint 266*4882a593Smuzhiyunahd_sstat0_print(u_int regvalue, u_int *cur_col, u_int wrap) 267*4882a593Smuzhiyun{ 268*4882a593Smuzhiyun return (ahd_print_register(SSTAT0_parse_table, 8, "SSTAT0", 269*4882a593Smuzhiyun 0x4b, regvalue, cur_col, wrap)); 270*4882a593Smuzhiyun} 271*4882a593Smuzhiyun 272*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SSTAT1_parse_table[] = { 273*4882a593Smuzhiyun { "REQINIT", 0x01, 0x01 }, 274*4882a593Smuzhiyun { "STRB2FAST", 0x02, 0x02 }, 275*4882a593Smuzhiyun { "SCSIPERR", 0x04, 0x04 }, 276*4882a593Smuzhiyun { "BUSFREE", 0x08, 0x08 }, 277*4882a593Smuzhiyun { "PHASEMIS", 0x10, 0x10 }, 278*4882a593Smuzhiyun { "SCSIRSTI", 0x20, 0x20 }, 279*4882a593Smuzhiyun { "ATNTARG", 0x40, 0x40 }, 280*4882a593Smuzhiyun { "SELTO", 0x80, 0x80 } 281*4882a593Smuzhiyun}; 282*4882a593Smuzhiyun 283*4882a593Smuzhiyunint 284*4882a593Smuzhiyunahd_sstat1_print(u_int regvalue, u_int *cur_col, u_int wrap) 285*4882a593Smuzhiyun{ 286*4882a593Smuzhiyun return (ahd_print_register(SSTAT1_parse_table, 8, "SSTAT1", 287*4882a593Smuzhiyun 0x4c, regvalue, cur_col, wrap)); 288*4882a593Smuzhiyun} 289*4882a593Smuzhiyun 290*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SSTAT2_parse_table[] = { 291*4882a593Smuzhiyun { "BUSFREE_LQO", 0x40, 0xc0 }, 292*4882a593Smuzhiyun { "BUSFREE_DFF0", 0x80, 0xc0 }, 293*4882a593Smuzhiyun { "BUSFREE_DFF1", 0xc0, 0xc0 }, 294*4882a593Smuzhiyun { "DMADONE", 0x01, 0x01 }, 295*4882a593Smuzhiyun { "SDONE", 0x02, 0x02 }, 296*4882a593Smuzhiyun { "WIDE_RES", 0x04, 0x04 }, 297*4882a593Smuzhiyun { "BSYX", 0x08, 0x08 }, 298*4882a593Smuzhiyun { "EXP_ACTIVE", 0x10, 0x10 }, 299*4882a593Smuzhiyun { "NONPACKREQ", 0x20, 0x20 }, 300*4882a593Smuzhiyun { "BUSFREETIME", 0xc0, 0xc0 } 301*4882a593Smuzhiyun}; 302*4882a593Smuzhiyun 303*4882a593Smuzhiyunint 304*4882a593Smuzhiyunahd_sstat2_print(u_int regvalue, u_int *cur_col, u_int wrap) 305*4882a593Smuzhiyun{ 306*4882a593Smuzhiyun return (ahd_print_register(SSTAT2_parse_table, 10, "SSTAT2", 307*4882a593Smuzhiyun 0x4d, regvalue, cur_col, wrap)); 308*4882a593Smuzhiyun} 309*4882a593Smuzhiyun 310*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t PERRDIAG_parse_table[] = { 311*4882a593Smuzhiyun { "DTERR", 0x01, 0x01 }, 312*4882a593Smuzhiyun { "DGFORMERR", 0x02, 0x02 }, 313*4882a593Smuzhiyun { "CRCERR", 0x04, 0x04 }, 314*4882a593Smuzhiyun { "AIPERR", 0x08, 0x08 }, 315*4882a593Smuzhiyun { "PARITYERR", 0x10, 0x10 }, 316*4882a593Smuzhiyun { "PREVPHASE", 0x20, 0x20 }, 317*4882a593Smuzhiyun { "HIPERR", 0x40, 0x40 }, 318*4882a593Smuzhiyun { "HIZERO", 0x80, 0x80 } 319*4882a593Smuzhiyun}; 320*4882a593Smuzhiyun 321*4882a593Smuzhiyunint 322*4882a593Smuzhiyunahd_perrdiag_print(u_int regvalue, u_int *cur_col, u_int wrap) 323*4882a593Smuzhiyun{ 324*4882a593Smuzhiyun return (ahd_print_register(PERRDIAG_parse_table, 8, "PERRDIAG", 325*4882a593Smuzhiyun 0x4e, regvalue, cur_col, wrap)); 326*4882a593Smuzhiyun} 327*4882a593Smuzhiyun 328*4882a593Smuzhiyunint 329*4882a593Smuzhiyunahd_soffcnt_print(u_int regvalue, u_int *cur_col, u_int wrap) 330*4882a593Smuzhiyun{ 331*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "SOFFCNT", 332*4882a593Smuzhiyun 0x4f, regvalue, cur_col, wrap)); 333*4882a593Smuzhiyun} 334*4882a593Smuzhiyun 335*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t LQISTAT0_parse_table[] = { 336*4882a593Smuzhiyun { "LQIATNCMD", 0x01, 0x01 }, 337*4882a593Smuzhiyun { "LQIATNLQ", 0x02, 0x02 }, 338*4882a593Smuzhiyun { "LQIBADLQT", 0x04, 0x04 }, 339*4882a593Smuzhiyun { "LQICRCT2", 0x08, 0x08 }, 340*4882a593Smuzhiyun { "LQICRCT1", 0x10, 0x10 }, 341*4882a593Smuzhiyun { "LQIATNQAS", 0x20, 0x20 } 342*4882a593Smuzhiyun}; 343*4882a593Smuzhiyun 344*4882a593Smuzhiyunint 345*4882a593Smuzhiyunahd_lqistat0_print(u_int regvalue, u_int *cur_col, u_int wrap) 346*4882a593Smuzhiyun{ 347*4882a593Smuzhiyun return (ahd_print_register(LQISTAT0_parse_table, 6, "LQISTAT0", 348*4882a593Smuzhiyun 0x50, regvalue, cur_col, wrap)); 349*4882a593Smuzhiyun} 350*4882a593Smuzhiyun 351*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t LQISTAT1_parse_table[] = { 352*4882a593Smuzhiyun { "LQIOVERI_NLQ", 0x01, 0x01 }, 353*4882a593Smuzhiyun { "LQIOVERI_LQ", 0x02, 0x02 }, 354*4882a593Smuzhiyun { "LQIBADLQI", 0x04, 0x04 }, 355*4882a593Smuzhiyun { "LQICRCI_NLQ", 0x08, 0x08 }, 356*4882a593Smuzhiyun { "LQICRCI_LQ", 0x10, 0x10 }, 357*4882a593Smuzhiyun { "LQIABORT", 0x20, 0x20 }, 358*4882a593Smuzhiyun { "LQIPHASE_NLQ", 0x40, 0x40 }, 359*4882a593Smuzhiyun { "LQIPHASE_LQ", 0x80, 0x80 } 360*4882a593Smuzhiyun}; 361*4882a593Smuzhiyun 362*4882a593Smuzhiyunint 363*4882a593Smuzhiyunahd_lqistat1_print(u_int regvalue, u_int *cur_col, u_int wrap) 364*4882a593Smuzhiyun{ 365*4882a593Smuzhiyun return (ahd_print_register(LQISTAT1_parse_table, 8, "LQISTAT1", 366*4882a593Smuzhiyun 0x51, regvalue, cur_col, wrap)); 367*4882a593Smuzhiyun} 368*4882a593Smuzhiyun 369*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t LQISTAT2_parse_table[] = { 370*4882a593Smuzhiyun { "LQIGSAVAIL", 0x01, 0x01 }, 371*4882a593Smuzhiyun { "LQISTOPCMD", 0x02, 0x02 }, 372*4882a593Smuzhiyun { "LQISTOPLQ", 0x04, 0x04 }, 373*4882a593Smuzhiyun { "LQISTOPPKT", 0x08, 0x08 }, 374*4882a593Smuzhiyun { "LQIWAITFIFO", 0x10, 0x10 }, 375*4882a593Smuzhiyun { "LQIWORKONLQ", 0x20, 0x20 }, 376*4882a593Smuzhiyun { "LQIPHASE_OUTPKT", 0x40, 0x40 }, 377*4882a593Smuzhiyun { "PACKETIZED", 0x80, 0x80 } 378*4882a593Smuzhiyun}; 379*4882a593Smuzhiyun 380*4882a593Smuzhiyunint 381*4882a593Smuzhiyunahd_lqistat2_print(u_int regvalue, u_int *cur_col, u_int wrap) 382*4882a593Smuzhiyun{ 383*4882a593Smuzhiyun return (ahd_print_register(LQISTAT2_parse_table, 8, "LQISTAT2", 384*4882a593Smuzhiyun 0x52, regvalue, cur_col, wrap)); 385*4882a593Smuzhiyun} 386*4882a593Smuzhiyun 387*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SSTAT3_parse_table[] = { 388*4882a593Smuzhiyun { "OSRAMPERR", 0x01, 0x01 }, 389*4882a593Smuzhiyun { "NTRAMPERR", 0x02, 0x02 } 390*4882a593Smuzhiyun}; 391*4882a593Smuzhiyun 392*4882a593Smuzhiyunint 393*4882a593Smuzhiyunahd_sstat3_print(u_int regvalue, u_int *cur_col, u_int wrap) 394*4882a593Smuzhiyun{ 395*4882a593Smuzhiyun return (ahd_print_register(SSTAT3_parse_table, 2, "SSTAT3", 396*4882a593Smuzhiyun 0x53, regvalue, cur_col, wrap)); 397*4882a593Smuzhiyun} 398*4882a593Smuzhiyun 399*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t LQOSTAT0_parse_table[] = { 400*4882a593Smuzhiyun { "LQOTCRC", 0x01, 0x01 }, 401*4882a593Smuzhiyun { "LQOATNPKT", 0x02, 0x02 }, 402*4882a593Smuzhiyun { "LQOATNLQ", 0x04, 0x04 }, 403*4882a593Smuzhiyun { "LQOSTOPT2", 0x08, 0x08 }, 404*4882a593Smuzhiyun { "LQOTARGSCBPERR", 0x10, 0x10 } 405*4882a593Smuzhiyun}; 406*4882a593Smuzhiyun 407*4882a593Smuzhiyunint 408*4882a593Smuzhiyunahd_lqostat0_print(u_int regvalue, u_int *cur_col, u_int wrap) 409*4882a593Smuzhiyun{ 410*4882a593Smuzhiyun return (ahd_print_register(LQOSTAT0_parse_table, 5, "LQOSTAT0", 411*4882a593Smuzhiyun 0x54, regvalue, cur_col, wrap)); 412*4882a593Smuzhiyun} 413*4882a593Smuzhiyun 414*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t LQOSTAT1_parse_table[] = { 415*4882a593Smuzhiyun { "LQOPHACHGINPKT", 0x01, 0x01 }, 416*4882a593Smuzhiyun { "LQOBUSFREE", 0x02, 0x02 }, 417*4882a593Smuzhiyun { "LQOBADQAS", 0x04, 0x04 }, 418*4882a593Smuzhiyun { "LQOSTOPI2", 0x08, 0x08 }, 419*4882a593Smuzhiyun { "LQOINITSCBPERR", 0x10, 0x10 } 420*4882a593Smuzhiyun}; 421*4882a593Smuzhiyun 422*4882a593Smuzhiyunint 423*4882a593Smuzhiyunahd_lqostat1_print(u_int regvalue, u_int *cur_col, u_int wrap) 424*4882a593Smuzhiyun{ 425*4882a593Smuzhiyun return (ahd_print_register(LQOSTAT1_parse_table, 5, "LQOSTAT1", 426*4882a593Smuzhiyun 0x55, regvalue, cur_col, wrap)); 427*4882a593Smuzhiyun} 428*4882a593Smuzhiyun 429*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t LQOSTAT2_parse_table[] = { 430*4882a593Smuzhiyun { "LQOSTOP0", 0x01, 0x01 }, 431*4882a593Smuzhiyun { "LQOPHACHGOUTPKT", 0x02, 0x02 }, 432*4882a593Smuzhiyun { "LQOWAITFIFO", 0x10, 0x10 }, 433*4882a593Smuzhiyun { "LQOPKT", 0xe0, 0xe0 } 434*4882a593Smuzhiyun}; 435*4882a593Smuzhiyun 436*4882a593Smuzhiyunint 437*4882a593Smuzhiyunahd_lqostat2_print(u_int regvalue, u_int *cur_col, u_int wrap) 438*4882a593Smuzhiyun{ 439*4882a593Smuzhiyun return (ahd_print_register(LQOSTAT2_parse_table, 4, "LQOSTAT2", 440*4882a593Smuzhiyun 0x56, regvalue, cur_col, wrap)); 441*4882a593Smuzhiyun} 442*4882a593Smuzhiyun 443*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SIMODE1_parse_table[] = { 444*4882a593Smuzhiyun { "ENREQINIT", 0x01, 0x01 }, 445*4882a593Smuzhiyun { "ENSTRB2FAST", 0x02, 0x02 }, 446*4882a593Smuzhiyun { "ENSCSIPERR", 0x04, 0x04 }, 447*4882a593Smuzhiyun { "ENBUSFREE", 0x08, 0x08 }, 448*4882a593Smuzhiyun { "ENPHASEMIS", 0x10, 0x10 }, 449*4882a593Smuzhiyun { "ENSCSIRST", 0x20, 0x20 }, 450*4882a593Smuzhiyun { "ENATNTARG", 0x40, 0x40 }, 451*4882a593Smuzhiyun { "ENSELTIMO", 0x80, 0x80 } 452*4882a593Smuzhiyun}; 453*4882a593Smuzhiyun 454*4882a593Smuzhiyunint 455*4882a593Smuzhiyunahd_simode1_print(u_int regvalue, u_int *cur_col, u_int wrap) 456*4882a593Smuzhiyun{ 457*4882a593Smuzhiyun return (ahd_print_register(SIMODE1_parse_table, 8, "SIMODE1", 458*4882a593Smuzhiyun 0x57, regvalue, cur_col, wrap)); 459*4882a593Smuzhiyun} 460*4882a593Smuzhiyun 461*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t DFFSXFRCTL_parse_table[] = { 462*4882a593Smuzhiyun { "RSTCHN", 0x01, 0x01 }, 463*4882a593Smuzhiyun { "CLRCHN", 0x02, 0x02 }, 464*4882a593Smuzhiyun { "CLRSHCNT", 0x04, 0x04 }, 465*4882a593Smuzhiyun { "DFFBITBUCKET", 0x08, 0x08 } 466*4882a593Smuzhiyun}; 467*4882a593Smuzhiyun 468*4882a593Smuzhiyunint 469*4882a593Smuzhiyunahd_dffsxfrctl_print(u_int regvalue, u_int *cur_col, u_int wrap) 470*4882a593Smuzhiyun{ 471*4882a593Smuzhiyun return (ahd_print_register(DFFSXFRCTL_parse_table, 4, "DFFSXFRCTL", 472*4882a593Smuzhiyun 0x5a, regvalue, cur_col, wrap)); 473*4882a593Smuzhiyun} 474*4882a593Smuzhiyun 475*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SEQINTSRC_parse_table[] = { 476*4882a593Smuzhiyun { "CFG4TCMD", 0x01, 0x01 }, 477*4882a593Smuzhiyun { "CFG4ICMD", 0x02, 0x02 }, 478*4882a593Smuzhiyun { "CFG4TSTAT", 0x04, 0x04 }, 479*4882a593Smuzhiyun { "CFG4ISTAT", 0x08, 0x08 }, 480*4882a593Smuzhiyun { "CFG4DATA", 0x10, 0x10 }, 481*4882a593Smuzhiyun { "SAVEPTRS", 0x20, 0x20 }, 482*4882a593Smuzhiyun { "CTXTDONE", 0x40, 0x40 } 483*4882a593Smuzhiyun}; 484*4882a593Smuzhiyun 485*4882a593Smuzhiyunint 486*4882a593Smuzhiyunahd_seqintsrc_print(u_int regvalue, u_int *cur_col, u_int wrap) 487*4882a593Smuzhiyun{ 488*4882a593Smuzhiyun return (ahd_print_register(SEQINTSRC_parse_table, 7, "SEQINTSRC", 489*4882a593Smuzhiyun 0x5b, regvalue, cur_col, wrap)); 490*4882a593Smuzhiyun} 491*4882a593Smuzhiyun 492*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SEQIMODE_parse_table[] = { 493*4882a593Smuzhiyun { "ENCFG4TCMD", 0x01, 0x01 }, 494*4882a593Smuzhiyun { "ENCFG4ICMD", 0x02, 0x02 }, 495*4882a593Smuzhiyun { "ENCFG4TSTAT", 0x04, 0x04 }, 496*4882a593Smuzhiyun { "ENCFG4ISTAT", 0x08, 0x08 }, 497*4882a593Smuzhiyun { "ENCFG4DATA", 0x10, 0x10 }, 498*4882a593Smuzhiyun { "ENSAVEPTRS", 0x20, 0x20 }, 499*4882a593Smuzhiyun { "ENCTXTDONE", 0x40, 0x40 } 500*4882a593Smuzhiyun}; 501*4882a593Smuzhiyun 502*4882a593Smuzhiyunint 503*4882a593Smuzhiyunahd_seqimode_print(u_int regvalue, u_int *cur_col, u_int wrap) 504*4882a593Smuzhiyun{ 505*4882a593Smuzhiyun return (ahd_print_register(SEQIMODE_parse_table, 7, "SEQIMODE", 506*4882a593Smuzhiyun 0x5c, regvalue, cur_col, wrap)); 507*4882a593Smuzhiyun} 508*4882a593Smuzhiyun 509*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t MDFFSTAT_parse_table[] = { 510*4882a593Smuzhiyun { "FIFOFREE", 0x01, 0x01 }, 511*4882a593Smuzhiyun { "DATAINFIFO", 0x02, 0x02 }, 512*4882a593Smuzhiyun { "DLZERO", 0x04, 0x04 }, 513*4882a593Smuzhiyun { "SHVALID", 0x08, 0x08 }, 514*4882a593Smuzhiyun { "LASTSDONE", 0x10, 0x10 }, 515*4882a593Smuzhiyun { "SHCNTMINUS1", 0x20, 0x20 }, 516*4882a593Smuzhiyun { "SHCNTNEGATIVE", 0x40, 0x40 } 517*4882a593Smuzhiyun}; 518*4882a593Smuzhiyun 519*4882a593Smuzhiyunint 520*4882a593Smuzhiyunahd_mdffstat_print(u_int regvalue, u_int *cur_col, u_int wrap) 521*4882a593Smuzhiyun{ 522*4882a593Smuzhiyun return (ahd_print_register(MDFFSTAT_parse_table, 7, "MDFFSTAT", 523*4882a593Smuzhiyun 0x5d, regvalue, cur_col, wrap)); 524*4882a593Smuzhiyun} 525*4882a593Smuzhiyun 526*4882a593Smuzhiyunint 527*4882a593Smuzhiyunahd_seloid_print(u_int regvalue, u_int *cur_col, u_int wrap) 528*4882a593Smuzhiyun{ 529*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "SELOID", 530*4882a593Smuzhiyun 0x6b, regvalue, cur_col, wrap)); 531*4882a593Smuzhiyun} 532*4882a593Smuzhiyun 533*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SG_STATE_parse_table[] = { 534*4882a593Smuzhiyun { "SEGS_AVAIL", 0x01, 0x01 }, 535*4882a593Smuzhiyun { "LOADING_NEEDED", 0x02, 0x02 }, 536*4882a593Smuzhiyun { "FETCH_INPROG", 0x04, 0x04 } 537*4882a593Smuzhiyun}; 538*4882a593Smuzhiyun 539*4882a593Smuzhiyunint 540*4882a593Smuzhiyunahd_sg_state_print(u_int regvalue, u_int *cur_col, u_int wrap) 541*4882a593Smuzhiyun{ 542*4882a593Smuzhiyun return (ahd_print_register(SG_STATE_parse_table, 3, "SG_STATE", 543*4882a593Smuzhiyun 0xa6, regvalue, cur_col, wrap)); 544*4882a593Smuzhiyun} 545*4882a593Smuzhiyun 546*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t CCSCBCTL_parse_table[] = { 547*4882a593Smuzhiyun { "CCSCBRESET", 0x01, 0x01 }, 548*4882a593Smuzhiyun { "CCSCBDIR", 0x04, 0x04 }, 549*4882a593Smuzhiyun { "CCSCBEN", 0x08, 0x08 }, 550*4882a593Smuzhiyun { "CCARREN", 0x10, 0x10 }, 551*4882a593Smuzhiyun { "ARRDONE", 0x40, 0x40 }, 552*4882a593Smuzhiyun { "CCSCBDONE", 0x80, 0x80 } 553*4882a593Smuzhiyun}; 554*4882a593Smuzhiyun 555*4882a593Smuzhiyunint 556*4882a593Smuzhiyunahd_ccscbctl_print(u_int regvalue, u_int *cur_col, u_int wrap) 557*4882a593Smuzhiyun{ 558*4882a593Smuzhiyun return (ahd_print_register(CCSCBCTL_parse_table, 6, "CCSCBCTL", 559*4882a593Smuzhiyun 0xad, regvalue, cur_col, wrap)); 560*4882a593Smuzhiyun} 561*4882a593Smuzhiyun 562*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t CCSGCTL_parse_table[] = { 563*4882a593Smuzhiyun { "CCSGRESET", 0x01, 0x01 }, 564*4882a593Smuzhiyun { "SG_FETCH_REQ", 0x02, 0x02 }, 565*4882a593Smuzhiyun { "CCSGENACK", 0x08, 0x08 }, 566*4882a593Smuzhiyun { "SG_CACHE_AVAIL", 0x10, 0x10 }, 567*4882a593Smuzhiyun { "CCSGDONE", 0x80, 0x80 }, 568*4882a593Smuzhiyun { "CCSGEN", 0x0c, 0x0c } 569*4882a593Smuzhiyun}; 570*4882a593Smuzhiyun 571*4882a593Smuzhiyunint 572*4882a593Smuzhiyunahd_ccsgctl_print(u_int regvalue, u_int *cur_col, u_int wrap) 573*4882a593Smuzhiyun{ 574*4882a593Smuzhiyun return (ahd_print_register(CCSGCTL_parse_table, 6, "CCSGCTL", 575*4882a593Smuzhiyun 0xad, regvalue, cur_col, wrap)); 576*4882a593Smuzhiyun} 577*4882a593Smuzhiyun 578*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SEQCTL0_parse_table[] = { 579*4882a593Smuzhiyun { "LOADRAM", 0x01, 0x01 }, 580*4882a593Smuzhiyun { "SEQRESET", 0x02, 0x02 }, 581*4882a593Smuzhiyun { "STEP", 0x04, 0x04 }, 582*4882a593Smuzhiyun { "BRKADRINTEN", 0x08, 0x08 }, 583*4882a593Smuzhiyun { "FASTMODE", 0x10, 0x10 }, 584*4882a593Smuzhiyun { "FAILDIS", 0x20, 0x20 }, 585*4882a593Smuzhiyun { "PAUSEDIS", 0x40, 0x40 }, 586*4882a593Smuzhiyun { "PERRORDIS", 0x80, 0x80 } 587*4882a593Smuzhiyun}; 588*4882a593Smuzhiyun 589*4882a593Smuzhiyunint 590*4882a593Smuzhiyunahd_seqctl0_print(u_int regvalue, u_int *cur_col, u_int wrap) 591*4882a593Smuzhiyun{ 592*4882a593Smuzhiyun return (ahd_print_register(SEQCTL0_parse_table, 8, "SEQCTL0", 593*4882a593Smuzhiyun 0xd6, regvalue, cur_col, wrap)); 594*4882a593Smuzhiyun} 595*4882a593Smuzhiyun 596*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SEQINTCTL_parse_table[] = { 597*4882a593Smuzhiyun { "IRET", 0x01, 0x01 }, 598*4882a593Smuzhiyun { "INTMASK1", 0x02, 0x02 }, 599*4882a593Smuzhiyun { "INTMASK2", 0x04, 0x04 }, 600*4882a593Smuzhiyun { "SCS_SEQ_INT1M0", 0x08, 0x08 }, 601*4882a593Smuzhiyun { "SCS_SEQ_INT1M1", 0x10, 0x10 }, 602*4882a593Smuzhiyun { "INT1_CONTEXT", 0x20, 0x20 }, 603*4882a593Smuzhiyun { "INTVEC1DSL", 0x80, 0x80 } 604*4882a593Smuzhiyun}; 605*4882a593Smuzhiyun 606*4882a593Smuzhiyunint 607*4882a593Smuzhiyunahd_seqintctl_print(u_int regvalue, u_int *cur_col, u_int wrap) 608*4882a593Smuzhiyun{ 609*4882a593Smuzhiyun return (ahd_print_register(SEQINTCTL_parse_table, 7, "SEQINTCTL", 610*4882a593Smuzhiyun 0xd9, regvalue, cur_col, wrap)); 611*4882a593Smuzhiyun} 612*4882a593Smuzhiyun 613*4882a593Smuzhiyunint 614*4882a593Smuzhiyunahd_sram_base_print(u_int regvalue, u_int *cur_col, u_int wrap) 615*4882a593Smuzhiyun{ 616*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "SRAM_BASE", 617*4882a593Smuzhiyun 0x100, regvalue, cur_col, wrap)); 618*4882a593Smuzhiyun} 619*4882a593Smuzhiyun 620*4882a593Smuzhiyunint 621*4882a593Smuzhiyunahd_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap) 622*4882a593Smuzhiyun{ 623*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "QFREEZE_COUNT", 624*4882a593Smuzhiyun 0x132, regvalue, cur_col, wrap)); 625*4882a593Smuzhiyun} 626*4882a593Smuzhiyun 627*4882a593Smuzhiyunint 628*4882a593Smuzhiyunahd_kernel_qfreeze_count_print(u_int regvalue, u_int *cur_col, u_int wrap) 629*4882a593Smuzhiyun{ 630*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "KERNEL_QFREEZE_COUNT", 631*4882a593Smuzhiyun 0x134, regvalue, cur_col, wrap)); 632*4882a593Smuzhiyun} 633*4882a593Smuzhiyun 634*4882a593Smuzhiyunint 635*4882a593Smuzhiyunahd_saved_mode_print(u_int regvalue, u_int *cur_col, u_int wrap) 636*4882a593Smuzhiyun{ 637*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "SAVED_MODE", 638*4882a593Smuzhiyun 0x136, regvalue, cur_col, wrap)); 639*4882a593Smuzhiyun} 640*4882a593Smuzhiyun 641*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SEQ_FLAGS_parse_table[] = { 642*4882a593Smuzhiyun { "NO_DISCONNECT", 0x01, 0x01 }, 643*4882a593Smuzhiyun { "SPHASE_PENDING", 0x02, 0x02 }, 644*4882a593Smuzhiyun { "DPHASE_PENDING", 0x04, 0x04 }, 645*4882a593Smuzhiyun { "CMDPHASE_PENDING", 0x08, 0x08 }, 646*4882a593Smuzhiyun { "TARG_CMD_PENDING", 0x10, 0x10 }, 647*4882a593Smuzhiyun { "DPHASE", 0x20, 0x20 }, 648*4882a593Smuzhiyun { "NO_CDB_SENT", 0x40, 0x40 }, 649*4882a593Smuzhiyun { "TARGET_CMD_IS_TAGGED",0x40, 0x40 }, 650*4882a593Smuzhiyun { "NOT_IDENTIFIED", 0x80, 0x80 } 651*4882a593Smuzhiyun}; 652*4882a593Smuzhiyun 653*4882a593Smuzhiyunint 654*4882a593Smuzhiyunahd_seq_flags_print(u_int regvalue, u_int *cur_col, u_int wrap) 655*4882a593Smuzhiyun{ 656*4882a593Smuzhiyun return (ahd_print_register(SEQ_FLAGS_parse_table, 9, "SEQ_FLAGS", 657*4882a593Smuzhiyun 0x139, regvalue, cur_col, wrap)); 658*4882a593Smuzhiyun} 659*4882a593Smuzhiyun 660*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t LASTPHASE_parse_table[] = { 661*4882a593Smuzhiyun { "P_DATAOUT", 0x00, 0xe0 }, 662*4882a593Smuzhiyun { "P_DATAOUT_DT", 0x20, 0xe0 }, 663*4882a593Smuzhiyun { "P_DATAIN", 0x40, 0xe0 }, 664*4882a593Smuzhiyun { "P_DATAIN_DT", 0x60, 0xe0 }, 665*4882a593Smuzhiyun { "P_COMMAND", 0x80, 0xe0 }, 666*4882a593Smuzhiyun { "P_MESGOUT", 0xa0, 0xe0 }, 667*4882a593Smuzhiyun { "P_STATUS", 0xc0, 0xe0 }, 668*4882a593Smuzhiyun { "P_MESGIN", 0xe0, 0xe0 }, 669*4882a593Smuzhiyun { "P_BUSFREE", 0x01, 0x01 }, 670*4882a593Smuzhiyun { "MSGI", 0x20, 0x20 }, 671*4882a593Smuzhiyun { "IOI", 0x40, 0x40 }, 672*4882a593Smuzhiyun { "CDI", 0x80, 0x80 }, 673*4882a593Smuzhiyun { "PHASE_MASK", 0xe0, 0xe0 } 674*4882a593Smuzhiyun}; 675*4882a593Smuzhiyun 676*4882a593Smuzhiyunint 677*4882a593Smuzhiyunahd_lastphase_print(u_int regvalue, u_int *cur_col, u_int wrap) 678*4882a593Smuzhiyun{ 679*4882a593Smuzhiyun return (ahd_print_register(LASTPHASE_parse_table, 13, "LASTPHASE", 680*4882a593Smuzhiyun 0x13c, regvalue, cur_col, wrap)); 681*4882a593Smuzhiyun} 682*4882a593Smuzhiyun 683*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SEQ_FLAGS2_parse_table[] = { 684*4882a593Smuzhiyun { "PENDING_MK_MESSAGE", 0x01, 0x01 }, 685*4882a593Smuzhiyun { "TARGET_MSG_PENDING", 0x02, 0x02 }, 686*4882a593Smuzhiyun { "SELECTOUT_QFROZEN", 0x04, 0x04 } 687*4882a593Smuzhiyun}; 688*4882a593Smuzhiyun 689*4882a593Smuzhiyunint 690*4882a593Smuzhiyunahd_seq_flags2_print(u_int regvalue, u_int *cur_col, u_int wrap) 691*4882a593Smuzhiyun{ 692*4882a593Smuzhiyun return (ahd_print_register(SEQ_FLAGS2_parse_table, 3, "SEQ_FLAGS2", 693*4882a593Smuzhiyun 0x14d, regvalue, cur_col, wrap)); 694*4882a593Smuzhiyun} 695*4882a593Smuzhiyun 696*4882a593Smuzhiyunint 697*4882a593Smuzhiyunahd_mk_message_scb_print(u_int regvalue, u_int *cur_col, u_int wrap) 698*4882a593Smuzhiyun{ 699*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCB", 700*4882a593Smuzhiyun 0x160, regvalue, cur_col, wrap)); 701*4882a593Smuzhiyun} 702*4882a593Smuzhiyun 703*4882a593Smuzhiyunint 704*4882a593Smuzhiyunahd_mk_message_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap) 705*4882a593Smuzhiyun{ 706*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "MK_MESSAGE_SCSIID", 707*4882a593Smuzhiyun 0x162, regvalue, cur_col, wrap)); 708*4882a593Smuzhiyun} 709*4882a593Smuzhiyun 710*4882a593Smuzhiyunint 711*4882a593Smuzhiyunahd_scb_base_print(u_int regvalue, u_int *cur_col, u_int wrap) 712*4882a593Smuzhiyun{ 713*4882a593Smuzhiyun return (ahd_print_register(NULL, 0, "SCB_BASE", 714*4882a593Smuzhiyun 0x180, regvalue, cur_col, wrap)); 715*4882a593Smuzhiyun} 716*4882a593Smuzhiyun 717*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SCB_CONTROL_parse_table[] = { 718*4882a593Smuzhiyun { "SCB_TAG_TYPE", 0x03, 0x03 }, 719*4882a593Smuzhiyun { "DISCONNECTED", 0x04, 0x04 }, 720*4882a593Smuzhiyun { "STATUS_RCVD", 0x08, 0x08 }, 721*4882a593Smuzhiyun { "MK_MESSAGE", 0x10, 0x10 }, 722*4882a593Smuzhiyun { "TAG_ENB", 0x20, 0x20 }, 723*4882a593Smuzhiyun { "DISCENB", 0x40, 0x40 }, 724*4882a593Smuzhiyun { "TARGET_SCB", 0x80, 0x80 } 725*4882a593Smuzhiyun}; 726*4882a593Smuzhiyun 727*4882a593Smuzhiyunint 728*4882a593Smuzhiyunahd_scb_control_print(u_int regvalue, u_int *cur_col, u_int wrap) 729*4882a593Smuzhiyun{ 730*4882a593Smuzhiyun return (ahd_print_register(SCB_CONTROL_parse_table, 7, "SCB_CONTROL", 731*4882a593Smuzhiyun 0x192, regvalue, cur_col, wrap)); 732*4882a593Smuzhiyun} 733*4882a593Smuzhiyun 734*4882a593Smuzhiyunstatic const ahd_reg_parse_entry_t SCB_SCSIID_parse_table[] = { 735*4882a593Smuzhiyun { "OID", 0x0f, 0x0f }, 736*4882a593Smuzhiyun { "TID", 0xf0, 0xf0 } 737*4882a593Smuzhiyun}; 738*4882a593Smuzhiyun 739*4882a593Smuzhiyunint 740*4882a593Smuzhiyunahd_scb_scsiid_print(u_int regvalue, u_int *cur_col, u_int wrap) 741*4882a593Smuzhiyun{ 742*4882a593Smuzhiyun return (ahd_print_register(SCB_SCSIID_parse_table, 2, "SCB_SCSIID", 743*4882a593Smuzhiyun 0x193, regvalue, cur_col, wrap)); 744*4882a593Smuzhiyun} 745*4882a593Smuzhiyun 746