]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
This is an MFC candidate.
authorgibbs <gibbs@FreeBSD.org>
Tue, 20 Mar 2001 04:37:19 +0000 (04:37 +0000)
committergibbs <gibbs@FreeBSD.org>
Tue, 20 Mar 2001 04:37:19 +0000 (04:37 +0000)
commitc9aa16df5e203e70417f6d48b370238218deb9a2
treee21d7d962023de3821afe222c7b862c0dba14939
parent704765dafb15b236d5cf24c9a3b844dc613f5ae8
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.
sys/dev/aic7xxx/aic7xxx.seq