Date: Mon, 19 Mar 2001 20:37:20 -0800 (PST) From: "Justin T. Gibbs" <gibbs@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/aic7xxx aic7xxx.seq Message-ID: <200103200437.f2K4bOa67953@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
gibbs 2001/03/19 20:37:20 PST
Modified files:
sys/dev/aic7xxx aic7xxx.seq
Log:
This is an MFC candidate.
In our idle loop, use an or instruction to set PRELOADEN rather
than rewriting the contents of DMAPARAMS to DFCNTRL. The later
may re-enable the DMA engine if the idle loop is called to complete
the preload of at least one segment when a target disconnects on
an S/G segment boundary but before we have completed fetching the
next segment. This correts a hang, usually in message out phase,
when this situation occurs. This bug has been here for a long
time, so the situation is rare, but not impossible to reproduce.
It only affected Ultra2/U160 controllers.
Correct a few comments.
Extra Sanity. Make sure that SCSIEN is also turned off, along with
HDMAEN, at the end of the data phase.
Revision Changes Path
1.115 +7 -8 src/sys/dev/aic7xxx/aic7xxx.seq
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200103200437.f2K4bOa67953>
