summaryrefslogtreecommitdiff
path: root/sys/arch/mvme68k/dev
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2004-09-15 05:57:40 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2004-09-15 05:57:40 +0000
commitf57fe2127001d0f4a8282ce1607848828f45ae63 (patch)
treea3ce48918dda0a9945debd42358896377741470b /sys/arch/mvme68k/dev
parente9dd025c0ed725d067cb20c15d126b42c7b2176c (diff)
Crude diff to allow user break on zs to enter ddb, for 147/1x2; spotted
by matthieu@.
Diffstat (limited to 'sys/arch/mvme68k/dev')
-rw-r--r--sys/arch/mvme68k/dev/zs.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/sys/arch/mvme68k/dev/zs.c b/sys/arch/mvme68k/dev/zs.c
index f0e4ca51bea..3c07acac9cd 100644
--- a/sys/arch/mvme68k/dev/zs.c
+++ b/sys/arch/mvme68k/dev/zs.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: zs.c,v 1.19 2004/07/31 22:27:34 miod Exp $ */
+/* $OpenBSD: zs.c,v 1.20 2004/09/15 05:57:39 miod Exp $ */
/*
* Copyright (c) 2000 Steve Murphree, Jr.
@@ -45,6 +45,10 @@
#include <machine/conf.h>
#include <machine/cpu.h>
+#ifdef DDB
+#include <ddb/db_var.h>
+#endif
+
#include <dev/cons.h>
#include <mvme68k/dev/scc.h>
@@ -857,6 +861,15 @@ zs_extint(zp)
rr0 = ZREAD0(&zp->scc);
ZWRITE0(&zp->scc, 0x10);/* reset ext/status int */
+
+ /* Handle break */
+ if (rr0 & 0x80) {
+#ifdef DDB
+ if (ISSET(zp->flags, ZS_CONSOLE) && db_console != 0)
+ Debugger();
+#endif
+ }
+
if ((tp->t_cflag & CCTS_OFLOW) != 0) {
if ((rr0 & 0x20) == 0)
zp->hflags |= ZH_OBLOCK;