#include <linux/module.h>
***************
*** 372,380 ****
#ifdef ARBITRATE
" ARBITRATE"
#endif
- #ifdef SLOW_HANDSHAKE
- " SLOW_HANDSHAKE"
- #endif
#ifdef FAST
#ifdef FAST32
" FAST32"
--- 381,386 ----
***************
*** 385,390 ****
--- 391,405 ----
#ifdef LINKED
" LINKED"
#endif
+ #ifdef PARITY
+ " PARITY"
+ #endif
+ #ifdef SLOW_HANDSHAKE
+ " SLOW_HANDSHAKE"
+ #endif
+ #ifdef SWAPSTAT
+ " SWAPSTAT"
+ #endif
"\n", tpnt->name);
return 1;
}
***************
*** 879,889 ****
--- 894,913 ----
* try this with a SCSI protocol or logic analyzer to see what is
* going on.
*/
+ #ifdef SWAPCNTDATA
+ cli();
+ WRITE_CONTROL (BASE_CMD | CMD_DRVR_ENABLE | CMD_SEL |
+ (reselect ? CMD_ATTN : 0));
+ WRITE_DATA ((unsigned char) ((1 << target) |
+ (controller_type == SEAGATE ? 0x80 : 0x40)));
+ sti ();
+ #else
cli ();
WRITE_DATA ((unsigned char) ((1 << target) |
(controller_type == SEAGATE ? 0x80 : 0x40)));
WRITE_CONTROL (BASE_CMD | CMD_DRVR_ENABLE | CMD_SEL |
(reselect ? CMD_ATTN : 0));
sti ();
+ #endif
while (!((status_read = STATUS) & STAT_BSY) && (jiffies < clock)
&& !st0x_aborted)