Date: Sat, 09 Nov 1996 21:21:20 -0800 From: "Justin T. Gibbs" <gibbs@freefall.freebsd.org> To: "Vladimir P. Frolov" <pvp@fareast.rosprint.ru> Cc: scsi@freebsd.org Subject: Re: SCSI problem Message-ID: <199611100521.VAA15271@freefall.freebsd.org> In-Reply-To: Your message of "Sun, 10 Nov 1996 15:07:38 %2B1000." <3285631A.167EB0E7@fareast.rosprint.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
>Every night (after several hours of inactivity ) >there are some errors on my SCSI subsytem. > > >environment: > FreeBSD 2.1.5 > IWIll P55TU with Adaptec 7880 (2940 UW) > enable disconnection for HDD - no Why are you turning off disconnection??? That will kill your performance. >sd0(ahc0:0:0): timed out in command phase, SCSISIGI == 0x4 This is probably a termination problem. Search for STPWEN in i386/scsi/aic7xxx.c and remove the two occurances of this. The diff should look like what I include below. I have a solution for setting this dynamically that will be going into current tonight and into stable before the 2.1.6 release, but first let me know if this helps your problem. It may also be some other problem in the driver that has been fixed already, so if this doesn't work, I'll send you the new driver ported back to 2.1.5R. *************** *** 1761,1767 **** AHC_OUTB(ahc, SCSIID, ahc->our_id_b); scsi_conf = AHC_INB(ahc, SCSICONF + 1); AHC_OUTB(ahc, SXFRCTL1, (scsi_conf & (ENSPCHK|STIMESEL)) ! | ENSTIMER|ACTNEGEN|STPWEN); AHC_OUTB(ahc, SIMODE1, ENSELTIMO|ENSCSIRST|ENSCSIPERR); if (ahc->type & AHC_ULTRA) AHC_OUTB(ahc, SXFRCTL0, DFON|SPIOEN|ULTRAEN); --- 1761,1767 ---- AHC_OUTB(ahc, SCSIID, ahc->our_id_b); scsi_conf = AHC_INB(ahc, SCSICONF + 1); AHC_OUTB(ahc, SXFRCTL1, (scsi_conf & (ENSPCHK|STIMESEL)) ! | ENSTIMER|ACTNEGEN); AHC_OUTB(ahc, SIMODE1, ENSELTIMO|ENSCSIRST|ENSCSIPERR); if (ahc->type & AHC_ULTRA) AHC_OUTB(ahc, SXFRCTL0, DFON|SPIOEN|ULTRAEN); *************** *** 1788,1794 **** AHC_OUTB(ahc, SCSIID, ahc->our_id); scsi_conf = AHC_INB(ahc, SCSICONF); AHC_OUTB(ahc, SXFRCTL1, (scsi_conf & (ENSPCHK|STIMESEL)) ! | ENSTIMER|ACTNEGEN|STPWEN); AHC_OUTB(ahc, SIMODE1, ENSELTIMO|ENSCSIRST|ENSCSIPERR); if (ahc->type & AHC_ULTRA) AHC_OUTB(ahc, SXFRCTL0, DFON|SPIOEN|ULTRAEN); --- 1788,1794 ---- AHC_OUTB(ahc, SCSIID, ahc->our_id); scsi_conf = AHC_INB(ahc, SCSICONF); AHC_OUTB(ahc, SXFRCTL1, (scsi_conf & (ENSPCHK|STIMESEL)) ! | ENSTIMER|ACTNEGEN); AHC_OUTB(ahc, SIMODE1, ENSELTIMO|ENSCSIRST|ENSCSIPERR); if (ahc->type & AHC_ULTRA) AHC_OUTB(ahc, SXFRCTL0, DFON|SPIOEN|ULTRAEN); -- Justin T. Gibbs =========================================== FreeBSD: Turning PCs into workstations ===========================================
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199611100521.VAA15271>