Put a small delay in before sending the inquire_setup command. The

docs don't seem to shed light on why this is needed, but reports from
the field indicate this helps prevent problems in this area.  Ken's
changes seem to have exposed this bug, rather than caused it, as far
as I can tell.

Thanks to Jack O'Neill for tracking this down.

Submitted by: jack@germanium.xtalwind.net

Very strong 3.2 merge candidate.
This commit is contained in:
Warner Losh 1999-05-14 23:10:25 +00:00
parent e5f13bdd09
commit fca33042ed
1 changed files with 6 additions and 4 deletions

View File

@ -55,7 +55,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: aha.c,v 1.23 1999/05/06 22:18:21 peter Exp $
* $Id: aha.c,v 1.24 1999/05/11 08:12:11 imp Exp $
*/
#include "pnp.h"
@ -1773,10 +1773,12 @@ ahafetchtransinfo(struct aha_softc *aha, struct ccb_trans_settings* cts)
targ_offset = (target & 0x7);
/*
* Inquire Setup Information. This command retreives the
* Wide negotiation status for recent adapters as well as
* the sync info for older models.
* Inquire Setup Information. This command retreives
* the sync info for older models. We put a small delay here
* because that seems to help the stability. 10mS is known
* to work, but other values might also work.
*/
DELAY(10000);
param = sizeof(setup_info);
error = aha_cmd(aha, AOP_INQUIRE_SETUP_INFO, &param, /*paramlen*/1,
(u_int8_t*)&setup_info, sizeof(setup_info),