diff options
author | imp <imp@FreeBSD.org> | 1999-05-14 23:10:25 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 1999-05-14 23:10:25 +0000 |
commit | c0bdb16af0991ca8eae6bcf9edd0802e9507bf5a (patch) | |
tree | 2de66c056c592eabaf6b5a52fc7c588542efacd7 /sys/dev/aha | |
parent | e79d7db00beb4a2937430bdd6fc71ca1c91c6145 (diff) | |
download | FreeBSD-src-c0bdb16af0991ca8eae6bcf9edd0802e9507bf5a.zip FreeBSD-src-c0bdb16af0991ca8eae6bcf9edd0802e9507bf5a.tar.gz |
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.
Diffstat (limited to 'sys/dev/aha')
-rw-r--r-- | sys/dev/aha/aha.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/dev/aha/aha.c b/sys/dev/aha/aha.c index 9fea877..320c1ae 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), |