summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2009-02-18 20:48:03 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2009-02-18 20:48:03 +0000
commit975a37533326b572d52e5b0c92855b5eedd3fb65 (patch)
tree611bb1ba5e259ce5d6686034f0fe72147cbe1644 /sys/arch
parenta98a29df1941c7a3c749a5f814f6c62527fa2400 (diff)
delay() would only work as intended after clock0 attached. Initialize the
delay strategy variable in locore now; this fixes the occasional console output artefacts on MVME177.
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/mvme68k/conf/files.mvme68k4
-rw-r--r--sys/arch/mvme68k/mvme68k/genassym.cf6
-rw-r--r--sys/arch/mvme68k/mvme68k/locore.s17
3 files changed, 23 insertions, 4 deletions
diff --git a/sys/arch/mvme68k/conf/files.mvme68k b/sys/arch/mvme68k/conf/files.mvme68k
index b1bc7163022..37313a335ce 100644
--- a/sys/arch/mvme68k/conf/files.mvme68k
+++ b/sys/arch/mvme68k/conf/files.mvme68k
@@ -1,4 +1,4 @@
-# $OpenBSD: files.mvme68k,v 1.30 2009/02/17 22:28:38 miod Exp $
+# $OpenBSD: files.mvme68k,v 1.31 2009/02/18 20:48:00 miod Exp $
# config file for mvme68k
@@ -25,7 +25,7 @@ file arch/mvme68k/dev/mc.c mc needs-count
device clock
attach clock at pcc, mc, pcctwo
-file arch/mvme68k/dev/clock.c clock
+file arch/mvme68k/dev/clock.c
device zs: tty
attach zs at pcc, mc
diff --git a/sys/arch/mvme68k/mvme68k/genassym.cf b/sys/arch/mvme68k/mvme68k/genassym.cf
index 39dcc1bec80..9c5e3bdb44b 100644
--- a/sys/arch/mvme68k/mvme68k/genassym.cf
+++ b/sys/arch/mvme68k/mvme68k/genassym.cf
@@ -1,4 +1,4 @@
-# $OpenBSD: genassym.cf,v 1.20 2004/09/29 07:34:42 miod Exp $
+# $OpenBSD: genassym.cf,v 1.21 2009/02/18 20:48:02 miod Exp $
#
# Copyright (c) 1995 Theo de Raadt
@@ -123,6 +123,10 @@ export CPU_167
export CPU_172
export CPU_177
+export BUS_MC
+export BUS_PCC
+export BUS_PCCTWO
+
struct prom_netctrl NETCTRL_
member dev
member ctrl
diff --git a/sys/arch/mvme68k/mvme68k/locore.s b/sys/arch/mvme68k/mvme68k/locore.s
index 6e45a51b07e..7714801bfdc 100644
--- a/sys/arch/mvme68k/mvme68k/locore.s
+++ b/sys/arch/mvme68k/mvme68k/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.57 2009/02/18 20:46:37 miod Exp $ */
+/* $OpenBSD: locore.s,v 1.58 2009/02/18 20:48:02 miod Exp $ */
/*
* Copyright (c) 1995 Theo de Raadt
@@ -212,6 +212,9 @@ is147:
RELOC(cputype, a0) | no, we have 68030
movl #CPU_68030,a0@ | set to reflect 68030 CPU
+ RELOC(clockbus, a0) | timer is on pcc
+ movl #BUS_PCC, a0@
+
movl #CACHE_OFF,d0
movc d0,cacr | clear and disable on-chip cache(s)
@@ -258,6 +261,9 @@ is162:
RELOC(fputype, a0)
movl #FPU_68040,a0@ | and a 68040 FPU
+ RELOC(clockbus, a0) | timer is on mc
+ movl #BUS_MC, a0@
+
RELOC(vectab, a1)
movl #_C_LABEL(buserr40),a1@(8)
movl #_C_LABEL(addrerr4060),a1@(12)
@@ -279,6 +285,9 @@ is167:
RELOC(fputype, a0)
movl #FPU_68040,a0@ | and a 68040 FPU
+ RELOC(clockbus, a0) | timer is on pcctwo
+ movl #BUS_PCCTWO, a0@
+
RELOC(vectab, a1)
movl #_C_LABEL(buserr40),a1@(8)
movl #_C_LABEL(addrerr4060),a1@(12)
@@ -307,6 +316,9 @@ is172:
RELOC(fputype, a0)
movl #FPU_68060,a0@ | and a 68060 FPU
+ RELOC(clockbus, a0) | timer is on mc
+ movl #BUS_MC, a0@
+
RELOC(vectab, a1)
movl #_C_LABEL(buserr60),a1@(8)
movl #_C_LABEL(addrerr4060),a1@(12)
@@ -333,6 +345,9 @@ is177:
RELOC(fputype, a0)
movl #FPU_68060,a0@ | and a 68060 FPU
+ RELOC(clockbus, a0) | timer is on pcctwo
+ movl #BUS_PCCTWO, a0@
+
RELOC(vectab, a1)
movl #_C_LABEL(buserr60),a1@(8)
movl #_C_LABEL(addrerr4060),a1@(12)