Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/mac68k Include a bit more info about what's not hap...
details: https://anonhg.NetBSD.org/src/rev/7e77b3feb39a
branches: trunk
changeset: 474103:7e77b3feb39a
user: briggs <briggs%NetBSD.org@localhost>
date: Mon Jun 28 04:33:21 1999 +0000
description:
Include a bit more info about what's not happening with IOP.
diffstat:
sys/arch/mac68k/include/iopreg.h | 7 ++++++-
sys/arch/mac68k/mac68k/iop.c | 21 ++++++++++++++++-----
2 files changed, 22 insertions(+), 6 deletions(-)
diffs (59 lines):
diff -r 498a3f7f1aa8 -r 7e77b3feb39a sys/arch/mac68k/include/iopreg.h
--- a/sys/arch/mac68k/include/iopreg.h Mon Jun 28 04:21:15 1999 +0000
+++ b/sys/arch/mac68k/include/iopreg.h Mon Jun 28 04:33:21 1999 +0000
@@ -1,4 +1,9 @@
-/* $NetBSD: iopreg.h,v 1.1 1999/06/28 01:56:57 briggs Exp $ */
+/* $NetBSD: iopreg.h,v 1.2 1999/06/28 04:33:21 briggs Exp $ */
+
+/*
+ * Freely contributed to The NetBSD Foundation.
+ * XXX - Do paperwork and put a proper copyright here.
+ */
#include <sys/pool.h>
#include <sys/queue.h>
diff -r 498a3f7f1aa8 -r 7e77b3feb39a sys/arch/mac68k/mac68k/iop.c
--- a/sys/arch/mac68k/mac68k/iop.c Mon Jun 28 04:21:15 1999 +0000
+++ b/sys/arch/mac68k/mac68k/iop.c Mon Jun 28 04:33:21 1999 +0000
@@ -1,4 +1,9 @@
-/* $NetBSD: iop.c,v 1.1 1999/06/28 01:56:57 briggs Exp $ */
+/* $NetBSD: iop.c,v 1.2 1999/06/28 04:33:22 briggs Exp $ */
+
+/*
+ * Freely contributed to the NetBSD Foundation.
+ * XXX - Do paperwork and put a proper copyright here.
+ */
/*
* This code handles VIA, RBV, and OSS functionality.
@@ -144,12 +149,18 @@
0, NULL, NULL, M_DEVBUF);
iop_write1(ioph, IOP_ADDR_ALIVE, 0);
+/*
+ * XXX The problem here seems to be that the IOP wants to go back into
+ * BYPASS mode. The state should be 0x86 after we're done with it
+ * here. It switches to 0x7 almost immediately.
+ * This means one of a couple of things to me--
+ * 1. We're doing something wrong
+ * 2. MacOS is really shutting down the IOP
+ * Most likely, it's the first.
+ */
printf("OLD cs0: 0x%x\n", (unsigned) ioph->control_status);
- iop_write1(ioph, IOP_ADDR_MAX_SEND_CHAN, 7);
- iop_write1(ioph, IOP_ADDR_MAX_RECV_CHAN, 7);
ioph->control_status = 0x80 | IOP_CS_RUN | IOP_CS_AUTOINC;
- iop_write1(ioph, IOP_ADDR_ALIVE, 0);
{unsigned cs, c2;
cs = (unsigned) ioph->control_status;
printf("OLD cs1: 0x%x\n", cs);
@@ -378,7 +389,7 @@
printf("msg loaded to iop: cs: 0x%x V1-%x- ", (unsigned) iop->iop->control_status, (unsigned)via_reg(VIA1, vIFR));
}
-{int i; for (i=0;i<100;i++) {
+{int i; for (i=0;i<16;i++) {
printf(" cs: 0x%x V1-%x- ", (unsigned) iop->iop->control_status, (unsigned)via_reg(VIA1, vIFR));
delay(1000);
}}
Home |
Main Index |
Thread Index |
Old Index