Index: dc390//dc390.h =================================================================== RCS file: /usr/local/cvsroot/dc390/dc390.h,v retrieving revision 2.32 retrieving revision 2.34 diff -u -r2.32 -r2.34 --- dc390//dc390.h 1999/07/12 11:43:39 2.32 +++ dc390//dc390.h 1999/07/13 05:55:14 2.34 @@ -4,7 +4,7 @@ * Description: Device Driver for Tekram DC-390(T) PCI SCSI * * Bus Master Host Adapter * ***********************************************************************/ -/* $Id: dc390.h,v 2.32 1999/07/12 11:43:39 garloff Exp $ */ +/* $Id: dc390.h,v 2.34 1999/07/13 05:55:14 garloff Exp $ */ /* * DC390/AMD 53C974 driver, header file @@ -19,7 +19,7 @@ #endif #define DC390_BANNER "Tekram DC390/AM53C974" -#define DC390_VERSION "2.0d15 1999/07/12" +#define DC390_VERSION "2.0d16 1999/07/13" #if defined(HOSTS_C) || defined(MODULE) @@ -38,7 +38,7 @@ extern struct proc_dir_entry DC390_proc_scsi_tmscsim; extern int DC390_proc_info(char *buffer, char **start, off_t offset, int length, int hostno, int inout); -#if LINUX_VERSION_CODE < 0x020200 +#if LINUX_VERSION_CODE < KERNEL_VERSION (2,1,70) # define NO_NEW_EH #else # define NO_NEW_EH use_new_eh_code: 0, Index: dc390//scsiiom.c =================================================================== RCS file: /usr/local/cvsroot/dc390/scsiiom.c,v retrieving revision 2.43 retrieving revision 2.45 diff -u -r2.43 -r2.45 --- dc390//scsiiom.c 1999/07/12 11:43:39 2.43 +++ dc390//scsiiom.c 1999/07/13 05:49:54 2.45 @@ -4,7 +4,7 @@ * Description: Device Driver for Tekram DC-390 (T) PCI SCSI * * Bus Master Host Adapter * ***********************************************************************/ -/* $Id: scsiiom.c,v 2.43 1999/07/12 11:43:39 garloff Exp $ */ +/* $Id: scsiiom.c,v 2.45 1999/07/13 05:49:54 garloff Exp $ */ static void __inline__ dc390_freetag (PDCB pDCB, PSRB pSRB) @@ -123,6 +123,15 @@ DEBUG0(if (pDCB->pActiveSRB) \ printk (KERN_WARNING "DC390: ActiveSRB != 0\n");) //DC390_write8 (DMA_Cmd, DMA_IDLE_CMD); + if (DC390_read8 (Scsi_Status) & INTERRUPT) + { + dc390_freetag (pDCB, pSRB); + printk ("DC390: Interrupt during Start SCSI (pid %li, target %02i-%02i)\n", + pSRB->pcmd->pid, pSRB->pcmd->target, pSRB->pcmd->lun); + pSRB->SRBState = SRB_READY; + //DC390_write8 (ScsiCmd, CLEAR_FIFO_CMD); + return 1; + }; DC390_write8 (ScsiCmd, cmd); pACB->pActiveDCB = pDCB; pDCB->pActiveSRB = pSRB; pACB->Connected = 1; @@ -1412,6 +1421,7 @@ SET_RES_DRV(pcmd->result,DRIVER_SENSE); pSRB->SGcount = (UCHAR) pSRB->SavedSGCount; //pSRB->ScsiCmdLen = (UCHAR) (pSRB->Segment1[0] >> 8); + printk ("DC390: RETRY pid %li, target %02i-%02i\n", pcmd->pid, pcmd->target, pcmd->lun); pSRB->SGIndex = 0; pSRB->TotalXferredLen = 0; pSRB->SGToBeXferLen = 0; Index: dc390//tmscsim.c =================================================================== RCS file: /usr/local/cvsroot/dc390/tmscsim.c,v retrieving revision 2.48 retrieving revision 2.49 diff -u -r2.48 -r2.49 --- dc390//tmscsim.c 1999/07/12 11:43:39 2.48 +++ dc390//tmscsim.c 1999/07/13 05:48:06 2.49 @@ -7,7 +7,7 @@ ***********************************************************************/ /* (C) Copyright: put under GNU GPL in 10/96 (see README.tmscsim) * *************************************************************************/ -/* $Id: tmscsim.c,v 2.48 1999/07/12 11:43:39 garloff Exp $ */ +/* $Id: tmscsim.c,v 2.49 1999/07/13 05:48:06 garloff Exp $ */ /* Enhancements and bugfixes by * * Kurt Garloff * ***********************************************************************/ @@ -126,6 +126,7 @@ * 2.0d1499/07/05 KG remove_dev: Move kfree() to the end * * 2.0d1599/07/12 KG use_new_eh_code: 0, ULONG -> UINT where * * appropriate * + * 2.0d1699/07/13 KG Reenable StartSCSI interrupt, Retry msg * ***********************************************************************/ /* Uncomment SA_INTERRUPT, if the driver refuses to share its IRQ with other devices */