summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2009-01-25 14:57:45 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2009-01-25 14:57:45 +0000
commit40ee6dc19054ef6b1e7072b44c44fad0cf2df736 (patch)
tree52be3f87f49eacc77863fe63e947bc61a5ad9996 /sys/arch
parentb1428b6f3ba2b9ec225c9d92bf317b1ef8091728 (diff)
In hpibid(), when computing timeouts from the cpuspeed variable, account for
68040 systems where cpuspeed is only 3/8 of the intended value.
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/hp300/dev/hpib.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/arch/hp300/dev/hpib.c b/sys/arch/hp300/dev/hpib.c
index 703158a0051..382fa549036 100644
--- a/sys/arch/hp300/dev/hpib.c
+++ b/sys/arch/hp300/dev/hpib.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: hpib.c,v 1.13 2005/11/16 21:23:55 miod Exp $ */
+/* $OpenBSD: hpib.c,v 1.14 2009/01/25 14:57:44 miod Exp $ */
/* $NetBSD: hpib.c,v 1.16 1997/04/27 20:58:57 thorpej Exp $ */
/*
@@ -277,7 +277,10 @@ hpibid(unit, slave)
* take forever on slow CPUs.
*/
ohpibtimeout = hpibtimeout;
- hpibtimeout = hpibidtimeout * (cpuspeed / 8);
+ if (cputype == CPU_68040)
+ hpibtimeout = hpibidtimeout * (cpuspeed / 3);
+ else
+ hpibtimeout = hpibidtimeout * (cpuspeed / 8);
if (hpibrecv(unit, 31, slave, &id, 2) != 2)
id = 0;
hpibtimeout = ohpibtimeout;