11da177e4SLinus Torvalds/* 21da177e4SLinus Torvalds * DO NOT EDIT - This file is automatically generated 31da177e4SLinus Torvalds * from the following source files: 41da177e4SLinus Torvalds * 579778a27SJames Bottomley * $Id: //depot/aic7xxx/aic7xxx/aic7xxx.seq#58 $ 679778a27SJames Bottomley * $Id: //depot/aic7xxx/aic7xxx/aic7xxx.reg#40 $ 71da177e4SLinus Torvalds */ 81da177e4SLinus Torvaldstypedef int (ahc_reg_print_t)(u_int, u_int *, u_int); 91da177e4SLinus Torvaldstypedef struct ahc_reg_parse_entry { 101da177e4SLinus Torvalds char *name; 111da177e4SLinus Torvalds uint8_t value; 121da177e4SLinus Torvalds uint8_t mask; 131da177e4SLinus Torvalds} ahc_reg_parse_entry_t; 141da177e4SLinus Torvalds 151da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 161da177e4SLinus Torvaldsahc_reg_print_t ahc_scsiseq_print; 171da177e4SLinus Torvalds#else 181da177e4SLinus Torvalds#define ahc_scsiseq_print(regvalue, cur_col, wrap) \ 191da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCSISEQ", 0x00, regvalue, cur_col, wrap) 201da177e4SLinus Torvalds#endif 211da177e4SLinus Torvalds 221da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 231da177e4SLinus Torvaldsahc_reg_print_t ahc_sxfrctl0_print; 241da177e4SLinus Torvalds#else 251da177e4SLinus Torvalds#define ahc_sxfrctl0_print(regvalue, cur_col, wrap) \ 261da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SXFRCTL0", 0x01, regvalue, cur_col, wrap) 271da177e4SLinus Torvalds#endif 281da177e4SLinus Torvalds 291da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 301da177e4SLinus Torvaldsahc_reg_print_t ahc_scsisigi_print; 311da177e4SLinus Torvalds#else 321da177e4SLinus Torvalds#define ahc_scsisigi_print(regvalue, cur_col, wrap) \ 331da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCSISIGI", 0x03, regvalue, cur_col, wrap) 341da177e4SLinus Torvalds#endif 351da177e4SLinus Torvalds 361da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 371da177e4SLinus Torvaldsahc_reg_print_t ahc_scsirate_print; 381da177e4SLinus Torvalds#else 391da177e4SLinus Torvalds#define ahc_scsirate_print(regvalue, cur_col, wrap) \ 401da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCSIRATE", 0x04, regvalue, cur_col, wrap) 411da177e4SLinus Torvalds#endif 421da177e4SLinus Torvalds 431da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 441da177e4SLinus Torvaldsahc_reg_print_t ahc_sstat0_print; 451da177e4SLinus Torvalds#else 461da177e4SLinus Torvalds#define ahc_sstat0_print(regvalue, cur_col, wrap) \ 471da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SSTAT0", 0x0b, regvalue, cur_col, wrap) 481da177e4SLinus Torvalds#endif 491da177e4SLinus Torvalds 501da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 511da177e4SLinus Torvaldsahc_reg_print_t ahc_sstat1_print; 521da177e4SLinus Torvalds#else 531da177e4SLinus Torvalds#define ahc_sstat1_print(regvalue, cur_col, wrap) \ 541da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SSTAT1", 0x0c, regvalue, cur_col, wrap) 551da177e4SLinus Torvalds#endif 561da177e4SLinus Torvalds 571da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 581da177e4SLinus Torvaldsahc_reg_print_t ahc_sstat2_print; 591da177e4SLinus Torvalds#else 601da177e4SLinus Torvalds#define ahc_sstat2_print(regvalue, cur_col, wrap) \ 611da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SSTAT2", 0x0d, regvalue, cur_col, wrap) 621da177e4SLinus Torvalds#endif 631da177e4SLinus Torvalds 641da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 651da177e4SLinus Torvaldsahc_reg_print_t ahc_sstat3_print; 661da177e4SLinus Torvalds#else 671da177e4SLinus Torvalds#define ahc_sstat3_print(regvalue, cur_col, wrap) \ 681da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SSTAT3", 0x0e, regvalue, cur_col, wrap) 691da177e4SLinus Torvalds#endif 701da177e4SLinus Torvalds 711da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 721da177e4SLinus Torvaldsahc_reg_print_t ahc_simode0_print; 731da177e4SLinus Torvalds#else 741da177e4SLinus Torvalds#define ahc_simode0_print(regvalue, cur_col, wrap) \ 751da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SIMODE0", 0x10, regvalue, cur_col, wrap) 761da177e4SLinus Torvalds#endif 771da177e4SLinus Torvalds 781da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 791da177e4SLinus Torvaldsahc_reg_print_t ahc_simode1_print; 801da177e4SLinus Torvalds#else 811da177e4SLinus Torvalds#define ahc_simode1_print(regvalue, cur_col, wrap) \ 821da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SIMODE1", 0x11, regvalue, cur_col, wrap) 831da177e4SLinus Torvalds#endif 841da177e4SLinus Torvalds 851da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 861da177e4SLinus Torvaldsahc_reg_print_t ahc_scsibusl_print; 871da177e4SLinus Torvalds#else 881da177e4SLinus Torvalds#define ahc_scsibusl_print(regvalue, cur_col, wrap) \ 891da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCSIBUSL", 0x12, regvalue, cur_col, wrap) 901da177e4SLinus Torvalds#endif 911da177e4SLinus Torvalds 921da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 931da177e4SLinus Torvaldsahc_reg_print_t ahc_sblkctl_print; 941da177e4SLinus Torvalds#else 951da177e4SLinus Torvalds#define ahc_sblkctl_print(regvalue, cur_col, wrap) \ 961da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SBLKCTL", 0x1f, regvalue, cur_col, wrap) 971da177e4SLinus Torvalds#endif 981da177e4SLinus Torvalds 991da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1001da177e4SLinus Torvaldsahc_reg_print_t ahc_seq_flags_print; 1011da177e4SLinus Torvalds#else 1021da177e4SLinus Torvalds#define ahc_seq_flags_print(regvalue, cur_col, wrap) \ 1031da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SEQ_FLAGS", 0x3c, regvalue, cur_col, wrap) 1041da177e4SLinus Torvalds#endif 1051da177e4SLinus Torvalds 1061da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1071da177e4SLinus Torvaldsahc_reg_print_t ahc_lastphase_print; 1081da177e4SLinus Torvalds#else 1091da177e4SLinus Torvalds#define ahc_lastphase_print(regvalue, cur_col, wrap) \ 1101da177e4SLinus Torvalds ahc_print_register(NULL, 0, "LASTPHASE", 0x3f, regvalue, cur_col, wrap) 1111da177e4SLinus Torvalds#endif 1121da177e4SLinus Torvalds 1131da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1141da177e4SLinus Torvaldsahc_reg_print_t ahc_seqctl_print; 1151da177e4SLinus Torvalds#else 1161da177e4SLinus Torvalds#define ahc_seqctl_print(regvalue, cur_col, wrap) \ 1171da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SEQCTL", 0x60, regvalue, cur_col, wrap) 1181da177e4SLinus Torvalds#endif 1191da177e4SLinus Torvalds 1201da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1211da177e4SLinus Torvaldsahc_reg_print_t ahc_sram_base_print; 1221da177e4SLinus Torvalds#else 1231da177e4SLinus Torvalds#define ahc_sram_base_print(regvalue, cur_col, wrap) \ 1241da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SRAM_BASE", 0x70, regvalue, cur_col, wrap) 1251da177e4SLinus Torvalds#endif 1261da177e4SLinus Torvalds 1271da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1281da177e4SLinus Torvaldsahc_reg_print_t ahc_error_print; 1291da177e4SLinus Torvalds#else 1301da177e4SLinus Torvalds#define ahc_error_print(regvalue, cur_col, wrap) \ 1311da177e4SLinus Torvalds ahc_print_register(NULL, 0, "ERROR", 0x92, regvalue, cur_col, wrap) 1321da177e4SLinus Torvalds#endif 1331da177e4SLinus Torvalds 1341da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1351da177e4SLinus Torvaldsahc_reg_print_t ahc_dfcntrl_print; 1361da177e4SLinus Torvalds#else 1371da177e4SLinus Torvalds#define ahc_dfcntrl_print(regvalue, cur_col, wrap) \ 1381da177e4SLinus Torvalds ahc_print_register(NULL, 0, "DFCNTRL", 0x93, regvalue, cur_col, wrap) 1391da177e4SLinus Torvalds#endif 1401da177e4SLinus Torvalds 1411da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1421da177e4SLinus Torvaldsahc_reg_print_t ahc_dfstatus_print; 1431da177e4SLinus Torvalds#else 1441da177e4SLinus Torvalds#define ahc_dfstatus_print(regvalue, cur_col, wrap) \ 1451da177e4SLinus Torvalds ahc_print_register(NULL, 0, "DFSTATUS", 0x94, regvalue, cur_col, wrap) 1461da177e4SLinus Torvalds#endif 1471da177e4SLinus Torvalds 1481da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1491da177e4SLinus Torvaldsahc_reg_print_t ahc_scsiphase_print; 1501da177e4SLinus Torvalds#else 1511da177e4SLinus Torvalds#define ahc_scsiphase_print(regvalue, cur_col, wrap) \ 1521da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCSIPHASE", 0x9e, regvalue, cur_col, wrap) 1531da177e4SLinus Torvalds#endif 1541da177e4SLinus Torvalds 1551da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1561da177e4SLinus Torvaldsahc_reg_print_t ahc_scb_base_print; 1571da177e4SLinus Torvalds#else 1581da177e4SLinus Torvalds#define ahc_scb_base_print(regvalue, cur_col, wrap) \ 1591da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCB_BASE", 0xa0, regvalue, cur_col, wrap) 1601da177e4SLinus Torvalds#endif 1611da177e4SLinus Torvalds 1621da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1631da177e4SLinus Torvaldsahc_reg_print_t ahc_scb_control_print; 1641da177e4SLinus Torvalds#else 1651da177e4SLinus Torvalds#define ahc_scb_control_print(regvalue, cur_col, wrap) \ 1661da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCB_CONTROL", 0xb8, regvalue, cur_col, wrap) 1671da177e4SLinus Torvalds#endif 1681da177e4SLinus Torvalds 1691da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1701da177e4SLinus Torvaldsahc_reg_print_t ahc_scb_scsiid_print; 1711da177e4SLinus Torvalds#else 1721da177e4SLinus Torvalds#define ahc_scb_scsiid_print(regvalue, cur_col, wrap) \ 1731da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCB_SCSIID", 0xb9, regvalue, cur_col, wrap) 1741da177e4SLinus Torvalds#endif 1751da177e4SLinus Torvalds 1761da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1771da177e4SLinus Torvaldsahc_reg_print_t ahc_scb_lun_print; 1781da177e4SLinus Torvalds#else 1791da177e4SLinus Torvalds#define ahc_scb_lun_print(regvalue, cur_col, wrap) \ 1801da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCB_LUN", 0xba, regvalue, cur_col, wrap) 1811da177e4SLinus Torvalds#endif 1821da177e4SLinus Torvalds 1831da177e4SLinus Torvalds#if AIC_DEBUG_REGISTERS 1841da177e4SLinus Torvaldsahc_reg_print_t ahc_scb_tag_print; 1851da177e4SLinus Torvalds#else 1861da177e4SLinus Torvalds#define ahc_scb_tag_print(regvalue, cur_col, wrap) \ 1871da177e4SLinus Torvalds ahc_print_register(NULL, 0, "SCB_TAG", 0xbb, regvalue, cur_col, wrap) 1881da177e4SLinus Torvalds#endif 1891da177e4SLinus Torvalds 1901da177e4SLinus Torvalds 1911da177e4SLinus Torvalds#define SCSISEQ 0x00 1921da177e4SLinus Torvalds#define TEMODE 0x80 1931da177e4SLinus Torvalds#define SCSIRSTO 0x01 1941da177e4SLinus Torvalds 1951da177e4SLinus Torvalds#define SXFRCTL0 0x01 1961da177e4SLinus Torvalds#define DFON 0x80 1971da177e4SLinus Torvalds#define DFPEXP 0x40 1981da177e4SLinus Torvalds#define FAST20 0x20 1991da177e4SLinus Torvalds#define CLRSTCNT 0x10 2001da177e4SLinus Torvalds#define SPIOEN 0x08 2011da177e4SLinus Torvalds#define SCAMEN 0x04 2021da177e4SLinus Torvalds#define CLRCHN 0x02 2031da177e4SLinus Torvalds 2041da177e4SLinus Torvalds#define SXFRCTL1 0x02 2051da177e4SLinus Torvalds#define STIMESEL 0x18 2061da177e4SLinus Torvalds#define BITBUCKET 0x80 2071da177e4SLinus Torvalds#define SWRAPEN 0x40 2081da177e4SLinus Torvalds#define ENSTIMER 0x04 2091da177e4SLinus Torvalds#define ACTNEGEN 0x02 2101da177e4SLinus Torvalds#define STPWEN 0x01 2111da177e4SLinus Torvalds 2121da177e4SLinus Torvalds#define SCSISIGO 0x03 2131da177e4SLinus Torvalds#define CDO 0x80 2141da177e4SLinus Torvalds#define IOO 0x40 2151da177e4SLinus Torvalds#define MSGO 0x20 2161da177e4SLinus Torvalds#define ATNO 0x10 2171da177e4SLinus Torvalds#define SELO 0x08 2181da177e4SLinus Torvalds#define BSYO 0x04 2191da177e4SLinus Torvalds#define REQO 0x02 2201da177e4SLinus Torvalds#define ACKO 0x01 2211da177e4SLinus Torvalds 2221da177e4SLinus Torvalds#define SCSISIGI 0x03 2231da177e4SLinus Torvalds#define P_DATAIN_DT 0x60 2241da177e4SLinus Torvalds#define P_DATAOUT_DT 0x20 2251da177e4SLinus Torvalds#define ATNI 0x10 2261da177e4SLinus Torvalds#define SELI 0x08 2271da177e4SLinus Torvalds#define BSYI 0x04 2281da177e4SLinus Torvalds#define REQI 0x02 2291da177e4SLinus Torvalds#define ACKI 0x01 2301da177e4SLinus Torvalds 2311da177e4SLinus Torvalds#define SCSIRATE 0x04 2321da177e4SLinus Torvalds#define SXFR 0x70 2331da177e4SLinus Torvalds#define SOFS 0x0f 2341da177e4SLinus Torvalds#define SXFR_ULTRA2 0x0f 2351da177e4SLinus Torvalds#define WIDEXFER 0x80 2361da177e4SLinus Torvalds#define ENABLE_CRC 0x40 2371da177e4SLinus Torvalds#define SINGLE_EDGE 0x10 2381da177e4SLinus Torvalds 2391da177e4SLinus Torvalds#define SCSIID 0x05 2401da177e4SLinus Torvalds#define SCSIOFFSET 0x05 2411da177e4SLinus Torvalds#define SOFS_ULTRA2 0x7f 2421da177e4SLinus Torvalds 2431da177e4SLinus Torvalds#define SCSIDATL 0x06 2441da177e4SLinus Torvalds 2451da177e4SLinus Torvalds#define SCSIDATH 0x07 2461da177e4SLinus Torvalds 2471da177e4SLinus Torvalds#define OPTIONMODE 0x08 2481da177e4SLinus Torvalds#define OPTIONMODE_DEFAULTS 0x03 2491da177e4SLinus Torvalds#define AUTORATEEN 0x80 2501da177e4SLinus Torvalds#define AUTOACKEN 0x40 2511da177e4SLinus Torvalds#define ATNMGMNTEN 0x20 2521da177e4SLinus Torvalds#define BUSFREEREV 0x10 2531da177e4SLinus Torvalds#define EXPPHASEDIS 0x08 2541da177e4SLinus Torvalds#define SCSIDATL_IMGEN 0x04 2551da177e4SLinus Torvalds#define AUTO_MSGOUT_DE 0x02 2561da177e4SLinus Torvalds#define DIS_MSGIN_DUALEDGE 0x01 2571da177e4SLinus Torvalds 258*2ae203faSMichał Mirosław#define STCNT 0x08 259*2ae203faSMichał Mirosław 2601da177e4SLinus Torvalds#define TARGCRCCNT 0x0a 2611da177e4SLinus Torvalds 2621da177e4SLinus Torvalds#define CLRSINT0 0x0b 2631da177e4SLinus Torvalds#define CLRSELDO 0x40 2641da177e4SLinus Torvalds#define CLRSELDI 0x20 2651da177e4SLinus Torvalds#define CLRSELINGO 0x10 2661da177e4SLinus Torvalds#define CLRIOERR 0x08 2671da177e4SLinus Torvalds#define CLRSWRAP 0x08 2681da177e4SLinus Torvalds#define CLRSPIORDY 0x02 2691da177e4SLinus Torvalds 2701da177e4SLinus Torvalds#define SSTAT0 0x0b 2711da177e4SLinus Torvalds#define TARGET 0x80 2721da177e4SLinus Torvalds#define SELDO 0x40 2731da177e4SLinus Torvalds#define SELDI 0x20 2741da177e4SLinus Torvalds#define SELINGO 0x10 2751da177e4SLinus Torvalds#define SWRAP 0x08 2761da177e4SLinus Torvalds#define IOERR 0x08 2771da177e4SLinus Torvalds#define SDONE 0x04 2781da177e4SLinus Torvalds#define SPIORDY 0x02 2791da177e4SLinus Torvalds#define DMADONE 0x01 2801da177e4SLinus Torvalds 2811da177e4SLinus Torvalds#define CLRSINT1 0x0c 2821da177e4SLinus Torvalds#define CLRSELTIMEO 0x80 2831da177e4SLinus Torvalds#define CLRATNO 0x40 2841da177e4SLinus Torvalds#define CLRSCSIRSTI 0x20 2851da177e4SLinus Torvalds#define CLRBUSFREE 0x08 2861da177e4SLinus Torvalds#define CLRSCSIPERR 0x04 2871da177e4SLinus Torvalds#define CLRPHASECHG 0x02 2881da177e4SLinus Torvalds#define CLRREQINIT 0x01 2891da177e4SLinus Torvalds 2901da177e4SLinus Torvalds#define SSTAT1 0x0c 2911da177e4SLinus Torvalds#define SELTO 0x80 2921da177e4SLinus Torvalds#define ATNTARG 0x40 2931da177e4SLinus Torvalds#define SCSIRSTI 0x20 2941da177e4SLinus Torvalds#define PHASEMIS 0x10 2951da177e4SLinus Torvalds#define BUSFREE 0x08 2961da177e4SLinus Torvalds#define SCSIPERR 0x04 2971da177e4SLinus Torvalds#define PHASECHG 0x02 2981da177e4SLinus Torvalds#define REQINIT 0x01 2991da177e4SLinus Torvalds 3001da177e4SLinus Torvalds#define SSTAT2 0x0d 3011da177e4SLinus Torvalds#define SFCNT 0x1f 3021da177e4SLinus Torvalds#define OVERRUN 0x80 3031da177e4SLinus Torvalds#define SHVALID 0x40 3041da177e4SLinus Torvalds#define EXP_ACTIVE 0x10 3051da177e4SLinus Torvalds#define CRCVALERR 0x08 3061da177e4SLinus Torvalds#define CRCENDERR 0x04 3071da177e4SLinus Torvalds#define CRCREQERR 0x02 3081da177e4SLinus Torvalds#define DUAL_EDGE_ERR 0x01 3091da177e4SLinus Torvalds 3101da177e4SLinus Torvalds#define SSTAT3 0x0e 3111da177e4SLinus Torvalds#define SCSICNT 0xf0 3121da177e4SLinus Torvalds#define U2OFFCNT 0x7f 3131da177e4SLinus Torvalds#define OFFCNT 0x0f 3141da177e4SLinus Torvalds 3151da177e4SLinus Torvalds#define SCSIID_ULTRA2 0x0f 3161da177e4SLinus Torvalds 3171da177e4SLinus Torvalds#define SIMODE0 0x10 3181da177e4SLinus Torvalds#define ENSELDO 0x40 3191da177e4SLinus Torvalds#define ENSELDI 0x20 3201da177e4SLinus Torvalds#define ENSELINGO 0x10 3211da177e4SLinus Torvalds#define ENIOERR 0x08 3221da177e4SLinus Torvalds#define ENSWRAP 0x08 3231da177e4SLinus Torvalds#define ENSDONE 0x04 3241da177e4SLinus Torvalds#define ENSPIORDY 0x02 3251da177e4SLinus Torvalds#define ENDMADONE 0x01 3261da177e4SLinus Torvalds 3271da177e4SLinus Torvalds#define SIMODE1 0x11 3281da177e4SLinus Torvalds#define ENSELTIMO 0x80 3291da177e4SLinus Torvalds#define ENATNTARG 0x40 3301da177e4SLinus Torvalds#define ENSCSIRST 0x20 3311da177e4SLinus Torvalds#define ENPHASEMIS 0x10 3321da177e4SLinus Torvalds#define ENBUSFREE 0x08 3331da177e4SLinus Torvalds#define ENSCSIPERR 0x04 3341da177e4SLinus Torvalds#define ENPHASECHG 0x02 3351da177e4SLinus Torvalds#define ENREQINIT 0x01 3361da177e4SLinus Torvalds 3371da177e4SLinus Torvalds#define SCSIBUSL 0x12 3381da177e4SLinus Torvalds 3391da177e4SLinus Torvalds#define SCSIBUSH 0x13 3401da177e4SLinus Torvalds 3411da177e4SLinus Torvalds#define SXFRCTL2 0x13 3421da177e4SLinus Torvalds#define ASYNC_SETUP 0x07 3431da177e4SLinus Torvalds#define AUTORSTDIS 0x10 3441da177e4SLinus Torvalds#define CMDDMAEN 0x08 3451da177e4SLinus Torvalds 3461da177e4SLinus Torvalds#define SHADDR 0x14 3471da177e4SLinus Torvalds 3481da177e4SLinus Torvalds#define SELTIMER 0x18 3491da177e4SLinus Torvalds#define TARGIDIN 0x18 3501da177e4SLinus Torvalds#define STAGE6 0x20 3511da177e4SLinus Torvalds#define STAGE5 0x10 3521da177e4SLinus Torvalds#define STAGE4 0x08 3531da177e4SLinus Torvalds#define STAGE3 0x04 3541da177e4SLinus Torvalds#define STAGE2 0x02 3551da177e4SLinus Torvalds#define STAGE1 0x01 3561da177e4SLinus Torvalds 3571da177e4SLinus Torvalds#define SELID 0x19 3581da177e4SLinus Torvalds#define SELID_MASK 0xf0 3591da177e4SLinus Torvalds#define ONEBIT 0x08 3601da177e4SLinus Torvalds 3611da177e4SLinus Torvalds#define SCAMCTL 0x1a 3621da177e4SLinus Torvalds#define SCAMLVL 0x03 3631da177e4SLinus Torvalds#define ENSCAMSELO 0x80 3641da177e4SLinus Torvalds#define CLRSCAMSELID 0x40 3651da177e4SLinus Torvalds#define ALTSTIM 0x20 3661da177e4SLinus Torvalds#define DFLTTID 0x10 3671da177e4SLinus Torvalds 3681da177e4SLinus Torvalds#define SPIOCAP 0x1b 3691da177e4SLinus Torvalds#define SOFT1 0x80 3701da177e4SLinus Torvalds#define SOFT0 0x40 3711da177e4SLinus Torvalds#define SOFTCMDEN 0x20 3721da177e4SLinus Torvalds#define EXT_BRDCTL 0x10 3731da177e4SLinus Torvalds#define SEEPROM 0x08 3741da177e4SLinus Torvalds#define EEPROM 0x04 3751da177e4SLinus Torvalds#define ROM 0x02 3761da177e4SLinus Torvalds#define SSPIOCPS 0x01 3771da177e4SLinus Torvalds 378*2ae203faSMichał Mirosław#define TARGID 0x1b 379*2ae203faSMichał Mirosław 3801da177e4SLinus Torvalds#define BRDCTL 0x1d 3811da177e4SLinus Torvalds#define BRDDAT7 0x80 3821da177e4SLinus Torvalds#define BRDDAT6 0x40 3831da177e4SLinus Torvalds#define BRDDAT5 0x20 3841da177e4SLinus Torvalds#define BRDSTB 0x10 385*2ae203faSMichał Mirosław#define BRDDAT4 0x10 3861da177e4SLinus Torvalds#define BRDDAT3 0x08 3871da177e4SLinus Torvalds#define BRDCS 0x08 3881da177e4SLinus Torvalds#define BRDDAT2 0x04 3891da177e4SLinus Torvalds#define BRDRW 0x04 3901da177e4SLinus Torvalds#define BRDRW_ULTRA2 0x02 3911da177e4SLinus Torvalds#define BRDCTL1 0x02 3921da177e4SLinus Torvalds#define BRDCTL0 0x01 3931da177e4SLinus Torvalds#define BRDSTB_ULTRA2 0x01 3941da177e4SLinus Torvalds 3951da177e4SLinus Torvalds#define SEECTL 0x1e 3961da177e4SLinus Torvalds#define EXTARBACK 0x80 3971da177e4SLinus Torvalds#define EXTARBREQ 0x40 3981da177e4SLinus Torvalds#define SEEMS 0x20 3991da177e4SLinus Torvalds#define SEERDY 0x10 4001da177e4SLinus Torvalds#define SEECS 0x08 4011da177e4SLinus Torvalds#define SEECK 0x04 4021da177e4SLinus Torvalds#define SEEDO 0x02 4031da177e4SLinus Torvalds#define SEEDI 0x01 4041da177e4SLinus Torvalds 4051da177e4SLinus Torvalds#define SBLKCTL 0x1f 4061da177e4SLinus Torvalds#define DIAGLEDEN 0x80 4071da177e4SLinus Torvalds#define DIAGLEDON 0x40 4081da177e4SLinus Torvalds#define AUTOFLUSHDIS 0x20 4091da177e4SLinus Torvalds#define SELBUSB 0x08 410*2ae203faSMichał Mirosław#define ENAB40 0x08 4111da177e4SLinus Torvalds#define ENAB20 0x04 4121da177e4SLinus Torvalds#define SELWIDE 0x02 4131da177e4SLinus Torvalds#define XCVR 0x01 4141da177e4SLinus Torvalds 4151da177e4SLinus Torvalds#define BUSY_TARGETS 0x20 4161da177e4SLinus Torvalds#define TARG_SCSIRATE 0x20 4171da177e4SLinus Torvalds 4181da177e4SLinus Torvalds#define ULTRA_ENB 0x30 4191da177e4SLinus Torvalds#define CMDSIZE_TABLE 0x30 4201da177e4SLinus Torvalds 4211da177e4SLinus Torvalds#define DISC_DSB 0x32 4221da177e4SLinus Torvalds 4231da177e4SLinus Torvalds#define CMDSIZE_TABLE_TAIL 0x34 4241da177e4SLinus Torvalds 4251da177e4SLinus Torvalds#define MWI_RESIDUAL 0x38 4261da177e4SLinus Torvalds 4271da177e4SLinus Torvalds#define NEXT_QUEUED_SCB 0x39 4281da177e4SLinus Torvalds 4291da177e4SLinus Torvalds#define MSG_OUT 0x3a 4301da177e4SLinus Torvalds 4311da177e4SLinus Torvalds#define DMAPARAMS 0x3b 4321da177e4SLinus Torvalds#define PRELOADEN 0x80 4331da177e4SLinus Torvalds#define WIDEODD 0x40 4341da177e4SLinus Torvalds#define SCSIEN 0x20 4351da177e4SLinus Torvalds#define SDMAEN 0x10 4361da177e4SLinus Torvalds#define SDMAENACK 0x10 4371da177e4SLinus Torvalds#define HDMAEN 0x08 4381da177e4SLinus Torvalds#define HDMAENACK 0x08 4391da177e4SLinus Torvalds#define DIRECTION 0x04 4401da177e4SLinus Torvalds#define FIFOFLUSH 0x02 4411da177e4SLinus Torvalds#define FIFORESET 0x01 4421da177e4SLinus Torvalds 4431da177e4SLinus Torvalds#define SEQ_FLAGS 0x3c 4441da177e4SLinus Torvalds#define NOT_IDENTIFIED 0x80 4451da177e4SLinus Torvalds#define NO_CDB_SENT 0x40 4461da177e4SLinus Torvalds#define TARGET_CMD_IS_TAGGED 0x40 4471da177e4SLinus Torvalds#define DPHASE 0x20 4481da177e4SLinus Torvalds#define TARG_CMD_PENDING 0x10 4491da177e4SLinus Torvalds#define CMDPHASE_PENDING 0x08 4501da177e4SLinus Torvalds#define DPHASE_PENDING 0x04 4511da177e4SLinus Torvalds#define SPHASE_PENDING 0x02 4521da177e4SLinus Torvalds#define NO_DISCONNECT 0x01 4531da177e4SLinus Torvalds 4541da177e4SLinus Torvalds#define SAVED_SCSIID 0x3d 4551da177e4SLinus Torvalds 4561da177e4SLinus Torvalds#define SAVED_LUN 0x3e 4571da177e4SLinus Torvalds 4581da177e4SLinus Torvalds#define LASTPHASE 0x3f 4591da177e4SLinus Torvalds#define P_MESGIN 0xe0 4601da177e4SLinus Torvalds#define PHASE_MASK 0xe0 4611da177e4SLinus Torvalds#define P_STATUS 0xc0 4621da177e4SLinus Torvalds#define P_MESGOUT 0xa0 4631da177e4SLinus Torvalds#define P_COMMAND 0x80 4641da177e4SLinus Torvalds#define P_DATAIN 0x40 4651da177e4SLinus Torvalds#define P_BUSFREE 0x01 4661da177e4SLinus Torvalds#define P_DATAOUT 0x00 4671da177e4SLinus Torvalds#define CDI 0x80 4681da177e4SLinus Torvalds#define IOI 0x40 4691da177e4SLinus Torvalds#define MSGI 0x20 4701da177e4SLinus Torvalds 4711da177e4SLinus Torvalds#define WAITING_SCBH 0x40 4721da177e4SLinus Torvalds 4731da177e4SLinus Torvalds#define DISCONNECTED_SCBH 0x41 4741da177e4SLinus Torvalds 4751da177e4SLinus Torvalds#define FREE_SCBH 0x42 4761da177e4SLinus Torvalds 4771da177e4SLinus Torvalds#define COMPLETE_SCBH 0x43 4781da177e4SLinus Torvalds 4791da177e4SLinus Torvalds#define HSCB_ADDR 0x44 4801da177e4SLinus Torvalds 4811da177e4SLinus Torvalds#define SHARED_DATA_ADDR 0x48 4821da177e4SLinus Torvalds 4831da177e4SLinus Torvalds#define KERNEL_QINPOS 0x4c 4841da177e4SLinus Torvalds 4851da177e4SLinus Torvalds#define QINPOS 0x4d 4861da177e4SLinus Torvalds 4871da177e4SLinus Torvalds#define QOUTPOS 0x4e 4881da177e4SLinus Torvalds 4891da177e4SLinus Torvalds#define KERNEL_TQINPOS 0x4f 4901da177e4SLinus Torvalds 4911da177e4SLinus Torvalds#define TQINPOS 0x50 4921da177e4SLinus Torvalds 4931da177e4SLinus Torvalds#define ARG_1 0x51 4941da177e4SLinus Torvalds#define RETURN_1 0x51 4951da177e4SLinus Torvalds#define SEND_MSG 0x80 4961da177e4SLinus Torvalds#define SEND_SENSE 0x40 4971da177e4SLinus Torvalds#define SEND_REJ 0x20 4981da177e4SLinus Torvalds#define MSGOUT_PHASEMIS 0x10 4991da177e4SLinus Torvalds#define EXIT_MSG_LOOP 0x08 5001da177e4SLinus Torvalds#define CONT_MSG_LOOP 0x04 5011da177e4SLinus Torvalds#define CONT_TARG_SESSION 0x02 5021da177e4SLinus Torvalds 5031da177e4SLinus Torvalds#define ARG_2 0x52 5041da177e4SLinus Torvalds#define RETURN_2 0x52 5051da177e4SLinus Torvalds 5061da177e4SLinus Torvalds#define LAST_MSG 0x53 50779778a27SJames Bottomley#define TARG_IMMEDIATE_SCB 0x53 5081da177e4SLinus Torvalds 5091da177e4SLinus Torvalds#define SCSISEQ_TEMPLATE 0x54 5101da177e4SLinus Torvalds#define ENSELO 0x40 5111da177e4SLinus Torvalds#define ENSELI 0x20 5121da177e4SLinus Torvalds#define ENRSELI 0x10 5131da177e4SLinus Torvalds#define ENAUTOATNO 0x08 5141da177e4SLinus Torvalds#define ENAUTOATNI 0x04 5151da177e4SLinus Torvalds#define ENAUTOATNP 0x02 5161da177e4SLinus Torvalds 5171da177e4SLinus Torvalds#define HA_274_BIOSGLOBAL 0x56 5181da177e4SLinus Torvalds#define INITIATOR_TAG 0x56 5191da177e4SLinus Torvalds#define HA_274_EXTENDED_TRANS 0x01 5201da177e4SLinus Torvalds 5211da177e4SLinus Torvalds#define SEQ_FLAGS2 0x57 5221da177e4SLinus Torvalds#define TARGET_MSG_PENDING 0x02 5231da177e4SLinus Torvalds#define SCB_DMA 0x01 5241da177e4SLinus Torvalds 5251da177e4SLinus Torvalds#define SCSICONF 0x5a 5261da177e4SLinus Torvalds#define HWSCSIID 0x0f 5271da177e4SLinus Torvalds#define HSCSIID 0x07 5281da177e4SLinus Torvalds#define TERM_ENB 0x80 5291da177e4SLinus Torvalds#define RESET_SCSI 0x40 5301da177e4SLinus Torvalds#define ENSPCHK 0x20 5311da177e4SLinus Torvalds 5321da177e4SLinus Torvalds#define INTDEF 0x5c 5331da177e4SLinus Torvalds#define VECTOR 0x0f 5341da177e4SLinus Torvalds#define EDGE_TRIG 0x80 5351da177e4SLinus Torvalds 5361da177e4SLinus Torvalds#define HOSTCONF 0x5d 5371da177e4SLinus Torvalds 5381da177e4SLinus Torvalds#define HA_274_BIOSCTRL 0x5f 5391da177e4SLinus Torvalds#define BIOSDISABLED 0x30 5401da177e4SLinus Torvalds#define BIOSMODE 0x30 5411da177e4SLinus Torvalds#define CHANNEL_B_PRIMARY 0x08 5421da177e4SLinus Torvalds 5431da177e4SLinus Torvalds#define SEQCTL 0x60 5441da177e4SLinus Torvalds#define PERRORDIS 0x80 5451da177e4SLinus Torvalds#define PAUSEDIS 0x40 5461da177e4SLinus Torvalds#define FAILDIS 0x20 5471da177e4SLinus Torvalds#define FASTMODE 0x10 5481da177e4SLinus Torvalds#define BRKADRINTEN 0x08 5491da177e4SLinus Torvalds#define STEP 0x04 5501da177e4SLinus Torvalds#define SEQRESET 0x02 5511da177e4SLinus Torvalds#define LOADRAM 0x01 5521da177e4SLinus Torvalds 5531da177e4SLinus Torvalds#define SEQRAM 0x61 5541da177e4SLinus Torvalds 5551da177e4SLinus Torvalds#define SEQADDR0 0x62 5561da177e4SLinus Torvalds 5571da177e4SLinus Torvalds#define SEQADDR1 0x63 5581da177e4SLinus Torvalds#define SEQADDR1_MASK 0x01 5591da177e4SLinus Torvalds 5601da177e4SLinus Torvalds#define ACCUM 0x64 5611da177e4SLinus Torvalds 5621da177e4SLinus Torvalds#define SINDEX 0x65 5631da177e4SLinus Torvalds 5641da177e4SLinus Torvalds#define DINDEX 0x66 5651da177e4SLinus Torvalds 5661da177e4SLinus Torvalds#define ALLONES 0x69 5671da177e4SLinus Torvalds 5681da177e4SLinus Torvalds#define ALLZEROS 0x6a 5691da177e4SLinus Torvalds 5701da177e4SLinus Torvalds#define NONE 0x6a 5711da177e4SLinus Torvalds 5721da177e4SLinus Torvalds#define FLAGS 0x6b 5731da177e4SLinus Torvalds#define ZERO 0x02 5741da177e4SLinus Torvalds#define CARRY 0x01 5751da177e4SLinus Torvalds 5761da177e4SLinus Torvalds#define SINDIR 0x6c 5771da177e4SLinus Torvalds 5781da177e4SLinus Torvalds#define DINDIR 0x6d 5791da177e4SLinus Torvalds 5801da177e4SLinus Torvalds#define FUNCTION1 0x6e 5811da177e4SLinus Torvalds 5821da177e4SLinus Torvalds#define STACK 0x6f 5831da177e4SLinus Torvalds 5841da177e4SLinus Torvalds#define TARG_OFFSET 0x70 5851da177e4SLinus Torvalds 5861da177e4SLinus Torvalds#define SRAM_BASE 0x70 5871da177e4SLinus Torvalds 5881da177e4SLinus Torvalds#define BCTL 0x84 5891da177e4SLinus Torvalds#define ACE 0x08 5901da177e4SLinus Torvalds#define ENABLE 0x01 5911da177e4SLinus Torvalds 5921da177e4SLinus Torvalds#define DSCOMMAND0 0x84 5931da177e4SLinus Torvalds#define CACHETHEN 0x80 5941da177e4SLinus Torvalds#define DPARCKEN 0x40 5951da177e4SLinus Torvalds#define MPARCKEN 0x20 5961da177e4SLinus Torvalds#define EXTREQLCK 0x10 5971da177e4SLinus Torvalds#define INTSCBRAMSEL 0x08 5981da177e4SLinus Torvalds#define RAMPS 0x04 5991da177e4SLinus Torvalds#define USCBSIZE32 0x02 6001da177e4SLinus Torvalds#define CIOPARCKEN 0x01 6011da177e4SLinus Torvalds 6021da177e4SLinus Torvalds#define BUSTIME 0x85 6031da177e4SLinus Torvalds#define BOFF 0xf0 6041da177e4SLinus Torvalds#define BON 0x0f 6051da177e4SLinus Torvalds 6061da177e4SLinus Torvalds#define DSCOMMAND1 0x85 6071da177e4SLinus Torvalds#define DSLATT 0xfc 6081da177e4SLinus Torvalds#define HADDLDSEL1 0x02 6091da177e4SLinus Torvalds#define HADDLDSEL0 0x01 6101da177e4SLinus Torvalds 6111da177e4SLinus Torvalds#define BUSSPD 0x86 6121da177e4SLinus Torvalds#define DFTHRSH 0xc0 6131da177e4SLinus Torvalds#define DFTHRSH_75 0x80 6141da177e4SLinus Torvalds#define STBOFF 0x38 6151da177e4SLinus Torvalds#define STBON 0x07 6161da177e4SLinus Torvalds 6171da177e4SLinus Torvalds#define HS_MAILBOX 0x86 6181da177e4SLinus Torvalds#define HOST_MAILBOX 0xf0 6191da177e4SLinus Torvalds#define HOST_TQINPOS 0x80 6201da177e4SLinus Torvalds#define SEQ_MAILBOX 0x0f 6211da177e4SLinus Torvalds 6221da177e4SLinus Torvalds#define DSPCISTATUS 0x86 6231da177e4SLinus Torvalds#define DFTHRSH_100 0xc0 6241da177e4SLinus Torvalds 6251da177e4SLinus Torvalds#define HCNTRL 0x87 6261da177e4SLinus Torvalds#define POWRDN 0x40 6271da177e4SLinus Torvalds#define SWINT 0x10 6281da177e4SLinus Torvalds#define IRQMS 0x08 6291da177e4SLinus Torvalds#define PAUSE 0x04 6301da177e4SLinus Torvalds#define INTEN 0x02 6311da177e4SLinus Torvalds#define CHIPRST 0x01 6321da177e4SLinus Torvalds#define CHIPRSTACK 0x01 6331da177e4SLinus Torvalds 6341da177e4SLinus Torvalds#define HADDR 0x88 6351da177e4SLinus Torvalds 6361da177e4SLinus Torvalds#define HCNT 0x8c 6371da177e4SLinus Torvalds 6381da177e4SLinus Torvalds#define SCBPTR 0x90 6391da177e4SLinus Torvalds 6401da177e4SLinus Torvalds#define INTSTAT 0x91 6411da177e4SLinus Torvalds#define SEQINT_MASK 0xf1 6421da177e4SLinus Torvalds#define OUT_OF_RANGE 0xe1 6431da177e4SLinus Torvalds#define NO_FREE_SCB 0xd1 6441da177e4SLinus Torvalds#define SCB_MISMATCH 0xc1 6451da177e4SLinus Torvalds#define MISSED_BUSFREE 0xb1 6461da177e4SLinus Torvalds#define MKMSG_FAILED 0xa1 6471da177e4SLinus Torvalds#define DATA_OVERRUN 0x91 6481da177e4SLinus Torvalds#define PERR_DETECTED 0x81 6491da177e4SLinus Torvalds#define BAD_STATUS 0x71 6501da177e4SLinus Torvalds#define HOST_MSG_LOOP 0x61 6511da177e4SLinus Torvalds#define PDATA_REINIT 0x51 6521da177e4SLinus Torvalds#define IGN_WIDE_RES 0x41 6531da177e4SLinus Torvalds#define NO_MATCH 0x31 6541da177e4SLinus Torvalds#define PROTO_VIOLATION 0x21 6551da177e4SLinus Torvalds#define SEND_REJECT 0x11 6561da177e4SLinus Torvalds#define INT_PEND 0x0f 6571da177e4SLinus Torvalds#define BAD_PHASE 0x01 6581da177e4SLinus Torvalds#define BRKADRINT 0x08 6591da177e4SLinus Torvalds#define SCSIINT 0x04 6601da177e4SLinus Torvalds#define CMDCMPLT 0x02 6611da177e4SLinus Torvalds#define SEQINT 0x01 6621da177e4SLinus Torvalds 6631da177e4SLinus Torvalds#define CLRINT 0x92 6641da177e4SLinus Torvalds#define CLRPARERR 0x10 6651da177e4SLinus Torvalds#define CLRBRKADRINT 0x08 6661da177e4SLinus Torvalds#define CLRSCSIINT 0x04 6671da177e4SLinus Torvalds#define CLRCMDINT 0x02 6681da177e4SLinus Torvalds#define CLRSEQINT 0x01 6691da177e4SLinus Torvalds 6701da177e4SLinus Torvalds#define ERROR 0x92 6711da177e4SLinus Torvalds#define CIOPARERR 0x80 6721da177e4SLinus Torvalds#define PCIERRSTAT 0x40 6731da177e4SLinus Torvalds#define MPARERR 0x20 6741da177e4SLinus Torvalds#define DPARERR 0x10 6751da177e4SLinus Torvalds#define SQPARERR 0x08 6761da177e4SLinus Torvalds#define ILLOPCODE 0x04 6771da177e4SLinus Torvalds#define ILLSADDR 0x02 6781da177e4SLinus Torvalds#define ILLHADDR 0x01 6791da177e4SLinus Torvalds 6801da177e4SLinus Torvalds#define DFCNTRL 0x93 6811da177e4SLinus Torvalds 6821da177e4SLinus Torvalds#define DFSTATUS 0x94 6831da177e4SLinus Torvalds#define PRELOAD_AVAIL 0x80 6841da177e4SLinus Torvalds#define DFCACHETH 0x40 6851da177e4SLinus Torvalds#define FIFOQWDEMP 0x20 6861da177e4SLinus Torvalds#define MREQPEND 0x10 6871da177e4SLinus Torvalds#define HDONE 0x08 6881da177e4SLinus Torvalds#define DFTHRESH 0x04 6891da177e4SLinus Torvalds#define FIFOFULL 0x02 6901da177e4SLinus Torvalds#define FIFOEMP 0x01 6911da177e4SLinus Torvalds 6921da177e4SLinus Torvalds#define DFWADDR 0x95 6931da177e4SLinus Torvalds 6941da177e4SLinus Torvalds#define DFRADDR 0x97 6951da177e4SLinus Torvalds 6961da177e4SLinus Torvalds#define DFDAT 0x99 6971da177e4SLinus Torvalds 6981da177e4SLinus Torvalds#define SCBCNT 0x9a 6991da177e4SLinus Torvalds#define SCBCNT_MASK 0x1f 7001da177e4SLinus Torvalds#define SCBAUTO 0x80 7011da177e4SLinus Torvalds 7021da177e4SLinus Torvalds#define QINFIFO 0x9b 7031da177e4SLinus Torvalds 7041da177e4SLinus Torvalds#define QINCNT 0x9c 7051da177e4SLinus Torvalds 7061da177e4SLinus Torvalds#define QOUTFIFO 0x9d 7071da177e4SLinus Torvalds 7081da177e4SLinus Torvalds#define CRCCONTROL1 0x9d 7091da177e4SLinus Torvalds#define CRCONSEEN 0x80 7101da177e4SLinus Torvalds#define CRCVALCHKEN 0x40 7111da177e4SLinus Torvalds#define CRCENDCHKEN 0x20 7121da177e4SLinus Torvalds#define CRCREQCHKEN 0x10 7131da177e4SLinus Torvalds#define TARGCRCENDEN 0x08 7141da177e4SLinus Torvalds#define TARGCRCCNTEN 0x04 7151da177e4SLinus Torvalds 7161da177e4SLinus Torvalds#define QOUTCNT 0x9e 7171da177e4SLinus Torvalds 7181da177e4SLinus Torvalds#define SCSIPHASE 0x9e 7191da177e4SLinus Torvalds#define DATA_PHASE_MASK 0x03 7201da177e4SLinus Torvalds#define STATUS_PHASE 0x20 7211da177e4SLinus Torvalds#define COMMAND_PHASE 0x10 7221da177e4SLinus Torvalds#define MSG_IN_PHASE 0x08 7231da177e4SLinus Torvalds#define MSG_OUT_PHASE 0x04 7241da177e4SLinus Torvalds#define DATA_IN_PHASE 0x02 7251da177e4SLinus Torvalds#define DATA_OUT_PHASE 0x01 7261da177e4SLinus Torvalds 7271da177e4SLinus Torvalds#define SFUNCT 0x9f 7281da177e4SLinus Torvalds#define ALT_MODE 0x80 7291da177e4SLinus Torvalds 7301da177e4SLinus Torvalds#define SCB_BASE 0xa0 7311da177e4SLinus Torvalds 7321da177e4SLinus Torvalds#define SCB_CDB_PTR 0xa0 7331da177e4SLinus Torvalds#define SCB_CDB_STORE 0xa0 734*2ae203faSMichał Mirosław#define SCB_RESIDUAL_DATACNT 0xa0 7351da177e4SLinus Torvalds 7361da177e4SLinus Torvalds#define SCB_RESIDUAL_SGPTR 0xa4 7371da177e4SLinus Torvalds 7381da177e4SLinus Torvalds#define SCB_SCSI_STATUS 0xa8 7391da177e4SLinus Torvalds 7401da177e4SLinus Torvalds#define SCB_TARGET_PHASES 0xa9 7411da177e4SLinus Torvalds 7421da177e4SLinus Torvalds#define SCB_TARGET_DATA_DIR 0xaa 7431da177e4SLinus Torvalds 7441da177e4SLinus Torvalds#define SCB_TARGET_ITAG 0xab 7451da177e4SLinus Torvalds 7461da177e4SLinus Torvalds#define SCB_DATAPTR 0xac 7471da177e4SLinus Torvalds 7481da177e4SLinus Torvalds#define SCB_DATACNT 0xb0 7491da177e4SLinus Torvalds#define SG_HIGH_ADDR_BITS 0x7f 7501da177e4SLinus Torvalds#define SG_LAST_SEG 0x80 7511da177e4SLinus Torvalds 7521da177e4SLinus Torvalds#define SCB_SGPTR 0xb4 7531da177e4SLinus Torvalds#define SG_RESID_VALID 0x04 7541da177e4SLinus Torvalds#define SG_FULL_RESID 0x02 7551da177e4SLinus Torvalds#define SG_LIST_NULL 0x01 7561da177e4SLinus Torvalds 7571da177e4SLinus Torvalds#define SCB_CONTROL 0xb8 7581da177e4SLinus Torvalds#define SCB_TAG_TYPE 0x03 7591da177e4SLinus Torvalds#define TARGET_SCB 0x80 760*2ae203faSMichał Mirosław#define STATUS_RCVD 0x80 7611da177e4SLinus Torvalds#define DISCENB 0x40 7621da177e4SLinus Torvalds#define TAG_ENB 0x20 7631da177e4SLinus Torvalds#define MK_MESSAGE 0x10 7641da177e4SLinus Torvalds#define ULTRAENB 0x08 7651da177e4SLinus Torvalds#define DISCONNECTED 0x04 7661da177e4SLinus Torvalds 7671da177e4SLinus Torvalds#define SCB_SCSIID 0xb9 7681da177e4SLinus Torvalds#define TID 0xf0 7691da177e4SLinus Torvalds#define TWIN_TID 0x70 7701da177e4SLinus Torvalds#define OID 0x0f 7711da177e4SLinus Torvalds#define TWIN_CHNLB 0x80 7721da177e4SLinus Torvalds 7731da177e4SLinus Torvalds#define SCB_LUN 0xba 7741da177e4SLinus Torvalds#define LID 0x3f 7751da177e4SLinus Torvalds#define SCB_XFERLEN_ODD 0x80 7761da177e4SLinus Torvalds 7771da177e4SLinus Torvalds#define SCB_TAG 0xbb 7781da177e4SLinus Torvalds 7791da177e4SLinus Torvalds#define SCB_CDB_LEN 0xbc 7801da177e4SLinus Torvalds 7811da177e4SLinus Torvalds#define SCB_SCSIRATE 0xbd 7821da177e4SLinus Torvalds 7831da177e4SLinus Torvalds#define SCB_SCSIOFFSET 0xbe 7841da177e4SLinus Torvalds 7851da177e4SLinus Torvalds#define SCB_NEXT 0xbf 7861da177e4SLinus Torvalds 7871da177e4SLinus Torvalds#define SCB_64_SPARE 0xc0 7881da177e4SLinus Torvalds 7891da177e4SLinus Torvalds#define SEECTL_2840 0xc0 7901da177e4SLinus Torvalds#define CS_2840 0x04 7911da177e4SLinus Torvalds#define CK_2840 0x02 7921da177e4SLinus Torvalds#define DO_2840 0x01 7931da177e4SLinus Torvalds 7941da177e4SLinus Torvalds#define STATUS_2840 0xc1 7951da177e4SLinus Torvalds#define BIOS_SEL 0x60 7961da177e4SLinus Torvalds#define ADSEL 0x1e 7971da177e4SLinus Torvalds#define EEPROM_TF 0x80 7981da177e4SLinus Torvalds#define DI_2840 0x01 7991da177e4SLinus Torvalds 8001da177e4SLinus Torvalds#define SCB_64_BTT 0xd0 8011da177e4SLinus Torvalds 8021da177e4SLinus Torvalds#define CCHADDR 0xe0 8031da177e4SLinus Torvalds 8041da177e4SLinus Torvalds#define CCHCNT 0xe8 8051da177e4SLinus Torvalds 8061da177e4SLinus Torvalds#define CCSGRAM 0xe9 8071da177e4SLinus Torvalds 8081da177e4SLinus Torvalds#define CCSGADDR 0xea 8091da177e4SLinus Torvalds 8101da177e4SLinus Torvalds#define CCSGCTL 0xeb 8111da177e4SLinus Torvalds#define CCSGDONE 0x80 8121da177e4SLinus Torvalds#define CCSGEN 0x08 8131da177e4SLinus Torvalds#define SG_FETCH_NEEDED 0x02 8141da177e4SLinus Torvalds#define CCSGRESET 0x01 8151da177e4SLinus Torvalds 8161da177e4SLinus Torvalds#define CCSCBRAM 0xec 8171da177e4SLinus Torvalds 8181da177e4SLinus Torvalds#define CCSCBADDR 0xed 8191da177e4SLinus Torvalds 8201da177e4SLinus Torvalds#define CCSCBCTL 0xee 8211da177e4SLinus Torvalds#define CCSCBDONE 0x80 8221da177e4SLinus Torvalds#define ARRDONE 0x40 8231da177e4SLinus Torvalds#define CCARREN 0x10 8241da177e4SLinus Torvalds#define CCSCBEN 0x08 8251da177e4SLinus Torvalds#define CCSCBDIR 0x04 8261da177e4SLinus Torvalds#define CCSCBRESET 0x01 8271da177e4SLinus Torvalds 8281da177e4SLinus Torvalds#define CCSCBCNT 0xef 8291da177e4SLinus Torvalds 8301da177e4SLinus Torvalds#define SCBBADDR 0xf0 8311da177e4SLinus Torvalds 8321da177e4SLinus Torvalds#define CCSCBPTR 0xf1 8331da177e4SLinus Torvalds 8341da177e4SLinus Torvalds#define HNSCB_QOFF 0xf4 8351da177e4SLinus Torvalds 8361da177e4SLinus Torvalds#define SNSCB_QOFF 0xf6 8371da177e4SLinus Torvalds 8381da177e4SLinus Torvalds#define SDSCB_QOFF 0xf8 8391da177e4SLinus Torvalds 8401da177e4SLinus Torvalds#define QOFF_CTLSTA 0xfa 8411da177e4SLinus Torvalds#define SCB_QSIZE 0x07 8421da177e4SLinus Torvalds#define SCB_QSIZE_256 0x06 8431da177e4SLinus Torvalds#define SCB_AVAIL 0x40 8441da177e4SLinus Torvalds#define SNSCB_ROLLOVER 0x20 8451da177e4SLinus Torvalds#define SDSCB_ROLLOVER 0x10 8461da177e4SLinus Torvalds 8471da177e4SLinus Torvalds#define DFF_THRSH 0xfb 8481da177e4SLinus Torvalds#define WR_DFTHRSH 0x70 8491da177e4SLinus Torvalds#define WR_DFTHRSH_MAX 0x70 8501da177e4SLinus Torvalds#define WR_DFTHRSH_90 0x60 8511da177e4SLinus Torvalds#define WR_DFTHRSH_85 0x50 8521da177e4SLinus Torvalds#define WR_DFTHRSH_75 0x40 8531da177e4SLinus Torvalds#define WR_DFTHRSH_63 0x30 8541da177e4SLinus Torvalds#define WR_DFTHRSH_50 0x20 8551da177e4SLinus Torvalds#define WR_DFTHRSH_25 0x10 8561da177e4SLinus Torvalds#define RD_DFTHRSH 0x07 8571da177e4SLinus Torvalds#define RD_DFTHRSH_MAX 0x07 8581da177e4SLinus Torvalds#define RD_DFTHRSH_90 0x06 8591da177e4SLinus Torvalds#define RD_DFTHRSH_85 0x05 8601da177e4SLinus Torvalds#define RD_DFTHRSH_75 0x04 8611da177e4SLinus Torvalds#define RD_DFTHRSH_63 0x03 8621da177e4SLinus Torvalds#define RD_DFTHRSH_50 0x02 8631da177e4SLinus Torvalds#define RD_DFTHRSH_25 0x01 8641da177e4SLinus Torvalds#define RD_DFTHRSH_MIN 0x00 8651da177e4SLinus Torvalds#define WR_DFTHRSH_MIN 0x00 8661da177e4SLinus Torvalds 8671da177e4SLinus Torvalds#define SG_CACHE_SHADOW 0xfc 8681da177e4SLinus Torvalds#define SG_ADDR_MASK 0xf8 8691da177e4SLinus Torvalds#define LAST_SEG 0x02 8701da177e4SLinus Torvalds#define LAST_SEG_DONE 0x01 8711da177e4SLinus Torvalds 8721da177e4SLinus Torvalds#define SG_CACHE_PRE 0xfc 8731da177e4SLinus Torvalds 8741da177e4SLinus Torvalds 875*2ae203faSMichał Mirosław#define TARGET_CMD_CMPLT 0xfe 8761da177e4SLinus Torvalds#define MAX_OFFSET_ULTRA2 0x7f 8771da177e4SLinus Torvalds#define MAX_OFFSET_16BIT 0x08 8781da177e4SLinus Torvalds#define BUS_8_BIT 0x00 879*2ae203faSMichał Mirosław#define TID_SHIFT 0x04 8801da177e4SLinus Torvalds#define STATUS_QUEUE_FULL 0x28 8811da177e4SLinus Torvalds#define STATUS_BUSY 0x08 8821da177e4SLinus Torvalds#define SCB_DOWNLOAD_SIZE_64 0x30 883*2ae203faSMichał Mirosław#define MAX_OFFSET_8BIT 0x0f 8841da177e4SLinus Torvalds#define HOST_MAILBOX_SHIFT 0x04 885*2ae203faSMichał Mirosław#define CCSGADDR_MAX 0x80 886*2ae203faSMichał Mirosław#define BUS_32_BIT 0x02 887*2ae203faSMichał Mirosław#define SG_SIZEOF 0x08 888*2ae203faSMichał Mirosław#define SEQ_MAILBOX_SHIFT 0x00 889*2ae203faSMichał Mirosław#define SCB_LIST_NULL 0xff 890*2ae203faSMichał Mirosław#define SCB_DOWNLOAD_SIZE 0x20 8911da177e4SLinus Torvalds#define CMD_GROUP_CODE_SHIFT 0x05 8921da177e4SLinus Torvalds#define CCSGRAM_MAXSEGS 0x10 8931da177e4SLinus Torvalds#define TARGET_DATA_IN 0x01 8941da177e4SLinus Torvalds#define STACK_SIZE 0x04 895*2ae203faSMichał Mirosław#define SCB_UPLOAD_SIZE 0x20 896*2ae203faSMichał Mirosław#define MAX_OFFSET 0x7f 897*2ae203faSMichał Mirosław#define HOST_MSG 0xff 898*2ae203faSMichał Mirosław#define BUS_16_BIT 0x01 8991da177e4SLinus Torvalds 9001da177e4SLinus Torvalds 9011da177e4SLinus Torvalds/* Downloaded Constant Definitions */ 9021da177e4SLinus Torvalds#define INVERTED_CACHESIZE_MASK 0x03 9031da177e4SLinus Torvalds#define SG_PREFETCH_ALIGN_MASK 0x05 904*2ae203faSMichał Mirosław#define SG_PREFETCH_ADDR_MASK 0x06 9051da177e4SLinus Torvalds#define QOUTFIFO_OFFSET 0x00 9061da177e4SLinus Torvalds#define SG_PREFETCH_CNT 0x04 9071da177e4SLinus Torvalds#define QINFIFO_OFFSET 0x01 908*2ae203faSMichał Mirosław#define CACHESIZE_MASK 0x02 9091da177e4SLinus Torvalds#define DOWNLOAD_CONST_COUNT 0x07 9101da177e4SLinus Torvalds 9111da177e4SLinus Torvalds 9121da177e4SLinus Torvalds/* Exported Labels */ 913