Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/dev/mvme Separate out devices common to many Motorola mv...
details: https://anonhg.NetBSD.org/src/rev/db00882fb7fb
branches: trunk
changeset: 522209:db00882fb7fb
user: scw <scw%NetBSD.org@localhost>
date: Tue Feb 12 20:38:41 2002 +0000
description:
Separate out devices common to many Motorola mvme boards (68k, 88k and ppc)
in preparation for future mvmeppc and mvme88k ports.
This needs a bit if tidying up to make it trully shareable, which will
happen as the new mvme ports are added.
diffstat:
sys/dev/mvme/clockvar.h | 90 +++++++++++++++++++++++++++++++++++++++++++++++++
sys/dev/mvme/files.mvme | 50 +++++++++++++++++++++++++++
2 files changed, 140 insertions(+), 0 deletions(-)
diffs (148 lines):
diff -r d11bbdba89bc -r db00882fb7fb sys/dev/mvme/clockvar.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/dev/mvme/clockvar.h Tue Feb 12 20:38:41 2002 +0000
@@ -0,0 +1,90 @@
+/* $NetBSD: clockvar.h,v 1.1 2002/02/12 20:38:41 scw Exp $ */
+
+/*-
+ * Copyright (c) 1996, 2002 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Jason R. Thorpe.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _MVME_CLOCKVAR_H
+#define _MVME_CLOCKVAR_H
+
+#include <dev/clock_subr.h>
+#include <dev/ic/mk48txxreg.h>
+
+/*
+ * Defintions exported to ASIC-specific clock attachment.
+ */
+
+extern struct evcnt clock_profcnt;
+extern struct evcnt clock_statcnt;
+
+extern int clock_statvar;
+extern int clock_statmin;
+
+struct clock_attach_args {
+ void (*ca_initfunc) __P((void *, int, int));
+ long (*ca_microtime) __P((void *));
+ void *ca_arg;
+};
+
+void clock_config __P((struct device *, struct clock_attach_args *,
+ struct evcnt *));
+
+void clock_rtc_config __P((todr_chip_handle_t));
+
+/*
+ * Macro to compute a new randomized interval. The intervals are
+ * uniformly distributed on [statint - statvar / 2, statint + statvar / 2],
+ * and therefore have mean statint, giving a stathz frequency clock.
+ *
+ * This is gratuitously stolen from sparc/sparc/clock.c
+ */
+#define CLOCK_NEWINT(statvar, statmin) ({ \
+ u_long r, var = (statvar); \
+ do { r = random() & (var - 1); } while (r == 0); \
+ (statmin + r); \
+ })
+
+/*
+ * Sun chose the year `68' as their base count, so that
+ * cl_year==0 means 1968.
+ */
+#define YEAR0 1968
+
+/*
+ * interrupt level for clock
+ */
+#define CLOCK_LEVEL 5
+
+#endif /* _MVME_CLOCKVAR_H */
diff -r d11bbdba89bc -r db00882fb7fb sys/dev/mvme/files.mvme
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/dev/mvme/files.mvme Tue Feb 12 20:38:41 2002 +0000
@@ -0,0 +1,50 @@
+# $NetBSD: files.mvme,v 1.1 2002/02/12 20:38:42 scw Exp $
+#
+# Config file and device description for drivers shared between all
+# Motorola MVME boards.
+
+# Our own common VMEbus glue
+define mvmebus
+file dev/mvme/mvmebus.c mvmebus
+
+# VMEChip2 found on many MVME boards
+device vmetwo: mvmebus, vmebus
+attach vmetwo at mainbus
+file dev/mvme/vme_two.c vmetwo needs-flag
+
+# PCCChip2 found on many MVME boards
+device pcctwo { [ ipl = -1 ] }
+attach pcctwo at mainbus
+file dev/mvme/pcctwo.c pcctwo needs-flag
+
+# This is not as odd as it looks. If the user doesn't define
+# a vmetwo0 device in the config file, we still need the
+# following gloop to deal with some local interrupts.
+file dev/mvme/vme_two_isr.c pcctwo
+
+# MVME68K/MVME88K Clock
+attach clock at pcctwo with clock_pcctwo
+file dev/mvme/clock_pcctwo.c clock_pcctwo
+
+# MVME68K/MVME88K Printer
+device lpt
+attach lpt at pcctwo with lpt_pcctwo
+file dev/mvme/lpt_mvme.c lpt needs-flag
+file dev/mvme/lpt_pcctwo.c lpt_pcctwo
+
+# MVME68K/MVME88K Ethernet Interface
+attach ie at pcctwo with ie_pcctwo
+file dev/mvme/if_ie_mvme.c ie_pcctwo
+
+# CD2401 Quad Serial Controller
+attach clmpcc at pcctwo with clmpcc_pcctwo
+file dev/mvme/clmpcc_pcctwo.c clmpcc_pcctwo needs-flag
+
+# MVME68K/MVME88K Memory Controller ASICs
+device memc
+attach memc at mainbus
+file dev/mvme/memc.c memc
+
+# MVME68K/MVME88K ncr53c710 SCSI
+attach osiop at pcctwo with osiop_pcctwo
+file dev/mvme/osiop_pcctwo.c osiop_pcctwo
Home |
Main Index |
Thread Index |
Old Index