Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-5]: src/sys/dev/ic Pull up revision 1.49 (requested by fvdl):



details:   https://anonhg.NetBSD.org/src/rev/a4d04b71bd14
branches:  netbsd-1-5
changeset: 491751:a4d04b71bd14
user:      he <he%NetBSD.org@localhost>
date:      Tue May 15 21:34:06 2001 +0000

description:
Pull up revision 1.49 (requested by fvdl):
  Wait longer after a card reset, avoids reading bad values from
  the eeprom.

diffstat:

 sys/dev/ic/elinkxl.c |  11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diffs (26 lines):

diff -r b5d0214606d2 -r a4d04b71bd14 sys/dev/ic/elinkxl.c
--- a/sys/dev/ic/elinkxl.c      Tue May 15 21:30:36 2001 +0000
+++ b/sys/dev/ic/elinkxl.c      Tue May 15 21:34:06 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: elinkxl.c,v 1.34.2.3 2001/03/20 17:25:14 he Exp $      */
+/*     $NetBSD: elinkxl.c,v 1.34.2.4 2001/05/15 21:34:06 he Exp $      */
 
 /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -1467,9 +1467,14 @@
        u_int16_t val = GLOBAL_RESET;
 
        if (sc->ex_conf & EX_CONF_RESETHACK)
-               val |= 0xff;
+               val |= 0x10;
        bus_space_write_2(sc->sc_iot, sc->sc_ioh, ELINK_COMMAND, val);
-       delay(400);
+       /*
+        * XXX apparently the command in progress bit can't be trusted
+        * during a reset, so we just always wait this long. Fortunately
+        * we normally only reset the chip during autoconfig.
+        */
+       delay(100000);
        ex_waitcmd(sc);
 }
 



Home | Main Index | Thread Index | Old Index