xref: /linux/drivers/scsi/aic7xxx/aic7xxx_reg.h_shipped (revision cf40a76e7d5874bb25f4404eecc58a2e033af885)
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