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/aic7xxx.seq#58 $ 6*4882a593Smuzhiyun * $Id: //depot/aic7xxx/aic7xxx/aic7xxx.reg#40 $ 7*4882a593Smuzhiyun */ 8*4882a593Smuzhiyuntypedef int (ahc_reg_print_t)(u_int, u_int *, u_int); 9*4882a593Smuzhiyuntypedef struct ahc_reg_parse_entry { 10*4882a593Smuzhiyun char *name; 11*4882a593Smuzhiyun uint8_t value; 12*4882a593Smuzhiyun uint8_t mask; 13*4882a593Smuzhiyun} ahc_reg_parse_entry_t; 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 16*4882a593Smuzhiyunahc_reg_print_t ahc_scsiseq_print; 17*4882a593Smuzhiyun#else 18*4882a593Smuzhiyun#define ahc_scsiseq_print(regvalue, cur_col, wrap) \ 19*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCSISEQ", 0x00, regvalue, cur_col, wrap) 20*4882a593Smuzhiyun#endif 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 23*4882a593Smuzhiyunahc_reg_print_t ahc_sxfrctl0_print; 24*4882a593Smuzhiyun#else 25*4882a593Smuzhiyun#define ahc_sxfrctl0_print(regvalue, cur_col, wrap) \ 26*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SXFRCTL0", 0x01, regvalue, cur_col, wrap) 27*4882a593Smuzhiyun#endif 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 30*4882a593Smuzhiyunahc_reg_print_t ahc_scsisigi_print; 31*4882a593Smuzhiyun#else 32*4882a593Smuzhiyun#define ahc_scsisigi_print(regvalue, cur_col, wrap) \ 33*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCSISIGI", 0x03, regvalue, cur_col, wrap) 34*4882a593Smuzhiyun#endif 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 37*4882a593Smuzhiyunahc_reg_print_t ahc_scsirate_print; 38*4882a593Smuzhiyun#else 39*4882a593Smuzhiyun#define ahc_scsirate_print(regvalue, cur_col, wrap) \ 40*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCSIRATE", 0x04, regvalue, cur_col, wrap) 41*4882a593Smuzhiyun#endif 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 44*4882a593Smuzhiyunahc_reg_print_t ahc_sstat0_print; 45*4882a593Smuzhiyun#else 46*4882a593Smuzhiyun#define ahc_sstat0_print(regvalue, cur_col, wrap) \ 47*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SSTAT0", 0x0b, regvalue, cur_col, wrap) 48*4882a593Smuzhiyun#endif 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 51*4882a593Smuzhiyunahc_reg_print_t ahc_sstat1_print; 52*4882a593Smuzhiyun#else 53*4882a593Smuzhiyun#define ahc_sstat1_print(regvalue, cur_col, wrap) \ 54*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SSTAT1", 0x0c, regvalue, cur_col, wrap) 55*4882a593Smuzhiyun#endif 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 58*4882a593Smuzhiyunahc_reg_print_t ahc_sstat2_print; 59*4882a593Smuzhiyun#else 60*4882a593Smuzhiyun#define ahc_sstat2_print(regvalue, cur_col, wrap) \ 61*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SSTAT2", 0x0d, regvalue, cur_col, wrap) 62*4882a593Smuzhiyun#endif 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 65*4882a593Smuzhiyunahc_reg_print_t ahc_sstat3_print; 66*4882a593Smuzhiyun#else 67*4882a593Smuzhiyun#define ahc_sstat3_print(regvalue, cur_col, wrap) \ 68*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SSTAT3", 0x0e, regvalue, cur_col, wrap) 69*4882a593Smuzhiyun#endif 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 72*4882a593Smuzhiyunahc_reg_print_t ahc_simode0_print; 73*4882a593Smuzhiyun#else 74*4882a593Smuzhiyun#define ahc_simode0_print(regvalue, cur_col, wrap) \ 75*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SIMODE0", 0x10, regvalue, cur_col, wrap) 76*4882a593Smuzhiyun#endif 77*4882a593Smuzhiyun 78*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 79*4882a593Smuzhiyunahc_reg_print_t ahc_simode1_print; 80*4882a593Smuzhiyun#else 81*4882a593Smuzhiyun#define ahc_simode1_print(regvalue, cur_col, wrap) \ 82*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SIMODE1", 0x11, regvalue, cur_col, wrap) 83*4882a593Smuzhiyun#endif 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 86*4882a593Smuzhiyunahc_reg_print_t ahc_scsibusl_print; 87*4882a593Smuzhiyun#else 88*4882a593Smuzhiyun#define ahc_scsibusl_print(regvalue, cur_col, wrap) \ 89*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCSIBUSL", 0x12, regvalue, cur_col, wrap) 90*4882a593Smuzhiyun#endif 91*4882a593Smuzhiyun 92*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 93*4882a593Smuzhiyunahc_reg_print_t ahc_sblkctl_print; 94*4882a593Smuzhiyun#else 95*4882a593Smuzhiyun#define ahc_sblkctl_print(regvalue, cur_col, wrap) \ 96*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SBLKCTL", 0x1f, regvalue, cur_col, wrap) 97*4882a593Smuzhiyun#endif 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 100*4882a593Smuzhiyunahc_reg_print_t ahc_seq_flags_print; 101*4882a593Smuzhiyun#else 102*4882a593Smuzhiyun#define ahc_seq_flags_print(regvalue, cur_col, wrap) \ 103*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SEQ_FLAGS", 0x3c, regvalue, cur_col, wrap) 104*4882a593Smuzhiyun#endif 105*4882a593Smuzhiyun 106*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 107*4882a593Smuzhiyunahc_reg_print_t ahc_lastphase_print; 108*4882a593Smuzhiyun#else 109*4882a593Smuzhiyun#define ahc_lastphase_print(regvalue, cur_col, wrap) \ 110*4882a593Smuzhiyun ahc_print_register(NULL, 0, "LASTPHASE", 0x3f, regvalue, cur_col, wrap) 111*4882a593Smuzhiyun#endif 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 114*4882a593Smuzhiyunahc_reg_print_t ahc_seqctl_print; 115*4882a593Smuzhiyun#else 116*4882a593Smuzhiyun#define ahc_seqctl_print(regvalue, cur_col, wrap) \ 117*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SEQCTL", 0x60, regvalue, cur_col, wrap) 118*4882a593Smuzhiyun#endif 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 121*4882a593Smuzhiyunahc_reg_print_t ahc_sram_base_print; 122*4882a593Smuzhiyun#else 123*4882a593Smuzhiyun#define ahc_sram_base_print(regvalue, cur_col, wrap) \ 124*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SRAM_BASE", 0x70, regvalue, cur_col, wrap) 125*4882a593Smuzhiyun#endif 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 128*4882a593Smuzhiyunahc_reg_print_t ahc_error_print; 129*4882a593Smuzhiyun#else 130*4882a593Smuzhiyun#define ahc_error_print(regvalue, cur_col, wrap) \ 131*4882a593Smuzhiyun ahc_print_register(NULL, 0, "ERROR", 0x92, regvalue, cur_col, wrap) 132*4882a593Smuzhiyun#endif 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 135*4882a593Smuzhiyunahc_reg_print_t ahc_dfcntrl_print; 136*4882a593Smuzhiyun#else 137*4882a593Smuzhiyun#define ahc_dfcntrl_print(regvalue, cur_col, wrap) \ 138*4882a593Smuzhiyun ahc_print_register(NULL, 0, "DFCNTRL", 0x93, regvalue, cur_col, wrap) 139*4882a593Smuzhiyun#endif 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 142*4882a593Smuzhiyunahc_reg_print_t ahc_dfstatus_print; 143*4882a593Smuzhiyun#else 144*4882a593Smuzhiyun#define ahc_dfstatus_print(regvalue, cur_col, wrap) \ 145*4882a593Smuzhiyun ahc_print_register(NULL, 0, "DFSTATUS", 0x94, regvalue, cur_col, wrap) 146*4882a593Smuzhiyun#endif 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 149*4882a593Smuzhiyunahc_reg_print_t ahc_scsiphase_print; 150*4882a593Smuzhiyun#else 151*4882a593Smuzhiyun#define ahc_scsiphase_print(regvalue, cur_col, wrap) \ 152*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCSIPHASE", 0x9e, regvalue, cur_col, wrap) 153*4882a593Smuzhiyun#endif 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 156*4882a593Smuzhiyunahc_reg_print_t ahc_scb_base_print; 157*4882a593Smuzhiyun#else 158*4882a593Smuzhiyun#define ahc_scb_base_print(regvalue, cur_col, wrap) \ 159*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCB_BASE", 0xa0, regvalue, cur_col, wrap) 160*4882a593Smuzhiyun#endif 161*4882a593Smuzhiyun 162*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 163*4882a593Smuzhiyunahc_reg_print_t ahc_scb_control_print; 164*4882a593Smuzhiyun#else 165*4882a593Smuzhiyun#define ahc_scb_control_print(regvalue, cur_col, wrap) \ 166*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCB_CONTROL", 0xb8, regvalue, cur_col, wrap) 167*4882a593Smuzhiyun#endif 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 170*4882a593Smuzhiyunahc_reg_print_t ahc_scb_scsiid_print; 171*4882a593Smuzhiyun#else 172*4882a593Smuzhiyun#define ahc_scb_scsiid_print(regvalue, cur_col, wrap) \ 173*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCB_SCSIID", 0xb9, regvalue, cur_col, wrap) 174*4882a593Smuzhiyun#endif 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 177*4882a593Smuzhiyunahc_reg_print_t ahc_scb_lun_print; 178*4882a593Smuzhiyun#else 179*4882a593Smuzhiyun#define ahc_scb_lun_print(regvalue, cur_col, wrap) \ 180*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCB_LUN", 0xba, regvalue, cur_col, wrap) 181*4882a593Smuzhiyun#endif 182*4882a593Smuzhiyun 183*4882a593Smuzhiyun#if AIC_DEBUG_REGISTERS 184*4882a593Smuzhiyunahc_reg_print_t ahc_scb_tag_print; 185*4882a593Smuzhiyun#else 186*4882a593Smuzhiyun#define ahc_scb_tag_print(regvalue, cur_col, wrap) \ 187*4882a593Smuzhiyun ahc_print_register(NULL, 0, "SCB_TAG", 0xbb, regvalue, cur_col, wrap) 188*4882a593Smuzhiyun#endif 189*4882a593Smuzhiyun 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun#define SCSISEQ 0x00 192*4882a593Smuzhiyun#define TEMODE 0x80 193*4882a593Smuzhiyun#define SCSIRSTO 0x01 194*4882a593Smuzhiyun 195*4882a593Smuzhiyun#define SXFRCTL0 0x01 196*4882a593Smuzhiyun#define DFON 0x80 197*4882a593Smuzhiyun#define DFPEXP 0x40 198*4882a593Smuzhiyun#define FAST20 0x20 199*4882a593Smuzhiyun#define CLRSTCNT 0x10 200*4882a593Smuzhiyun#define SPIOEN 0x08 201*4882a593Smuzhiyun#define SCAMEN 0x04 202*4882a593Smuzhiyun#define CLRCHN 0x02 203*4882a593Smuzhiyun 204*4882a593Smuzhiyun#define SXFRCTL1 0x02 205*4882a593Smuzhiyun#define STIMESEL 0x18 206*4882a593Smuzhiyun#define BITBUCKET 0x80 207*4882a593Smuzhiyun#define SWRAPEN 0x40 208*4882a593Smuzhiyun#define ENSTIMER 0x04 209*4882a593Smuzhiyun#define ACTNEGEN 0x02 210*4882a593Smuzhiyun#define STPWEN 0x01 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun#define SCSISIGO 0x03 213*4882a593Smuzhiyun#define CDO 0x80 214*4882a593Smuzhiyun#define IOO 0x40 215*4882a593Smuzhiyun#define MSGO 0x20 216*4882a593Smuzhiyun#define ATNO 0x10 217*4882a593Smuzhiyun#define SELO 0x08 218*4882a593Smuzhiyun#define BSYO 0x04 219*4882a593Smuzhiyun#define REQO 0x02 220*4882a593Smuzhiyun#define ACKO 0x01 221*4882a593Smuzhiyun 222*4882a593Smuzhiyun#define SCSISIGI 0x03 223*4882a593Smuzhiyun#define P_DATAIN_DT 0x60 224*4882a593Smuzhiyun#define P_DATAOUT_DT 0x20 225*4882a593Smuzhiyun#define ATNI 0x10 226*4882a593Smuzhiyun#define SELI 0x08 227*4882a593Smuzhiyun#define BSYI 0x04 228*4882a593Smuzhiyun#define REQI 0x02 229*4882a593Smuzhiyun#define ACKI 0x01 230*4882a593Smuzhiyun 231*4882a593Smuzhiyun#define SCSIRATE 0x04 232*4882a593Smuzhiyun#define SXFR 0x70 233*4882a593Smuzhiyun#define SOFS 0x0f 234*4882a593Smuzhiyun#define SXFR_ULTRA2 0x0f 235*4882a593Smuzhiyun#define WIDEXFER 0x80 236*4882a593Smuzhiyun#define ENABLE_CRC 0x40 237*4882a593Smuzhiyun#define SINGLE_EDGE 0x10 238*4882a593Smuzhiyun 239*4882a593Smuzhiyun#define SCSIID 0x05 240*4882a593Smuzhiyun#define SCSIOFFSET 0x05 241*4882a593Smuzhiyun#define SOFS_ULTRA2 0x7f 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun#define SCSIDATL 0x06 244*4882a593Smuzhiyun 245*4882a593Smuzhiyun#define SCSIDATH 0x07 246*4882a593Smuzhiyun 247*4882a593Smuzhiyun#define OPTIONMODE 0x08 248*4882a593Smuzhiyun#define OPTIONMODE_DEFAULTS 0x03 249*4882a593Smuzhiyun#define AUTORATEEN 0x80 250*4882a593Smuzhiyun#define AUTOACKEN 0x40 251*4882a593Smuzhiyun#define ATNMGMNTEN 0x20 252*4882a593Smuzhiyun#define BUSFREEREV 0x10 253*4882a593Smuzhiyun#define EXPPHASEDIS 0x08 254*4882a593Smuzhiyun#define SCSIDATL_IMGEN 0x04 255*4882a593Smuzhiyun#define AUTO_MSGOUT_DE 0x02 256*4882a593Smuzhiyun#define DIS_MSGIN_DUALEDGE 0x01 257*4882a593Smuzhiyun 258*4882a593Smuzhiyun#define STCNT 0x08 259*4882a593Smuzhiyun 260*4882a593Smuzhiyun#define TARGCRCCNT 0x0a 261*4882a593Smuzhiyun 262*4882a593Smuzhiyun#define CLRSINT0 0x0b 263*4882a593Smuzhiyun#define CLRSELDO 0x40 264*4882a593Smuzhiyun#define CLRSELDI 0x20 265*4882a593Smuzhiyun#define CLRSELINGO 0x10 266*4882a593Smuzhiyun#define CLRIOERR 0x08 267*4882a593Smuzhiyun#define CLRSWRAP 0x08 268*4882a593Smuzhiyun#define CLRSPIORDY 0x02 269*4882a593Smuzhiyun 270*4882a593Smuzhiyun#define SSTAT0 0x0b 271*4882a593Smuzhiyun#define TARGET 0x80 272*4882a593Smuzhiyun#define SELDO 0x40 273*4882a593Smuzhiyun#define SELDI 0x20 274*4882a593Smuzhiyun#define SELINGO 0x10 275*4882a593Smuzhiyun#define SWRAP 0x08 276*4882a593Smuzhiyun#define IOERR 0x08 277*4882a593Smuzhiyun#define SDONE 0x04 278*4882a593Smuzhiyun#define SPIORDY 0x02 279*4882a593Smuzhiyun#define DMADONE 0x01 280*4882a593Smuzhiyun 281*4882a593Smuzhiyun#define CLRSINT1 0x0c 282*4882a593Smuzhiyun#define CLRSELTIMEO 0x80 283*4882a593Smuzhiyun#define CLRATNO 0x40 284*4882a593Smuzhiyun#define CLRSCSIRSTI 0x20 285*4882a593Smuzhiyun#define CLRBUSFREE 0x08 286*4882a593Smuzhiyun#define CLRSCSIPERR 0x04 287*4882a593Smuzhiyun#define CLRPHASECHG 0x02 288*4882a593Smuzhiyun#define CLRREQINIT 0x01 289*4882a593Smuzhiyun 290*4882a593Smuzhiyun#define SSTAT1 0x0c 291*4882a593Smuzhiyun#define SELTO 0x80 292*4882a593Smuzhiyun#define ATNTARG 0x40 293*4882a593Smuzhiyun#define SCSIRSTI 0x20 294*4882a593Smuzhiyun#define PHASEMIS 0x10 295*4882a593Smuzhiyun#define BUSFREE 0x08 296*4882a593Smuzhiyun#define SCSIPERR 0x04 297*4882a593Smuzhiyun#define PHASECHG 0x02 298*4882a593Smuzhiyun#define REQINIT 0x01 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun#define SSTAT2 0x0d 301*4882a593Smuzhiyun#define SFCNT 0x1f 302*4882a593Smuzhiyun#define OVERRUN 0x80 303*4882a593Smuzhiyun#define SHVALID 0x40 304*4882a593Smuzhiyun#define EXP_ACTIVE 0x10 305*4882a593Smuzhiyun#define CRCVALERR 0x08 306*4882a593Smuzhiyun#define CRCENDERR 0x04 307*4882a593Smuzhiyun#define CRCREQERR 0x02 308*4882a593Smuzhiyun#define DUAL_EDGE_ERR 0x01 309*4882a593Smuzhiyun 310*4882a593Smuzhiyun#define SSTAT3 0x0e 311*4882a593Smuzhiyun#define SCSICNT 0xf0 312*4882a593Smuzhiyun#define U2OFFCNT 0x7f 313*4882a593Smuzhiyun#define OFFCNT 0x0f 314*4882a593Smuzhiyun 315*4882a593Smuzhiyun#define SCSIID_ULTRA2 0x0f 316*4882a593Smuzhiyun 317*4882a593Smuzhiyun#define SIMODE0 0x10 318*4882a593Smuzhiyun#define ENSELDO 0x40 319*4882a593Smuzhiyun#define ENSELDI 0x20 320*4882a593Smuzhiyun#define ENSELINGO 0x10 321*4882a593Smuzhiyun#define ENIOERR 0x08 322*4882a593Smuzhiyun#define ENSWRAP 0x08 323*4882a593Smuzhiyun#define ENSDONE 0x04 324*4882a593Smuzhiyun#define ENSPIORDY 0x02 325*4882a593Smuzhiyun#define ENDMADONE 0x01 326*4882a593Smuzhiyun 327*4882a593Smuzhiyun#define SIMODE1 0x11 328*4882a593Smuzhiyun#define ENSELTIMO 0x80 329*4882a593Smuzhiyun#define ENATNTARG 0x40 330*4882a593Smuzhiyun#define ENSCSIRST 0x20 331*4882a593Smuzhiyun#define ENPHASEMIS 0x10 332*4882a593Smuzhiyun#define ENBUSFREE 0x08 333*4882a593Smuzhiyun#define ENSCSIPERR 0x04 334*4882a593Smuzhiyun#define ENPHASECHG 0x02 335*4882a593Smuzhiyun#define ENREQINIT 0x01 336*4882a593Smuzhiyun 337*4882a593Smuzhiyun#define SCSIBUSL 0x12 338*4882a593Smuzhiyun 339*4882a593Smuzhiyun#define SCSIBUSH 0x13 340*4882a593Smuzhiyun 341*4882a593Smuzhiyun#define SXFRCTL2 0x13 342*4882a593Smuzhiyun#define ASYNC_SETUP 0x07 343*4882a593Smuzhiyun#define AUTORSTDIS 0x10 344*4882a593Smuzhiyun#define CMDDMAEN 0x08 345*4882a593Smuzhiyun 346*4882a593Smuzhiyun#define SHADDR 0x14 347*4882a593Smuzhiyun 348*4882a593Smuzhiyun#define SELTIMER 0x18 349*4882a593Smuzhiyun#define TARGIDIN 0x18 350*4882a593Smuzhiyun#define STAGE6 0x20 351*4882a593Smuzhiyun#define STAGE5 0x10 352*4882a593Smuzhiyun#define STAGE4 0x08 353*4882a593Smuzhiyun#define STAGE3 0x04 354*4882a593Smuzhiyun#define STAGE2 0x02 355*4882a593Smuzhiyun#define STAGE1 0x01 356*4882a593Smuzhiyun 357*4882a593Smuzhiyun#define SELID 0x19 358*4882a593Smuzhiyun#define SELID_MASK 0xf0 359*4882a593Smuzhiyun#define ONEBIT 0x08 360*4882a593Smuzhiyun 361*4882a593Smuzhiyun#define SCAMCTL 0x1a 362*4882a593Smuzhiyun#define SCAMLVL 0x03 363*4882a593Smuzhiyun#define ENSCAMSELO 0x80 364*4882a593Smuzhiyun#define CLRSCAMSELID 0x40 365*4882a593Smuzhiyun#define ALTSTIM 0x20 366*4882a593Smuzhiyun#define DFLTTID 0x10 367*4882a593Smuzhiyun 368*4882a593Smuzhiyun#define SPIOCAP 0x1b 369*4882a593Smuzhiyun#define SOFT1 0x80 370*4882a593Smuzhiyun#define SOFT0 0x40 371*4882a593Smuzhiyun#define SOFTCMDEN 0x20 372*4882a593Smuzhiyun#define EXT_BRDCTL 0x10 373*4882a593Smuzhiyun#define SEEPROM 0x08 374*4882a593Smuzhiyun#define EEPROM 0x04 375*4882a593Smuzhiyun#define ROM 0x02 376*4882a593Smuzhiyun#define SSPIOCPS 0x01 377*4882a593Smuzhiyun 378*4882a593Smuzhiyun#define TARGID 0x1b 379*4882a593Smuzhiyun 380*4882a593Smuzhiyun#define BRDCTL 0x1d 381*4882a593Smuzhiyun#define BRDDAT7 0x80 382*4882a593Smuzhiyun#define BRDDAT6 0x40 383*4882a593Smuzhiyun#define BRDDAT5 0x20 384*4882a593Smuzhiyun#define BRDSTB 0x10 385*4882a593Smuzhiyun#define BRDDAT4 0x10 386*4882a593Smuzhiyun#define BRDDAT3 0x08 387*4882a593Smuzhiyun#define BRDCS 0x08 388*4882a593Smuzhiyun#define BRDDAT2 0x04 389*4882a593Smuzhiyun#define BRDRW 0x04 390*4882a593Smuzhiyun#define BRDRW_ULTRA2 0x02 391*4882a593Smuzhiyun#define BRDCTL1 0x02 392*4882a593Smuzhiyun#define BRDCTL0 0x01 393*4882a593Smuzhiyun#define BRDSTB_ULTRA2 0x01 394*4882a593Smuzhiyun 395*4882a593Smuzhiyun#define SEECTL 0x1e 396*4882a593Smuzhiyun#define EXTARBACK 0x80 397*4882a593Smuzhiyun#define EXTARBREQ 0x40 398*4882a593Smuzhiyun#define SEEMS 0x20 399*4882a593Smuzhiyun#define SEERDY 0x10 400*4882a593Smuzhiyun#define SEECS 0x08 401*4882a593Smuzhiyun#define SEECK 0x04 402*4882a593Smuzhiyun#define SEEDO 0x02 403*4882a593Smuzhiyun#define SEEDI 0x01 404*4882a593Smuzhiyun 405*4882a593Smuzhiyun#define SBLKCTL 0x1f 406*4882a593Smuzhiyun#define DIAGLEDEN 0x80 407*4882a593Smuzhiyun#define DIAGLEDON 0x40 408*4882a593Smuzhiyun#define AUTOFLUSHDIS 0x20 409*4882a593Smuzhiyun#define SELBUSB 0x08 410*4882a593Smuzhiyun#define ENAB40 0x08 411*4882a593Smuzhiyun#define ENAB20 0x04 412*4882a593Smuzhiyun#define SELWIDE 0x02 413*4882a593Smuzhiyun#define XCVR 0x01 414*4882a593Smuzhiyun 415*4882a593Smuzhiyun#define BUSY_TARGETS 0x20 416*4882a593Smuzhiyun#define TARG_SCSIRATE 0x20 417*4882a593Smuzhiyun 418*4882a593Smuzhiyun#define ULTRA_ENB 0x30 419*4882a593Smuzhiyun#define CMDSIZE_TABLE 0x30 420*4882a593Smuzhiyun 421*4882a593Smuzhiyun#define DISC_DSB 0x32 422*4882a593Smuzhiyun 423*4882a593Smuzhiyun#define CMDSIZE_TABLE_TAIL 0x34 424*4882a593Smuzhiyun 425*4882a593Smuzhiyun#define MWI_RESIDUAL 0x38 426*4882a593Smuzhiyun 427*4882a593Smuzhiyun#define NEXT_QUEUED_SCB 0x39 428*4882a593Smuzhiyun 429*4882a593Smuzhiyun#define MSG_OUT 0x3a 430*4882a593Smuzhiyun 431*4882a593Smuzhiyun#define DMAPARAMS 0x3b 432*4882a593Smuzhiyun#define PRELOADEN 0x80 433*4882a593Smuzhiyun#define WIDEODD 0x40 434*4882a593Smuzhiyun#define SCSIEN 0x20 435*4882a593Smuzhiyun#define SDMAEN 0x10 436*4882a593Smuzhiyun#define SDMAENACK 0x10 437*4882a593Smuzhiyun#define HDMAEN 0x08 438*4882a593Smuzhiyun#define HDMAENACK 0x08 439*4882a593Smuzhiyun#define DIRECTION 0x04 440*4882a593Smuzhiyun#define FIFOFLUSH 0x02 441*4882a593Smuzhiyun#define FIFORESET 0x01 442*4882a593Smuzhiyun 443*4882a593Smuzhiyun#define SEQ_FLAGS 0x3c 444*4882a593Smuzhiyun#define NOT_IDENTIFIED 0x80 445*4882a593Smuzhiyun#define NO_CDB_SENT 0x40 446*4882a593Smuzhiyun#define TARGET_CMD_IS_TAGGED 0x40 447*4882a593Smuzhiyun#define DPHASE 0x20 448*4882a593Smuzhiyun#define TARG_CMD_PENDING 0x10 449*4882a593Smuzhiyun#define CMDPHASE_PENDING 0x08 450*4882a593Smuzhiyun#define DPHASE_PENDING 0x04 451*4882a593Smuzhiyun#define SPHASE_PENDING 0x02 452*4882a593Smuzhiyun#define NO_DISCONNECT 0x01 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun#define SAVED_SCSIID 0x3d 455*4882a593Smuzhiyun 456*4882a593Smuzhiyun#define SAVED_LUN 0x3e 457*4882a593Smuzhiyun 458*4882a593Smuzhiyun#define LASTPHASE 0x3f 459*4882a593Smuzhiyun#define P_MESGIN 0xe0 460*4882a593Smuzhiyun#define PHASE_MASK 0xe0 461*4882a593Smuzhiyun#define P_STATUS 0xc0 462*4882a593Smuzhiyun#define P_MESGOUT 0xa0 463*4882a593Smuzhiyun#define P_COMMAND 0x80 464*4882a593Smuzhiyun#define P_DATAIN 0x40 465*4882a593Smuzhiyun#define P_BUSFREE 0x01 466*4882a593Smuzhiyun#define P_DATAOUT 0x00 467*4882a593Smuzhiyun#define CDI 0x80 468*4882a593Smuzhiyun#define IOI 0x40 469*4882a593Smuzhiyun#define MSGI 0x20 470*4882a593Smuzhiyun 471*4882a593Smuzhiyun#define WAITING_SCBH 0x40 472*4882a593Smuzhiyun 473*4882a593Smuzhiyun#define DISCONNECTED_SCBH 0x41 474*4882a593Smuzhiyun 475*4882a593Smuzhiyun#define FREE_SCBH 0x42 476*4882a593Smuzhiyun 477*4882a593Smuzhiyun#define COMPLETE_SCBH 0x43 478*4882a593Smuzhiyun 479*4882a593Smuzhiyun#define HSCB_ADDR 0x44 480*4882a593Smuzhiyun 481*4882a593Smuzhiyun#define SHARED_DATA_ADDR 0x48 482*4882a593Smuzhiyun 483*4882a593Smuzhiyun#define KERNEL_QINPOS 0x4c 484*4882a593Smuzhiyun 485*4882a593Smuzhiyun#define QINPOS 0x4d 486*4882a593Smuzhiyun 487*4882a593Smuzhiyun#define QOUTPOS 0x4e 488*4882a593Smuzhiyun 489*4882a593Smuzhiyun#define KERNEL_TQINPOS 0x4f 490*4882a593Smuzhiyun 491*4882a593Smuzhiyun#define TQINPOS 0x50 492*4882a593Smuzhiyun 493*4882a593Smuzhiyun#define ARG_1 0x51 494*4882a593Smuzhiyun#define RETURN_1 0x51 495*4882a593Smuzhiyun#define SEND_MSG 0x80 496*4882a593Smuzhiyun#define SEND_SENSE 0x40 497*4882a593Smuzhiyun#define SEND_REJ 0x20 498*4882a593Smuzhiyun#define MSGOUT_PHASEMIS 0x10 499*4882a593Smuzhiyun#define EXIT_MSG_LOOP 0x08 500*4882a593Smuzhiyun#define CONT_MSG_LOOP 0x04 501*4882a593Smuzhiyun#define CONT_TARG_SESSION 0x02 502*4882a593Smuzhiyun 503*4882a593Smuzhiyun#define ARG_2 0x52 504*4882a593Smuzhiyun#define RETURN_2 0x52 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun#define LAST_MSG 0x53 507*4882a593Smuzhiyun#define TARG_IMMEDIATE_SCB 0x53 508*4882a593Smuzhiyun 509*4882a593Smuzhiyun#define SCSISEQ_TEMPLATE 0x54 510*4882a593Smuzhiyun#define ENSELO 0x40 511*4882a593Smuzhiyun#define ENSELI 0x20 512*4882a593Smuzhiyun#define ENRSELI 0x10 513*4882a593Smuzhiyun#define ENAUTOATNO 0x08 514*4882a593Smuzhiyun#define ENAUTOATNI 0x04 515*4882a593Smuzhiyun#define ENAUTOATNP 0x02 516*4882a593Smuzhiyun 517*4882a593Smuzhiyun#define HA_274_BIOSGLOBAL 0x56 518*4882a593Smuzhiyun#define INITIATOR_TAG 0x56 519*4882a593Smuzhiyun#define HA_274_EXTENDED_TRANS 0x01 520*4882a593Smuzhiyun 521*4882a593Smuzhiyun#define SEQ_FLAGS2 0x57 522*4882a593Smuzhiyun#define TARGET_MSG_PENDING 0x02 523*4882a593Smuzhiyun#define SCB_DMA 0x01 524*4882a593Smuzhiyun 525*4882a593Smuzhiyun#define SCSICONF 0x5a 526*4882a593Smuzhiyun#define HWSCSIID 0x0f 527*4882a593Smuzhiyun#define HSCSIID 0x07 528*4882a593Smuzhiyun#define TERM_ENB 0x80 529*4882a593Smuzhiyun#define RESET_SCSI 0x40 530*4882a593Smuzhiyun#define ENSPCHK 0x20 531*4882a593Smuzhiyun 532*4882a593Smuzhiyun#define INTDEF 0x5c 533*4882a593Smuzhiyun#define VECTOR 0x0f 534*4882a593Smuzhiyun#define EDGE_TRIG 0x80 535*4882a593Smuzhiyun 536*4882a593Smuzhiyun#define HOSTCONF 0x5d 537*4882a593Smuzhiyun 538*4882a593Smuzhiyun#define HA_274_BIOSCTRL 0x5f 539*4882a593Smuzhiyun#define BIOSDISABLED 0x30 540*4882a593Smuzhiyun#define BIOSMODE 0x30 541*4882a593Smuzhiyun#define CHANNEL_B_PRIMARY 0x08 542*4882a593Smuzhiyun 543*4882a593Smuzhiyun#define SEQCTL 0x60 544*4882a593Smuzhiyun#define PERRORDIS 0x80 545*4882a593Smuzhiyun#define PAUSEDIS 0x40 546*4882a593Smuzhiyun#define FAILDIS 0x20 547*4882a593Smuzhiyun#define FASTMODE 0x10 548*4882a593Smuzhiyun#define BRKADRINTEN 0x08 549*4882a593Smuzhiyun#define STEP 0x04 550*4882a593Smuzhiyun#define SEQRESET 0x02 551*4882a593Smuzhiyun#define LOADRAM 0x01 552*4882a593Smuzhiyun 553*4882a593Smuzhiyun#define SEQRAM 0x61 554*4882a593Smuzhiyun 555*4882a593Smuzhiyun#define SEQADDR0 0x62 556*4882a593Smuzhiyun 557*4882a593Smuzhiyun#define SEQADDR1 0x63 558*4882a593Smuzhiyun#define SEQADDR1_MASK 0x01 559*4882a593Smuzhiyun 560*4882a593Smuzhiyun#define ACCUM 0x64 561*4882a593Smuzhiyun 562*4882a593Smuzhiyun#define SINDEX 0x65 563*4882a593Smuzhiyun 564*4882a593Smuzhiyun#define DINDEX 0x66 565*4882a593Smuzhiyun 566*4882a593Smuzhiyun#define ALLONES 0x69 567*4882a593Smuzhiyun 568*4882a593Smuzhiyun#define ALLZEROS 0x6a 569*4882a593Smuzhiyun 570*4882a593Smuzhiyun#define NONE 0x6a 571*4882a593Smuzhiyun 572*4882a593Smuzhiyun#define FLAGS 0x6b 573*4882a593Smuzhiyun#define ZERO 0x02 574*4882a593Smuzhiyun#define CARRY 0x01 575*4882a593Smuzhiyun 576*4882a593Smuzhiyun#define SINDIR 0x6c 577*4882a593Smuzhiyun 578*4882a593Smuzhiyun#define DINDIR 0x6d 579*4882a593Smuzhiyun 580*4882a593Smuzhiyun#define FUNCTION1 0x6e 581*4882a593Smuzhiyun 582*4882a593Smuzhiyun#define STACK 0x6f 583*4882a593Smuzhiyun 584*4882a593Smuzhiyun#define TARG_OFFSET 0x70 585*4882a593Smuzhiyun 586*4882a593Smuzhiyun#define SRAM_BASE 0x70 587*4882a593Smuzhiyun 588*4882a593Smuzhiyun#define BCTL 0x84 589*4882a593Smuzhiyun#define ACE 0x08 590*4882a593Smuzhiyun#define ENABLE 0x01 591*4882a593Smuzhiyun 592*4882a593Smuzhiyun#define DSCOMMAND0 0x84 593*4882a593Smuzhiyun#define CACHETHEN 0x80 594*4882a593Smuzhiyun#define DPARCKEN 0x40 595*4882a593Smuzhiyun#define MPARCKEN 0x20 596*4882a593Smuzhiyun#define EXTREQLCK 0x10 597*4882a593Smuzhiyun#define INTSCBRAMSEL 0x08 598*4882a593Smuzhiyun#define RAMPS 0x04 599*4882a593Smuzhiyun#define USCBSIZE32 0x02 600*4882a593Smuzhiyun#define CIOPARCKEN 0x01 601*4882a593Smuzhiyun 602*4882a593Smuzhiyun#define BUSTIME 0x85 603*4882a593Smuzhiyun#define BOFF 0xf0 604*4882a593Smuzhiyun#define BON 0x0f 605*4882a593Smuzhiyun 606*4882a593Smuzhiyun#define DSCOMMAND1 0x85 607*4882a593Smuzhiyun#define DSLATT 0xfc 608*4882a593Smuzhiyun#define HADDLDSEL1 0x02 609*4882a593Smuzhiyun#define HADDLDSEL0 0x01 610*4882a593Smuzhiyun 611*4882a593Smuzhiyun#define BUSSPD 0x86 612*4882a593Smuzhiyun#define DFTHRSH 0xc0 613*4882a593Smuzhiyun#define DFTHRSH_75 0x80 614*4882a593Smuzhiyun#define STBOFF 0x38 615*4882a593Smuzhiyun#define STBON 0x07 616*4882a593Smuzhiyun 617*4882a593Smuzhiyun#define HS_MAILBOX 0x86 618*4882a593Smuzhiyun#define HOST_MAILBOX 0xf0 619*4882a593Smuzhiyun#define HOST_TQINPOS 0x80 620*4882a593Smuzhiyun#define SEQ_MAILBOX 0x0f 621*4882a593Smuzhiyun 622*4882a593Smuzhiyun#define DSPCISTATUS 0x86 623*4882a593Smuzhiyun#define DFTHRSH_100 0xc0 624*4882a593Smuzhiyun 625*4882a593Smuzhiyun#define HCNTRL 0x87 626*4882a593Smuzhiyun#define POWRDN 0x40 627*4882a593Smuzhiyun#define SWINT 0x10 628*4882a593Smuzhiyun#define IRQMS 0x08 629*4882a593Smuzhiyun#define PAUSE 0x04 630*4882a593Smuzhiyun#define INTEN 0x02 631*4882a593Smuzhiyun#define CHIPRST 0x01 632*4882a593Smuzhiyun#define CHIPRSTACK 0x01 633*4882a593Smuzhiyun 634*4882a593Smuzhiyun#define HADDR 0x88 635*4882a593Smuzhiyun 636*4882a593Smuzhiyun#define HCNT 0x8c 637*4882a593Smuzhiyun 638*4882a593Smuzhiyun#define SCBPTR 0x90 639*4882a593Smuzhiyun 640*4882a593Smuzhiyun#define INTSTAT 0x91 641*4882a593Smuzhiyun#define SEQINT_MASK 0xf1 642*4882a593Smuzhiyun#define OUT_OF_RANGE 0xe1 643*4882a593Smuzhiyun#define NO_FREE_SCB 0xd1 644*4882a593Smuzhiyun#define SCB_MISMATCH 0xc1 645*4882a593Smuzhiyun#define MISSED_BUSFREE 0xb1 646*4882a593Smuzhiyun#define MKMSG_FAILED 0xa1 647*4882a593Smuzhiyun#define DATA_OVERRUN 0x91 648*4882a593Smuzhiyun#define PERR_DETECTED 0x81 649*4882a593Smuzhiyun#define BAD_STATUS 0x71 650*4882a593Smuzhiyun#define HOST_MSG_LOOP 0x61 651*4882a593Smuzhiyun#define PDATA_REINIT 0x51 652*4882a593Smuzhiyun#define IGN_WIDE_RES 0x41 653*4882a593Smuzhiyun#define NO_MATCH 0x31 654*4882a593Smuzhiyun#define PROTO_VIOLATION 0x21 655*4882a593Smuzhiyun#define SEND_REJECT 0x11 656*4882a593Smuzhiyun#define INT_PEND 0x0f 657*4882a593Smuzhiyun#define BAD_PHASE 0x01 658*4882a593Smuzhiyun#define BRKADRINT 0x08 659*4882a593Smuzhiyun#define SCSIINT 0x04 660*4882a593Smuzhiyun#define CMDCMPLT 0x02 661*4882a593Smuzhiyun#define SEQINT 0x01 662*4882a593Smuzhiyun 663*4882a593Smuzhiyun#define CLRINT 0x92 664*4882a593Smuzhiyun#define CLRPARERR 0x10 665*4882a593Smuzhiyun#define CLRBRKADRINT 0x08 666*4882a593Smuzhiyun#define CLRSCSIINT 0x04 667*4882a593Smuzhiyun#define CLRCMDINT 0x02 668*4882a593Smuzhiyun#define CLRSEQINT 0x01 669*4882a593Smuzhiyun 670*4882a593Smuzhiyun#define ERROR 0x92 671*4882a593Smuzhiyun#define CIOPARERR 0x80 672*4882a593Smuzhiyun#define PCIERRSTAT 0x40 673*4882a593Smuzhiyun#define MPARERR 0x20 674*4882a593Smuzhiyun#define DPARERR 0x10 675*4882a593Smuzhiyun#define SQPARERR 0x08 676*4882a593Smuzhiyun#define ILLOPCODE 0x04 677*4882a593Smuzhiyun#define ILLSADDR 0x02 678*4882a593Smuzhiyun#define ILLHADDR 0x01 679*4882a593Smuzhiyun 680*4882a593Smuzhiyun#define DFCNTRL 0x93 681*4882a593Smuzhiyun 682*4882a593Smuzhiyun#define DFSTATUS 0x94 683*4882a593Smuzhiyun#define PRELOAD_AVAIL 0x80 684*4882a593Smuzhiyun#define DFCACHETH 0x40 685*4882a593Smuzhiyun#define FIFOQWDEMP 0x20 686*4882a593Smuzhiyun#define MREQPEND 0x10 687*4882a593Smuzhiyun#define HDONE 0x08 688*4882a593Smuzhiyun#define DFTHRESH 0x04 689*4882a593Smuzhiyun#define FIFOFULL 0x02 690*4882a593Smuzhiyun#define FIFOEMP 0x01 691*4882a593Smuzhiyun 692*4882a593Smuzhiyun#define DFWADDR 0x95 693*4882a593Smuzhiyun 694*4882a593Smuzhiyun#define DFRADDR 0x97 695*4882a593Smuzhiyun 696*4882a593Smuzhiyun#define DFDAT 0x99 697*4882a593Smuzhiyun 698*4882a593Smuzhiyun#define SCBCNT 0x9a 699*4882a593Smuzhiyun#define SCBCNT_MASK 0x1f 700*4882a593Smuzhiyun#define SCBAUTO 0x80 701*4882a593Smuzhiyun 702*4882a593Smuzhiyun#define QINFIFO 0x9b 703*4882a593Smuzhiyun 704*4882a593Smuzhiyun#define QINCNT 0x9c 705*4882a593Smuzhiyun 706*4882a593Smuzhiyun#define QOUTFIFO 0x9d 707*4882a593Smuzhiyun 708*4882a593Smuzhiyun#define CRCCONTROL1 0x9d 709*4882a593Smuzhiyun#define CRCONSEEN 0x80 710*4882a593Smuzhiyun#define CRCVALCHKEN 0x40 711*4882a593Smuzhiyun#define CRCENDCHKEN 0x20 712*4882a593Smuzhiyun#define CRCREQCHKEN 0x10 713*4882a593Smuzhiyun#define TARGCRCENDEN 0x08 714*4882a593Smuzhiyun#define TARGCRCCNTEN 0x04 715*4882a593Smuzhiyun 716*4882a593Smuzhiyun#define QOUTCNT 0x9e 717*4882a593Smuzhiyun 718*4882a593Smuzhiyun#define SCSIPHASE 0x9e 719*4882a593Smuzhiyun#define DATA_PHASE_MASK 0x03 720*4882a593Smuzhiyun#define STATUS_PHASE 0x20 721*4882a593Smuzhiyun#define COMMAND_PHASE 0x10 722*4882a593Smuzhiyun#define MSG_IN_PHASE 0x08 723*4882a593Smuzhiyun#define MSG_OUT_PHASE 0x04 724*4882a593Smuzhiyun#define DATA_IN_PHASE 0x02 725*4882a593Smuzhiyun#define DATA_OUT_PHASE 0x01 726*4882a593Smuzhiyun 727*4882a593Smuzhiyun#define SFUNCT 0x9f 728*4882a593Smuzhiyun#define ALT_MODE 0x80 729*4882a593Smuzhiyun 730*4882a593Smuzhiyun#define SCB_BASE 0xa0 731*4882a593Smuzhiyun 732*4882a593Smuzhiyun#define SCB_CDB_PTR 0xa0 733*4882a593Smuzhiyun#define SCB_CDB_STORE 0xa0 734*4882a593Smuzhiyun#define SCB_RESIDUAL_DATACNT 0xa0 735*4882a593Smuzhiyun 736*4882a593Smuzhiyun#define SCB_RESIDUAL_SGPTR 0xa4 737*4882a593Smuzhiyun 738*4882a593Smuzhiyun#define SCB_SCSI_STATUS 0xa8 739*4882a593Smuzhiyun 740*4882a593Smuzhiyun#define SCB_TARGET_PHASES 0xa9 741*4882a593Smuzhiyun 742*4882a593Smuzhiyun#define SCB_TARGET_DATA_DIR 0xaa 743*4882a593Smuzhiyun 744*4882a593Smuzhiyun#define SCB_TARGET_ITAG 0xab 745*4882a593Smuzhiyun 746*4882a593Smuzhiyun#define SCB_DATAPTR 0xac 747*4882a593Smuzhiyun 748*4882a593Smuzhiyun#define SCB_DATACNT 0xb0 749*4882a593Smuzhiyun#define SG_HIGH_ADDR_BITS 0x7f 750*4882a593Smuzhiyun#define SG_LAST_SEG 0x80 751*4882a593Smuzhiyun 752*4882a593Smuzhiyun#define SCB_SGPTR 0xb4 753*4882a593Smuzhiyun#define SG_RESID_VALID 0x04 754*4882a593Smuzhiyun#define SG_FULL_RESID 0x02 755*4882a593Smuzhiyun#define SG_LIST_NULL 0x01 756*4882a593Smuzhiyun 757*4882a593Smuzhiyun#define SCB_CONTROL 0xb8 758*4882a593Smuzhiyun#define SCB_TAG_TYPE 0x03 759*4882a593Smuzhiyun#define TARGET_SCB 0x80 760*4882a593Smuzhiyun#define STATUS_RCVD 0x80 761*4882a593Smuzhiyun#define DISCENB 0x40 762*4882a593Smuzhiyun#define TAG_ENB 0x20 763*4882a593Smuzhiyun#define MK_MESSAGE 0x10 764*4882a593Smuzhiyun#define ULTRAENB 0x08 765*4882a593Smuzhiyun#define DISCONNECTED 0x04 766*4882a593Smuzhiyun 767*4882a593Smuzhiyun#define SCB_SCSIID 0xb9 768*4882a593Smuzhiyun#define TID 0xf0 769*4882a593Smuzhiyun#define TWIN_TID 0x70 770*4882a593Smuzhiyun#define OID 0x0f 771*4882a593Smuzhiyun#define TWIN_CHNLB 0x80 772*4882a593Smuzhiyun 773*4882a593Smuzhiyun#define SCB_LUN 0xba 774*4882a593Smuzhiyun#define LID 0x3f 775*4882a593Smuzhiyun#define SCB_XFERLEN_ODD 0x80 776*4882a593Smuzhiyun 777*4882a593Smuzhiyun#define SCB_TAG 0xbb 778*4882a593Smuzhiyun 779*4882a593Smuzhiyun#define SCB_CDB_LEN 0xbc 780*4882a593Smuzhiyun 781*4882a593Smuzhiyun#define SCB_SCSIRATE 0xbd 782*4882a593Smuzhiyun 783*4882a593Smuzhiyun#define SCB_SCSIOFFSET 0xbe 784*4882a593Smuzhiyun 785*4882a593Smuzhiyun#define SCB_NEXT 0xbf 786*4882a593Smuzhiyun 787*4882a593Smuzhiyun#define SCB_64_SPARE 0xc0 788*4882a593Smuzhiyun 789*4882a593Smuzhiyun#define SEECTL_2840 0xc0 790*4882a593Smuzhiyun#define CS_2840 0x04 791*4882a593Smuzhiyun#define CK_2840 0x02 792*4882a593Smuzhiyun#define DO_2840 0x01 793*4882a593Smuzhiyun 794*4882a593Smuzhiyun#define STATUS_2840 0xc1 795*4882a593Smuzhiyun#define BIOS_SEL 0x60 796*4882a593Smuzhiyun#define ADSEL 0x1e 797*4882a593Smuzhiyun#define EEPROM_TF 0x80 798*4882a593Smuzhiyun#define DI_2840 0x01 799*4882a593Smuzhiyun 800*4882a593Smuzhiyun#define SCB_64_BTT 0xd0 801*4882a593Smuzhiyun 802*4882a593Smuzhiyun#define CCHADDR 0xe0 803*4882a593Smuzhiyun 804*4882a593Smuzhiyun#define CCHCNT 0xe8 805*4882a593Smuzhiyun 806*4882a593Smuzhiyun#define CCSGRAM 0xe9 807*4882a593Smuzhiyun 808*4882a593Smuzhiyun#define CCSGADDR 0xea 809*4882a593Smuzhiyun 810*4882a593Smuzhiyun#define CCSGCTL 0xeb 811*4882a593Smuzhiyun#define CCSGDONE 0x80 812*4882a593Smuzhiyun#define CCSGEN 0x08 813*4882a593Smuzhiyun#define SG_FETCH_NEEDED 0x02 814*4882a593Smuzhiyun#define CCSGRESET 0x01 815*4882a593Smuzhiyun 816*4882a593Smuzhiyun#define CCSCBRAM 0xec 817*4882a593Smuzhiyun 818*4882a593Smuzhiyun#define CCSCBADDR 0xed 819*4882a593Smuzhiyun 820*4882a593Smuzhiyun#define CCSCBCTL 0xee 821*4882a593Smuzhiyun#define CCSCBDONE 0x80 822*4882a593Smuzhiyun#define ARRDONE 0x40 823*4882a593Smuzhiyun#define CCARREN 0x10 824*4882a593Smuzhiyun#define CCSCBEN 0x08 825*4882a593Smuzhiyun#define CCSCBDIR 0x04 826*4882a593Smuzhiyun#define CCSCBRESET 0x01 827*4882a593Smuzhiyun 828*4882a593Smuzhiyun#define CCSCBCNT 0xef 829*4882a593Smuzhiyun 830*4882a593Smuzhiyun#define SCBBADDR 0xf0 831*4882a593Smuzhiyun 832*4882a593Smuzhiyun#define CCSCBPTR 0xf1 833*4882a593Smuzhiyun 834*4882a593Smuzhiyun#define HNSCB_QOFF 0xf4 835*4882a593Smuzhiyun 836*4882a593Smuzhiyun#define SNSCB_QOFF 0xf6 837*4882a593Smuzhiyun 838*4882a593Smuzhiyun#define SDSCB_QOFF 0xf8 839*4882a593Smuzhiyun 840*4882a593Smuzhiyun#define QOFF_CTLSTA 0xfa 841*4882a593Smuzhiyun#define SCB_QSIZE 0x07 842*4882a593Smuzhiyun#define SCB_QSIZE_256 0x06 843*4882a593Smuzhiyun#define SCB_AVAIL 0x40 844*4882a593Smuzhiyun#define SNSCB_ROLLOVER 0x20 845*4882a593Smuzhiyun#define SDSCB_ROLLOVER 0x10 846*4882a593Smuzhiyun 847*4882a593Smuzhiyun#define DFF_THRSH 0xfb 848*4882a593Smuzhiyun#define WR_DFTHRSH 0x70 849*4882a593Smuzhiyun#define WR_DFTHRSH_MAX 0x70 850*4882a593Smuzhiyun#define WR_DFTHRSH_90 0x60 851*4882a593Smuzhiyun#define WR_DFTHRSH_85 0x50 852*4882a593Smuzhiyun#define WR_DFTHRSH_75 0x40 853*4882a593Smuzhiyun#define WR_DFTHRSH_63 0x30 854*4882a593Smuzhiyun#define WR_DFTHRSH_50 0x20 855*4882a593Smuzhiyun#define WR_DFTHRSH_25 0x10 856*4882a593Smuzhiyun#define RD_DFTHRSH 0x07 857*4882a593Smuzhiyun#define RD_DFTHRSH_MAX 0x07 858*4882a593Smuzhiyun#define RD_DFTHRSH_90 0x06 859*4882a593Smuzhiyun#define RD_DFTHRSH_85 0x05 860*4882a593Smuzhiyun#define RD_DFTHRSH_75 0x04 861*4882a593Smuzhiyun#define RD_DFTHRSH_63 0x03 862*4882a593Smuzhiyun#define RD_DFTHRSH_50 0x02 863*4882a593Smuzhiyun#define RD_DFTHRSH_25 0x01 864*4882a593Smuzhiyun#define RD_DFTHRSH_MIN 0x00 865*4882a593Smuzhiyun#define WR_DFTHRSH_MIN 0x00 866*4882a593Smuzhiyun 867*4882a593Smuzhiyun#define SG_CACHE_SHADOW 0xfc 868*4882a593Smuzhiyun#define SG_ADDR_MASK 0xf8 869*4882a593Smuzhiyun#define LAST_SEG 0x02 870*4882a593Smuzhiyun#define LAST_SEG_DONE 0x01 871*4882a593Smuzhiyun 872*4882a593Smuzhiyun#define SG_CACHE_PRE 0xfc 873*4882a593Smuzhiyun 874*4882a593Smuzhiyun 875*4882a593Smuzhiyun#define TARGET_CMD_CMPLT 0xfe 876*4882a593Smuzhiyun#define MAX_OFFSET_ULTRA2 0x7f 877*4882a593Smuzhiyun#define MAX_OFFSET_16BIT 0x08 878*4882a593Smuzhiyun#define BUS_8_BIT 0x00 879*4882a593Smuzhiyun#define TID_SHIFT 0x04 880*4882a593Smuzhiyun#define STATUS_QUEUE_FULL 0x28 881*4882a593Smuzhiyun#define STATUS_BUSY 0x08 882*4882a593Smuzhiyun#define SCB_DOWNLOAD_SIZE_64 0x30 883*4882a593Smuzhiyun#define MAX_OFFSET_8BIT 0x0f 884*4882a593Smuzhiyun#define HOST_MAILBOX_SHIFT 0x04 885*4882a593Smuzhiyun#define CCSGADDR_MAX 0x80 886*4882a593Smuzhiyun#define BUS_32_BIT 0x02 887*4882a593Smuzhiyun#define SG_SIZEOF 0x08 888*4882a593Smuzhiyun#define SEQ_MAILBOX_SHIFT 0x00 889*4882a593Smuzhiyun#define SCB_LIST_NULL 0xff 890*4882a593Smuzhiyun#define SCB_DOWNLOAD_SIZE 0x20 891*4882a593Smuzhiyun#define CMD_GROUP_CODE_SHIFT 0x05 892*4882a593Smuzhiyun#define CCSGRAM_MAXSEGS 0x10 893*4882a593Smuzhiyun#define TARGET_DATA_IN 0x01 894*4882a593Smuzhiyun#define STACK_SIZE 0x04 895*4882a593Smuzhiyun#define SCB_UPLOAD_SIZE 0x20 896*4882a593Smuzhiyun#define MAX_OFFSET 0x7f 897*4882a593Smuzhiyun#define HOST_MSG 0xff 898*4882a593Smuzhiyun#define BUS_16_BIT 0x01 899*4882a593Smuzhiyun 900*4882a593Smuzhiyun 901*4882a593Smuzhiyun/* Downloaded Constant Definitions */ 902*4882a593Smuzhiyun#define INVERTED_CACHESIZE_MASK 0x03 903*4882a593Smuzhiyun#define SG_PREFETCH_ALIGN_MASK 0x05 904*4882a593Smuzhiyun#define SG_PREFETCH_ADDR_MASK 0x06 905*4882a593Smuzhiyun#define QOUTFIFO_OFFSET 0x00 906*4882a593Smuzhiyun#define SG_PREFETCH_CNT 0x04 907*4882a593Smuzhiyun#define QINFIFO_OFFSET 0x01 908*4882a593Smuzhiyun#define CACHESIZE_MASK 0x02 909*4882a593Smuzhiyun#define DOWNLOAD_CONST_COUNT 0x07 910*4882a593Smuzhiyun 911*4882a593Smuzhiyun 912*4882a593Smuzhiyun/* Exported Labels */ 913