Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/thorpej_scsipi]: src/sys/arch/alpha Update thorpej_scsipi to -current as...
details: https://anonhg.NetBSD.org/src/rev/b7681b781a56
branches: thorpej_scsipi
changeset: 477326:b7681b781a56
user: bouyer <bouyer%NetBSD.org@localhost>
date: Mon Nov 20 19:56:18 2000 +0000
description:
Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
diffstat:
sys/arch/alpha/a12/a12dc.c | 10 +-
sys/arch/alpha/a12/if_ade.c | 10 +-
sys/arch/alpha/a12/if_xb.c | 10 +-
sys/arch/alpha/alpha/api_up1000.c | 299 +++++
sys/arch/alpha/alpha/autoconf.c | 6 +-
sys/arch/alpha/alpha/avalon_a12.c | 7 +-
sys/arch/alpha/alpha/avalon_a12.c.orig | 263 ++++
sys/arch/alpha/alpha/clock.c | 9 +-
sys/arch/alpha/alpha/compat_13_machdep.c | 8 +-
sys/arch/alpha/alpha/conf.c | 41 +-
sys/arch/alpha/alpha/cpu.c | 371 +++--
sys/arch/alpha/alpha/cpuconf.c | 172 ++-
sys/arch/alpha/alpha/db_disasm.c | 125 +-
sys/arch/alpha/alpha/db_instruction.h | 8 +-
sys/arch/alpha/alpha/db_interface.c | 6 +-
sys/arch/alpha/alpha/db_trace.c | 281 ++--
sys/arch/alpha/alpha/debug.s | 20 +-
sys/arch/alpha/alpha/dec_1000a.c | 17 +-
sys/arch/alpha/alpha/dec_1000a.c.orig | 344 +++++
sys/arch/alpha/alpha/dec_2000_300.c | 291 ++++
sys/arch/alpha/alpha/dec_2100_a50.c | 14 +-
sys/arch/alpha/alpha/dec_2100_a50.c.orig | 284 ++++
sys/arch/alpha/alpha/dec_3000_300.c | 61 +-
sys/arch/alpha/alpha/dec_3000_300.c.orig | 280 ++++
sys/arch/alpha/alpha/dec_3000_500.c | 61 +-
sys/arch/alpha/alpha/dec_3000_500.c.orig | 301 +++++
sys/arch/alpha/alpha/dec_550.c | 94 +-
sys/arch/alpha/alpha/dec_550.c.orig | 315 +++++
sys/arch/alpha/alpha/dec_6600.c | 50 +-
sys/arch/alpha/alpha/dec_6600.c.orig | 323 +++++
sys/arch/alpha/alpha/dec_alphabook1.c | 14 +-
sys/arch/alpha/alpha/dec_alphabook1.c.orig | 275 ++++
sys/arch/alpha/alpha/dec_axppci_33.c | 14 +-
sys/arch/alpha/alpha/dec_axppci_33.c.orig | 319 +++++
sys/arch/alpha/alpha/dec_eb164.c | 73 +-
sys/arch/alpha/alpha/dec_eb164.c.orig | 302 +++++
sys/arch/alpha/alpha/dec_eb64plus.c | 14 +-
sys/arch/alpha/alpha/dec_eb64plus.c.orig | 276 ++++
sys/arch/alpha/alpha/dec_eb66.c | 14 +-
sys/arch/alpha/alpha/dec_eb66.c.orig | 276 ++++
sys/arch/alpha/alpha/dec_kn20aa.c | 14 +-
sys/arch/alpha/alpha/dec_kn20aa.c.orig | 276 ++++
sys/arch/alpha/alpha/dec_kn300.c | 33 +-
sys/arch/alpha/alpha/dec_kn300.c.orig | 490 ++++++++
sys/arch/alpha/alpha/dec_kn8ae.c | 6 +-
sys/arch/alpha/alpha/dec_kn8ae.c.orig | 600 ++++++++++
sys/arch/alpha/alpha/disksubr.c | 30 +-
sys/arch/alpha/alpha/genassym.c | 22 +-
sys/arch/alpha/alpha/interrupt.c | 315 ++++-
sys/arch/alpha/alpha/ipifuncs.c | 148 ++-
sys/arch/alpha/alpha/locore.s | 416 +++---
sys/arch/alpha/alpha/machdep.c | 431 +++----
sys/arch/alpha/alpha/mem.c | 19 +-
sys/arch/alpha/alpha/multiproc.s | 40 +-
sys/arch/alpha/alpha/pal.s | 195 +---
sys/arch/alpha/alpha/pmap.c | 1492 ++++++++++++++----------
sys/arch/alpha/alpha/process_machdep.c | 15 +-
sys/arch/alpha/alpha/prom.c | 9 +-
sys/arch/alpha/alpha/promcons.c | 15 +-
sys/arch/alpha/alpha/sys_machdep.c | 143 ++-
sys/arch/alpha/alpha/trap.c | 238 ++-
sys/arch/alpha/alpha/vm_machdep.c | 136 +-
sys/arch/alpha/common/bus_dma.c | 52 +-
sys/arch/alpha/common/comlogout.c | 5 +-
sys/arch/alpha/common/sgmap_common.c | 6 +-
sys/arch/alpha/common/shared_intr.c | 108 +-
sys/arch/alpha/conf/ALPHA | 120 +-
sys/arch/alpha/conf/BABYLON | 17 +-
sys/arch/alpha/conf/ENIWETOK | 161 +-
sys/arch/alpha/conf/FRAU-FARBISSINA | 417 ++++++
sys/arch/alpha/conf/FRAU-FARBISSINA.MP | 7 +
sys/arch/alpha/conf/FRAU-FARBISSINA.PROF | 9 +
sys/arch/alpha/conf/GENERIC | 114 +-
sys/arch/alpha/conf/INSTALL | 75 +-
sys/arch/alpha/conf/MINI-ME | 277 ++++
sys/arch/alpha/conf/Makefile.alpha | 23 +-
sys/arch/alpha/conf/RAWHIDE | 14 +-
sys/arch/alpha/conf/TCWSCONS | 96 +-
sys/arch/alpha/conf/YEAH-BABY | 384 ++++++
sys/arch/alpha/conf/files.alpha | 122 +-
sys/arch/alpha/conf/std.alpha | 2 +-
sys/arch/alpha/eisa/eisa_machdep.c | 653 ++++++++++
sys/arch/alpha/include/Makefile | 17 +-
sys/arch/alpha/include/alpha.h | 129 +-
sys/arch/alpha/include/alpha_cpu.h | 254 +++-
sys/arch/alpha/include/ansi.h | 10 +-
sys/arch/alpha/include/asm.h | 4 +-
sys/arch/alpha/include/autoconf.h | 19 +-
sys/arch/alpha/include/bus.h | 355 +++--
sys/arch/alpha/include/conf.h | 5 +-
sys/arch/alpha/include/cpu.h | 95 +-
sys/arch/alpha/include/cpuconf.h | 35 +-
sys/arch/alpha/include/db_machdep.h | 30 +-
sys/arch/alpha/include/disklabel.h | 4 +-
sys/arch/alpha/include/eisa_machdep.h | 40 +-
sys/arch/alpha/include/elf_machdep.h | 10 +-
sys/arch/alpha/include/endian.h | 8 +-
sys/arch/alpha/include/float.h | 4 +-
sys/arch/alpha/include/intr.h | 248 +++-
sys/arch/alpha/include/isa_machdep.h | 78 +-
sys/arch/alpha/include/isapnp_machdep.h | 10 +-
sys/arch/alpha/include/limits.h | 11 +-
sys/arch/alpha/include/loadfile_machdep.h | 8 +-
sys/arch/alpha/include/lock.h | 100 +-
sys/arch/alpha/include/logout.h | 4 +-
sys/arch/alpha/include/param.h | 30 +-
sys/arch/alpha/include/pcb.h | 3 +-
sys/arch/alpha/include/pci_machdep.h | 41 +-
sys/arch/alpha/include/pmap.h | 68 +-
sys/arch/alpha/include/profile.h | 185 +--
sys/arch/alpha/include/prom.h | 28 +-
sys/arch/alpha/include/reg.h | 6 +-
sys/arch/alpha/include/rpb.h | 42 +-
sys/arch/alpha/include/stdarg.h | 27 +-
sys/arch/alpha/include/sysarch.h | 101 +-
sys/arch/alpha/include/tc_machdep.h | 6 +-
sys/arch/alpha/include/types.h | 5 +-
sys/arch/alpha/include/varargs.h | 16 +-
sys/arch/alpha/include/vmparam.h | 39 +-
sys/arch/alpha/include/z8530var.h | 15 +-
sys/arch/alpha/isa/isa_machdep.c | 7 +-
sys/arch/alpha/isa/isadma_bounce.c | 589 +++++++++
sys/arch/alpha/jensenio/com_jensenio.c | 148 ++
sys/arch/alpha/jensenio/jensenio.c | 290 ++++
sys/arch/alpha/jensenio/jensenio_bus_intio.c | 288 ++++
sys/arch/alpha/jensenio/jensenio_bus_io.c | 77 +
sys/arch/alpha/jensenio/jensenio_bus_mem.c | 77 +
sys/arch/alpha/jensenio/jensenio_dma.c | 166 ++
sys/arch/alpha/jensenio/jensenio_intr.c | 391 ++++++
sys/arch/alpha/jensenio/jensenioreg.h | 116 +
sys/arch/alpha/jensenio/jenseniovar.h | 90 +
sys/arch/alpha/jensenio/lpt_jensenio.c | 129 ++
sys/arch/alpha/jensenio/mcclock_jensenio.c | 161 ++
sys/arch/alpha/jensenio/pckbc_jensenio.c | 163 ++
sys/arch/alpha/mcbus/mcbus.c | 21 +-
sys/arch/alpha/mcbus/mcbusreg.h | 15 +-
sys/arch/alpha/pci/a12c.c | 14 +-
sys/arch/alpha/pci/a12c_bus_mem.c | 18 +-
sys/arch/alpha/pci/a12c_dma.c | 7 +-
sys/arch/alpha/pci/a12c_pci.c | 7 +-
sys/arch/alpha/pci/apecs.c | 82 +-
sys/arch/alpha/pci/apecs_bus_io.c | 7 +-
sys/arch/alpha/pci/apecs_bus_mem.c | 7 +-
sys/arch/alpha/pci/apecs_dma.c | 7 +-
sys/arch/alpha/pci/apecs_pci.c | 7 +-
sys/arch/alpha/pci/cia.c | 117 +-
sys/arch/alpha/pci/cia_bwx_bus_io.c | 13 +-
sys/arch/alpha/pci/cia_bwx_bus_mem.c | 13 +-
sys/arch/alpha/pci/cia_dma.c | 58 +-
sys/arch/alpha/pci/cia_pci.c | 7 +-
sys/arch/alpha/pci/cia_swiz_bus_io.c | 7 +-
sys/arch/alpha/pci/cia_swiz_bus_mem.c | 7 +-
sys/arch/alpha/pci/ciavar.h | 9 +-
sys/arch/alpha/pci/dwlpx.c | 12 +-
sys/arch/alpha/pci/dwlpx_bus_io.c | 7 +-
sys/arch/alpha/pci/dwlpx_bus_mem.c | 7 +-
sys/arch/alpha/pci/dwlpx_dma.c | 7 +-
sys/arch/alpha/pci/dwlpx_pci.c | 7 +-
sys/arch/alpha/pci/irongate.c | 224 +++
sys/arch/alpha/pci/irongate_bus_io.c | 69 +
sys/arch/alpha/pci/irongate_bus_mem.c | 69 +
sys/arch/alpha/pci/irongate_dma.c | 169 ++
sys/arch/alpha/pci/irongate_pci.c | 172 ++
sys/arch/alpha/pci/irongatereg.h | 96 +
sys/arch/alpha/pci/irongatevar.h | 77 +
sys/arch/alpha/pci/lca.c | 82 +-
sys/arch/alpha/pci/lca_bus_io.c | 7 +-
sys/arch/alpha/pci/lca_bus_mem.c | 7 +-
sys/arch/alpha/pci/lca_dma.c | 7 +-
sys/arch/alpha/pci/lca_pci.c | 7 +-
sys/arch/alpha/pci/mcpcia.c | 64 +-
sys/arch/alpha/pci/mcpcia_bus_io.c | 7 +-
sys/arch/alpha/pci/mcpcia_bus_mem.c | 7 +-
sys/arch/alpha/pci/mcpcia_dma.c | 7 +-
sys/arch/alpha/pci/mcpcia_pci.c | 7 +-
sys/arch/alpha/pci/pci_1000.c | 52 +-
sys/arch/alpha/pci/pci_1000a.c | 50 +-
sys/arch/alpha/pci/pci_2100_a50.c | 22 +-
sys/arch/alpha/pci/pci_550.c | 152 +-
sys/arch/alpha/pci/pci_550.h | 6 +-
sys/arch/alpha/pci/pci_6600.c | 134 +-
sys/arch/alpha/pci/pci_a12.c | 45 +-
sys/arch/alpha/pci/pci_a12.h | 6 +-
sys/arch/alpha/pci/pci_alphabook1.c | 22 +-
sys/arch/alpha/pci/pci_axppci_33.c | 22 +-
sys/arch/alpha/pci/pci_bwx_bus_io_chipdep.c | 98 +-
sys/arch/alpha/pci/pci_bwx_bus_mem_chipdep.c | 83 +-
sys/arch/alpha/pci/pci_eb164.c | 50 +-
sys/arch/alpha/pci/pci_eb164.h | 6 +-
sys/arch/alpha/pci/pci_eb64plus.c | 46 +-
sys/arch/alpha/pci/pci_eb64plus.h | 6 +-
sys/arch/alpha/pci/pci_eb66.c | 37 +-
sys/arch/alpha/pci/pci_kn20aa.c | 57 +-
sys/arch/alpha/pci/pci_kn20aa.h | 6 +-
sys/arch/alpha/pci/pci_kn300.c | 124 +-
sys/arch/alpha/pci/pci_kn300.h | 6 +-
sys/arch/alpha/pci/pci_kn8ae.c | 36 +-
sys/arch/alpha/pci/pci_kn8ae.h | 6 +-
sys/arch/alpha/pci/pci_machdep.c | 7 +-
sys/arch/alpha/pci/pci_sgmap_pte32.c | 6 +-
sys/arch/alpha/pci/pci_sgmap_pte64.c | 6 +-
sys/arch/alpha/pci/pci_swiz_bus_io_chipdep.c | 199 ++-
sys/arch/alpha/pci/pci_swiz_bus_mem_chipdep.c | 340 ++++-
sys/arch/alpha/pci/pci_up1000.c | 218 +++
sys/arch/alpha/pci/pci_up1000.h | 39 +
sys/arch/alpha/pci/sio.c | 132 +-
sys/arch/alpha/pci/sio_pic.c | 151 +-
sys/arch/alpha/pci/siovar.h | 7 +-
sys/arch/alpha/pci/tsc.c | 55 +-
sys/arch/alpha/pci/tsp_bus_io.c | 13 +-
sys/arch/alpha/pci/tsp_bus_mem.c | 11 +-
sys/arch/alpha/pci/tsp_dma.c | 5 +-
sys/arch/alpha/pci/tsp_pci.c | 6 +-
sys/arch/alpha/pci/tsreg.h | 9 +-
sys/arch/alpha/pci/tsvar.h | 4 +-
sys/arch/alpha/stand/Makefile.bootprogs | 15 +-
sys/arch/alpha/stand/boot/Makefile | 9 +-
sys/arch/alpha/stand/boot/version | 10 +-
sys/arch/alpha/stand/bootxx/Makefile | 5 +-
sys/arch/alpha/stand/bootxx_cd9660/Makefile | 3 +-
sys/arch/alpha/stand/bootxx_ffs/Makefile | 3 +-
sys/arch/alpha/stand/bootxx_lfs/Makefile | 3 +-
sys/arch/alpha/stand/common/blkdev.c | 20 +-
sys/arch/alpha/stand/common/boot.c | 3 +-
sys/arch/alpha/stand/common/booted_dev.c | 2 +-
sys/arch/alpha/stand/common/bootxx.c | 2 +-
sys/arch/alpha/stand/common/common.h | 4 +-
sys/arch/alpha/stand/netboot/Makefile | 8 +-
sys/arch/alpha/stand/netboot/dev_net.c | 2 +-
sys/arch/alpha/stand/netboot/if_prom.c | 2 +-
sys/arch/alpha/stand/netboot/version | 9 +-
sys/arch/alpha/stand/standtest/Makefile | 8 +-
sys/arch/alpha/stand/standtest/version | 9 +-
sys/arch/alpha/stand/ustarboot/Makefile | 8 +-
sys/arch/alpha/stand/ustarboot/version | 9 +-
sys/arch/alpha/tc/cfb.c | 23 +-
sys/arch/alpha/tc/ioasic.c | 83 +-
sys/arch/alpha/tc/mcclock_ioasic.c | 5 +-
sys/arch/alpha/tc/scc.c | 16 +-
sys/arch/alpha/tc/tc_3000_300.c | 66 +-
sys/arch/alpha/tc/tc_3000_500.c | 40 +-
sys/arch/alpha/tc/tc_bus_mem.c | 62 +-
sys/arch/alpha/tc/tc_conf.h | 6 +-
sys/arch/alpha/tc/tc_dma_3000_500.c | 8 +-
sys/arch/alpha/tc/tc_sgmap.c | 6 +-
sys/arch/alpha/tc/tcasic.c | 11 +-
sys/arch/alpha/tlsb/tlsbreg.h | 48 +-
247 files changed, 18364 insertions(+), 4150 deletions(-)
diffs (truncated from 34075 to 300 lines):
diff -r b61a85b3fd80 -r b7681b781a56 sys/arch/alpha/a12/a12dc.c
--- a/sys/arch/alpha/a12/a12dc.c Mon Nov 20 19:54:54 2000 +0000
+++ b/sys/arch/alpha/a12/a12dc.c Mon Nov 20 19:56:18 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: a12dc.c,v 1.1 1998/09/23 21:14:02 ross Exp $ */
+/* $NetBSD: a12dc.c,v 1.1.12.1 2000/11/20 19:56:18 bouyer Exp $ */
/* [Notice revision 2.2]
* Copyright (c) 1997, 1998 Avalon Computer Systems, Inc.
@@ -63,7 +63,7 @@
#ifndef BSIDE
#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
-__KERNEL_RCSID(0, "$NetBSD: a12dc.c,v 1.1 1998/09/23 21:14:02 ross Exp $");
+__KERNEL_RCSID(0, "$NetBSD: a12dc.c,v 1.1.12.1 2000/11/20 19:56:18 bouyer Exp $");
#include <sys/types.h>
#include <sys/param.h>
@@ -149,7 +149,7 @@
/* note that we've attached the chipset; can't have 2 A12Cs. */
a12dcfound = 1;
- printf(": driver %s\n", "$Revision: 1.1 $");
+ printf(": driver %s\n", "$Revision: 1.1.12.1 $");
tp = a12dc_tty[0] = ttymalloc();
tp->t_oproc = a12dcstart;
@@ -441,8 +441,8 @@
{
int i;
static struct consdev a12dccons = {
- NULL, NULL, a12dccngetc, a12dccnputc, a12dccnpollc, NODEV,
- CN_NORMAL
+ NULL, NULL, a12dccngetc, a12dccnputc, a12dccnpollc, NULL,
+ NODEV, CN_NORMAL
};
for(i = 0; i < nchrdev; ++i)
diff -r b61a85b3fd80 -r b7681b781a56 sys/arch/alpha/a12/if_ade.c
--- a/sys/arch/alpha/a12/if_ade.c Mon Nov 20 19:54:54 2000 +0000
+++ b/sys/arch/alpha/a12/if_ade.c Mon Nov 20 19:56:18 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: if_ade.c,v 1.3 1999/05/18 23:52:51 thorpej Exp $ */
+/* $NetBSD: if_ade.c,v 1.3.2.1 2000/11/20 19:56:18 bouyer Exp $ */
/*
* NOTE: this version of if_de was modified for bounce buffers prior
@@ -129,9 +129,7 @@
#include <netns/ns_if.h>
#endif
-#include <vm/vm.h>
-#include <vm/vm_param.h>
-#include <vm/vm_kern.h>
+#include <uvm/uvm_extern.h>
#if defined(__FreeBSD__)
#include <vm/pmap.h>
@@ -4188,7 +4186,7 @@
do {
int len = m0->m_len;
caddr_t addr = mtod(m0, caddr_t);
- unsigned clsize = CLBYTES - (((u_long) addr) & (CLBYTES-1));
+ unsigned clsize = NBPG - (((u_long) addr) & PGOFSET);
next_m0 = m0->m_next;
while (len > 0) {
@@ -4256,7 +4254,7 @@
if (partial)
continue;
#endif
- clsize = CLBYTES;
+ clsize = NBPG;
}
} while ((m0 = next_m0) != NULL);
diff -r b61a85b3fd80 -r b7681b781a56 sys/arch/alpha/a12/if_xb.c
--- a/sys/arch/alpha/a12/if_xb.c Mon Nov 20 19:54:54 2000 +0000
+++ b/sys/arch/alpha/a12/if_xb.c Mon Nov 20 19:56:18 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: if_xb.c,v 1.1 1998/09/23 21:14:58 ross Exp $ */
+/* $NetBSD: if_xb.c,v 1.1.12.1 2000/11/20 19:56:19 bouyer Exp $ */
/* [Notice revision 2.2]
* Copyright (c) 1997, 1998 Avalon Computer Systems, Inc.
@@ -74,7 +74,7 @@
#include "opt_avalon_a12.h" /* Config options headers */
#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
-__KERNEL_RCSID(0, "$NetBSD: if_xb.c,v 1.1 1998/09/23 21:14:58 ross Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_xb.c,v 1.1.12.1 2000/11/20 19:56:19 bouyer Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -85,7 +85,7 @@
#include <sys/mbuf.h>
#include <sys/sockio.h>
-#include <vm/vm.h>
+#include <uvm/uvm_extern.h>
#include <net/if.h>
#include <net/if_dl.h>
@@ -234,7 +234,7 @@
xbfound = 1;
ccp = &xb_configuration;
xb_init_config(ccp, 1);
- printf(": driver %s mtu %d\n", "$Revision: 1.1 $", xbi.if_mtu);
+ printf(": driver %s mtu %d\n", "$Revision: 1.1.12.1 $", xbi.if_mtu);
}
static void
@@ -333,7 +333,7 @@
DIE();
/*
* The extra word when frames are of an aligned size is due
- * to the way the the output routines work. After the mbuf is
+ * to the way the output routines work. After the mbuf is
* sent xb_put_blk(NULL) is called. If there is a leftover
* 127-bit-or-less fragment then the close word rides on it,
* otherwise it gets an entire 128 bits of zeroes.
diff -r b61a85b3fd80 -r b7681b781a56 sys/arch/alpha/alpha/api_up1000.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/alpha/alpha/api_up1000.c Mon Nov 20 19:56:18 2000 +0000
@@ -0,0 +1,299 @@
+/* $NetBSD: api_up1000.c,v 1.4.6.2 2000/11/20 19:56:19 bouyer Exp $ */
+
+/*
+ * Copyright (c) 1995, 1996, 1997 Carnegie-Mellon University.
+ * All rights reserved.
+ *
+ * Author: Chris G. Demetriou
+ *
+ * Permission to use, copy, modify and distribute this software and
+ * its documentation is hereby granted, provided that both the copyright
+ * notice and this permission notice appear in all copies of the
+ * software, derivative works or modified versions, and any portions
+ * thereof, and that both notices appear in supporting documentation.
+ *
+ * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
+ * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
+ * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
+ *
+ * Carnegie Mellon requests users of this software to return to
+ *
+ * Software Distribution Coordinator or Software.Distribution%CS.CMU.EDU@localhost
+ * School of Computer Science
+ * Carnegie Mellon University
+ * Pittsburgh PA 15213-3890
+ *
+ * any improvements or extensions that they make and grant Carnegie the
+ * rights to redistribute these changes.
+ */
+/*
+ * Additional Copyright (c) 1997 by Matthew Jacob for NASA/Ames Research Center
+ */
+
+#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
+
+__KERNEL_RCSID(0, "$NetBSD: api_up1000.c,v 1.4.6.2 2000/11/20 19:56:19 bouyer Exp $");
+
+#include <sys/param.h>
+#include <sys/systm.h>
+#include <sys/device.h>
+#include <sys/termios.h>
+#include <dev/cons.h>
+
+#include <machine/alpha.h>
+#include <machine/rpb.h>
+#include <machine/autoconf.h>
+#include <machine/conf.h>
+#include <machine/bus.h>
+
+#include <dev/ic/comreg.h>
+#include <dev/ic/comvar.h>
+
+#include <dev/isa/isareg.h>
+#include <dev/isa/isavar.h>
+#include <dev/ic/i8042reg.h>
+#include <dev/ic/pckbcvar.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
+
+#include <alpha/pci/irongatereg.h>
+#include <alpha/pci/irongatevar.h>
+
+#include <dev/scsipi/scsi_all.h>
+#include <dev/scsipi/scsipi_all.h>
+#include <dev/scsipi/scsiconf.h>
+#include <dev/ata/atavar.h>
+
+#include "pckbd.h"
+
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
+#define DPRINTF(x) if (bootdev_debug) printf x
+
+void api_up1000_init __P((void));
+static void api_up1000_cons_init __P((void));
+static void api_up1000_device_register __P((struct device *, void *));
+
+void
+api_up1000_init()
+{
+
+ platform.family = "Alpha Processor, Inc. UP1000";
+
+ if ((platform.model = alpha_dsr_sysname()) == NULL) {
+ /* XXX Don't know the system variations, yet. */
+ platform.model = alpha_unknown_sysname();
+ }
+
+ platform.iobus = "irongate";
+ platform.cons_init = api_up1000_cons_init;
+ platform.device_register = api_up1000_device_register;
+}
+
+static void
+api_up1000_cons_init()
+{
+ struct ctb *ctb;
+ struct irongate_config *icp;
+ extern struct irongate_config irongate_configuration;
+
+ icp = &irongate_configuration;
+ irongate_init(icp, 0);
+
+ ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
+
+ switch (ctb->ctb_term_type) {
+ case 2:
+ /* serial console ... */
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+
+ if(comcnattach(&icp->ic_iot, 0x3f8, comcnrate,
+ COM_FREQ,
+ (TTYDEF_CFLAG & ~(CSIZE | PARENB)) | CS8))
+ panic("can't init serial console");
+
+ break;
+ }
+
+ case 3:
+#if NPCKBD > 0
+ /* display console ... */
+ /* XXX */
+ (void) pckbc_cnattach(&icp->ic_iot, IO_KBD, KBCMDP,
+ PCKBC_KBD_SLOT);
+
+ if (CTB_TURBOSLOT_TYPE(ctb->ctb_turboslot) ==
+ CTB_TURBOSLOT_TYPE_ISA)
+ isa_display_console(&icp->ic_iot, &icp->ic_memt);
+ else
+ pci_display_console(&icp->ic_iot, &icp->ic_memt,
+ &icp->ic_pc, CTB_TURBOSLOT_BUS(ctb->ctb_turboslot),
+ CTB_TURBOSLOT_SLOT(ctb->ctb_turboslot), 0);
+#else
+ panic("not configured to use display && keyboard console");
+#endif
+ break;
+
+ default:
+ printf("ctb->ctb_term_type = 0x%lx\n", ctb->ctb_term_type);
+ printf("ctb->ctb_turboslot = 0x%lx\n", ctb->ctb_turboslot);
+
+ panic("consinit: unknown console type %ld\n",
+ ctb->ctb_term_type);
+ }
+}
+
+static void
+api_up1000_device_register(dev, aux)
+ struct device *dev;
+ void *aux;
+{
+ static int found, initted, scsiboot, ideboot, netboot;
+ static struct device *pcidev, *scsipidev;
+ struct bootdev_data *b = bootdev_data;
+ struct device *parent = dev->dv_parent;
+ struct cfdata *cf = dev->dv_cfdata;
+ struct cfdriver *cd = cf->cf_driver;
+
+ if (found)
+ return;
+
+ if (!initted) {
+ scsiboot = (strcmp(b->protocol, "SCSI") == 0);
+ netboot = (strcmp(b->protocol, "BOOTP") == 0) ||
+ (strcmp(b->protocol, "MOP") == 0);
+ /*
Home |
Main Index |
Thread Index |
Old Index