From fca33042eda6578043c4e91d01428cb14f949789 Mon Sep 17 00:00:00 2001 From: Warner Losh Date: Fri, 14 May 1999 23:10:25 +0000 Subject: [PATCH] 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. --- sys/dev/aha/aha.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/dev/aha/aha.c b/sys/dev/aha/aha.c index 9fea87773641..320c1ae40021 100644 --- a/sys/dev/aha/aha.c +++ b/sys/dev/aha/aha.c @@ -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, ¶m, /*paramlen*/1, (u_int8_t*)&setup_info, sizeof(setup_info),