Source-Changes-HG archive

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

[src/trunk]: src/sys/dev/cardbus Make sure the latency timer is set to a reas...



details:   https://anonhg.NetBSD.org/src/rev/e721d48de70d
branches:  trunk
changeset: 481240:e721d48de70d
user:      thorpej <thorpej%NetBSD.org@localhost>
date:      Tue Jan 25 03:44:27 2000 +0000

description:
Make sure the latency timer is set to a reasonable value.

>From Masanori Kanaoka <kanaoka%ann.hi-ho.ne.jp@localhost>.

diffstat:

 sys/dev/cardbus/if_tlp_cardbus.c |  13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diffs (27 lines):

diff -r a50bf48ff464 -r e721d48de70d sys/dev/cardbus/if_tlp_cardbus.c
--- a/sys/dev/cardbus/if_tlp_cardbus.c  Tue Jan 25 03:42:36 2000 +0000
+++ b/sys/dev/cardbus/if_tlp_cardbus.c  Tue Jan 25 03:44:27 2000 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_tlp_cardbus.c,v 1.6 1999/12/11 00:39:13 thorpej Exp $       */
+/*     $NetBSD: if_tlp_cardbus.c,v 1.7 2000/01/25 03:44:27 thorpej Exp $       */
 
 /*-
  * Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -305,6 +305,17 @@
        cardbus_conf_write(cc, cf, ca->ca_tag, PCI_COMMAND_STATUS_REG, reg);
 
        /*
+        * Make sure the latency timer is set to some reasonable
+        * value.
+        */
+       reg = cardbus_conf_read(cc, cf, ca->ca_tag, PCI_BHLC_REG);
+       if (PCI_LATTIMER(reg) < 0x20) {
+               reg &= ~(PCI_LATTIMER_MASK << PCI_LATTIMER_SHIFT);
+               reg |= (0x20 << PCI_LATTIMER_SHIFT);
+               cardbus_conf_write(cc, cf, ca->ca_tag, PCI_BHLC_REG, reg);
+       }
+
+       /*
         * Read the contents of the Ethernet Address ROM/SROM.  Some
         * chips have a 128 byte SROM (6 address bits), and some
         * have a 512 byte SROM (8 address bits).



Home | Main Index | Thread Index | Old Index