From 3e2c6ca3b9106141100bcf4e602b29e2b1696fd5 Mon Sep 17 00:00:00 2001 From: Nick Hibma Date: Tue, 5 Oct 1999 21:19:41 +0000 Subject: [PATCH] Removal of sys/device.h - Move intrhook stuff into kernel.h - Remove all occurrences of #device - Add kernel.h were necessary (nowhere) - delete device.h This file contained the structures for cfdata (old style config) and is no longer used. It was included by most drivers. It confuses the remote debugger as the definition of 'struct device' in device.h is found before the one in bus_private.h. --- sbin/ccdconfig/ccdconfig.c | 1 - sys/alpha/alpha/cpuconf.c | 1 - sys/alpha/alpha/dec_2100_a50.c | 2 +- sys/alpha/alpha/dec_3000_300.c | 2 +- sys/alpha/alpha/dec_3000_500.c | 2 +- sys/alpha/alpha/dec_axppci_33.c | 1 - sys/alpha/alpha/dec_eb164.c | 1 - sys/alpha/alpha/dec_eb64plus.c | 1 - sys/alpha/alpha/dec_kn20aa.c | 2 +- sys/alpha/alpha/dec_kn8ae.c | 1 - sys/alpha/alpha/dec_st550.c | 2 +- sys/alpha/alpha/dec_st6600.c | 1 - sys/alpha/alpha/interrupt.c | 1 - sys/alpha/tlsb/tlsbmem.c | 2 +- sys/cam/cam_xpt.c | 1 - sys/compat/svr4/svr4_stream.c | 1 - sys/dev/ata/ata-disk.c | 1 - sys/dev/ata/atapi-all.c | 1 - sys/dev/ata/atapi-fd.c | 1 - sys/dev/ccd/ccd.c | 1 - sys/dev/ida/ida.c | 1 - sys/dev/ida/ida_disk.c | 1 - sys/dev/ida/ida_pci.c | 1 - sys/dev/vinum/vinumhdr.h | 1 - sys/dev/vinum/vinumparser.c | 1 - sys/geom/geom_ccd.c | 1 - sys/i386/isa/bs/bsif.h | 2 +- sys/kern/subr_autoconf.c | 1 - sys/pci/ida_pci.c | 1 - sys/svr4/svr4_stream.c | 1 - sys/sys/device.h | 156 -------------------------------- sys/sys/kernel.h | 15 +++ 32 files changed, 22 insertions(+), 186 deletions(-) delete mode 100644 sys/sys/device.h diff --git a/sbin/ccdconfig/ccdconfig.c b/sbin/ccdconfig/ccdconfig.c index 6b8362035eb..c5ccd8f042f 100644 --- a/sbin/ccdconfig/ccdconfig.c +++ b/sbin/ccdconfig/ccdconfig.c @@ -40,7 +40,6 @@ static const char rcsid[] = #include #include #include -#include #include #include #include diff --git a/sys/alpha/alpha/cpuconf.c b/sys/alpha/alpha/cpuconf.c index b9b2b313fa3..4a92ae97466 100644 --- a/sys/alpha/alpha/cpuconf.c +++ b/sys/alpha/alpha/cpuconf.c @@ -32,7 +32,6 @@ */ #include -#include #include #include #include diff --git a/sys/alpha/alpha/dec_2100_a50.c b/sys/alpha/alpha/dec_2100_a50.c index e948cfcb7d4..9a5df7d0f5b 100644 --- a/sys/alpha/alpha/dec_2100_a50.c +++ b/sys/alpha/alpha/dec_2100_a50.c @@ -1,4 +1,5 @@ /* $NetBSD: dec_2100_a50.c,v 1.39 1998/04/17 02:45:19 mjacob Exp $ */ +/* $FreeBSD$ */ /* * Copyright (c) 1995, 1996, 1997 Carnegie-Mellon University. @@ -37,7 +38,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_3000_300.c b/sys/alpha/alpha/dec_3000_300.c index 1c465dcde7d..f1355601f4a 100644 --- a/sys/alpha/alpha/dec_3000_300.c +++ b/sys/alpha/alpha/dec_3000_300.c @@ -1,3 +1,4 @@ +/* $FreeBSD$ */ /* * Copyright (c) 1997 by Matthew Jacob * NASA AMES Research Center. @@ -32,7 +33,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_3000_500.c b/sys/alpha/alpha/dec_3000_500.c index f9b6770cec0..e4f68bf6d09 100644 --- a/sys/alpha/alpha/dec_3000_500.c +++ b/sys/alpha/alpha/dec_3000_500.c @@ -1,3 +1,4 @@ +/* $FreeBSD$ */ /* * Copyright (c) 1997 by Matthew Jacob * NASA AMES Research Center. @@ -32,7 +33,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_axppci_33.c b/sys/alpha/alpha/dec_axppci_33.c index 98970b91fdc..44bd5d26016 100644 --- a/sys/alpha/alpha/dec_axppci_33.c +++ b/sys/alpha/alpha/dec_axppci_33.c @@ -35,7 +35,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_eb164.c b/sys/alpha/alpha/dec_eb164.c index 20884072c0a..cdbee6a7d52 100644 --- a/sys/alpha/alpha/dec_eb164.c +++ b/sys/alpha/alpha/dec_eb164.c @@ -35,7 +35,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_eb64plus.c b/sys/alpha/alpha/dec_eb64plus.c index 19a7bd5aa20..429fec2b608 100644 --- a/sys/alpha/alpha/dec_eb64plus.c +++ b/sys/alpha/alpha/dec_eb64plus.c @@ -52,7 +52,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_kn20aa.c b/sys/alpha/alpha/dec_kn20aa.c index df06bea2734..1956f81e118 100644 --- a/sys/alpha/alpha/dec_kn20aa.c +++ b/sys/alpha/alpha/dec_kn20aa.c @@ -1,4 +1,5 @@ /* $NetBSD: dec_kn20aa.c,v 1.38 1998/04/17 02:45:19 mjacob Exp $ */ +/* $FreeBSD$ */ /* * Copyright (c) 1995, 1996, 1997 Carnegie-Mellon University. @@ -34,7 +35,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_kn8ae.c b/sys/alpha/alpha/dec_kn8ae.c index d205d38e0a3..44caf9460b5 100644 --- a/sys/alpha/alpha/dec_kn8ae.c +++ b/sys/alpha/alpha/dec_kn8ae.c @@ -35,7 +35,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_st550.c b/sys/alpha/alpha/dec_st550.c index 853730c2ec8..37a79ab809c 100644 --- a/sys/alpha/alpha/dec_st550.c +++ b/sys/alpha/alpha/dec_st550.c @@ -1,3 +1,4 @@ +/* $FreeBSD$ */ /* * Copyright (c) 1995, 1996, 1997 Carnegie-Mellon University. * All rights reserved. @@ -40,7 +41,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/dec_st6600.c b/sys/alpha/alpha/dec_st6600.c index 1175b5cc4e3..e7c74167c4c 100644 --- a/sys/alpha/alpha/dec_st6600.c +++ b/sys/alpha/alpha/dec_st6600.c @@ -34,7 +34,6 @@ #include #include -#include #include #include diff --git a/sys/alpha/alpha/interrupt.c b/sys/alpha/alpha/interrupt.c index 1e4d07d6950..0de81330233 100644 --- a/sys/alpha/alpha/interrupt.c +++ b/sys/alpha/alpha/interrupt.c @@ -51,7 +51,6 @@ #include #ifdef EVCNT_COUNTERS -#include struct evcnt clock_intr_evcnt; /* event counter for clock intrs. */ #else #include diff --git a/sys/alpha/tlsb/tlsbmem.c b/sys/alpha/tlsb/tlsbmem.c index c46306c8003..6d61e095cf7 100644 --- a/sys/alpha/tlsb/tlsbmem.c +++ b/sys/alpha/tlsb/tlsbmem.c @@ -1,4 +1,5 @@ /* $NetBSD: tlsbmem.c,v 1.6 1998/01/12 10:21:25 thorpej Exp $ */ +/* $FreeBSD$ */ /* * Copyright (c) 1997 by Matthew Jacob @@ -41,7 +42,6 @@ __KERNEL_RCSID(0, "$NetBSD: tlsbmem.c,v 1.6 1998/01/12 10:21:25 thorpej Exp $"); #include #include -#include #include #include diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c index 0c3909dbb2a..03ba677aa17 100644 --- a/sys/cam/cam_xpt.c +++ b/sys/cam/cam_xpt.c @@ -32,7 +32,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/compat/svr4/svr4_stream.c b/sys/compat/svr4/svr4_stream.c index d3c2a204a5f..7ac31f36dbd 100644 --- a/sys/compat/svr4/svr4_stream.c +++ b/sys/compat/svr4/svr4_stream.c @@ -65,7 +65,6 @@ #include #include #include -#include #include #include diff --git a/sys/dev/ata/ata-disk.c b/sys/dev/ata/ata-disk.c index 4ca4e813d89..7d3cc1ea0dc 100644 --- a/sys/dev/ata/ata-disk.c +++ b/sys/dev/ata/ata-disk.c @@ -33,7 +33,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/dev/ata/atapi-all.c b/sys/dev/ata/atapi-all.c index a88db272b97..f600108e269 100644 --- a/sys/dev/ata/atapi-all.c +++ b/sys/dev/ata/atapi-all.c @@ -36,7 +36,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/dev/ata/atapi-fd.c b/sys/dev/ata/atapi-fd.c index 897bb2da5f5..662dc8623ca 100644 --- a/sys/dev/ata/atapi-fd.c +++ b/sys/dev/ata/atapi-fd.c @@ -33,7 +33,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/dev/ccd/ccd.c b/sys/dev/ccd/ccd.c index 9d2ef86bbab..c4cc2bd10d9 100644 --- a/sys/dev/ccd/ccd.c +++ b/sys/dev/ccd/ccd.c @@ -103,7 +103,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/dev/ida/ida.c b/sys/dev/ida/ida.c index 02092039128..769205f2f36 100644 --- a/sys/dev/ida/ida.c +++ b/sys/dev/ida/ida.c @@ -47,7 +47,6 @@ #include #include -#include #include #if NPCI > 0 diff --git a/sys/dev/ida/ida_disk.c b/sys/dev/ida/ida_disk.c index 492010a5e17..bca8abf19a3 100644 --- a/sys/dev/ida/ida_disk.c +++ b/sys/dev/ida/ida_disk.c @@ -38,7 +38,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/dev/ida/ida_pci.c b/sys/dev/ida/ida_pci.c index 70007fb87d4..4e97181471f 100644 --- a/sys/dev/ida/ida_pci.c +++ b/sys/dev/ida/ida_pci.c @@ -33,7 +33,6 @@ #include #include -#include #include #include diff --git a/sys/dev/vinum/vinumhdr.h b/sys/dev/vinum/vinumhdr.h index 91f87428ae1..ebb7b44e98f 100644 --- a/sys/dev/vinum/vinumhdr.h +++ b/sys/dev/vinum/vinumhdr.h @@ -55,7 +55,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/dev/vinum/vinumparser.c b/sys/dev/vinum/vinumparser.c index 48ec43bc2ae..9487ce7204b 100644 --- a/sys/dev/vinum/vinumparser.c +++ b/sys/dev/vinum/vinumparser.c @@ -71,7 +71,6 @@ #include #include #include -#include #include #include diff --git a/sys/geom/geom_ccd.c b/sys/geom/geom_ccd.c index 9d2ef86bbab..c4cc2bd10d9 100644 --- a/sys/geom/geom_ccd.c +++ b/sys/geom/geom_ccd.c @@ -103,7 +103,6 @@ #include #include #include -#include #include #include #include diff --git a/sys/i386/isa/bs/bsif.h b/sys/i386/isa/bs/bsif.h index 0c634786765..193e2f9094d 100644 --- a/sys/i386/isa/bs/bsif.h +++ b/sys/i386/isa/bs/bsif.h @@ -1,4 +1,5 @@ /* $NecBSD: bsif.h,v 1.5 1997/10/23 20:52:34 honda Exp $ */ +/* $FreeBSD$ */ /* * Copyright (c) HONDA Naofumi, KATO Takenori, 1996. All rights reserved. * @@ -105,7 +106,6 @@ #ifdef __FreeBSD__ #include -#include #include #include #include diff --git a/sys/kern/subr_autoconf.c b/sys/kern/subr_autoconf.c index 6e9051cbd66..9bbb7b4992c 100644 --- a/sys/kern/subr_autoconf.c +++ b/sys/kern/subr_autoconf.c @@ -47,7 +47,6 @@ #include #include #include -#include /* * Autoconfiguration subroutines. diff --git a/sys/pci/ida_pci.c b/sys/pci/ida_pci.c index 70007fb87d4..4e97181471f 100644 --- a/sys/pci/ida_pci.c +++ b/sys/pci/ida_pci.c @@ -33,7 +33,6 @@ #include #include -#include #include #include diff --git a/sys/svr4/svr4_stream.c b/sys/svr4/svr4_stream.c index d3c2a204a5f..7ac31f36dbd 100644 --- a/sys/svr4/svr4_stream.c +++ b/sys/svr4/svr4_stream.c @@ -65,7 +65,6 @@ #include #include #include -#include #include #include diff --git a/sys/sys/device.h b/sys/sys/device.h deleted file mode 100644 index fc5ce337439..00000000000 --- a/sys/sys/device.h +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (c) 1992, 1993 - * The Regents of the University of California. All rights reserved. - * - * This software was developed by the Computer Systems Engineering group - * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and - * contributed to Berkeley. - * - * All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Lawrence Berkeley Laboratory. - * - * 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 University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University 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 REGENTS 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 REGENTS 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. - * - * @(#)device.h 8.2 (Berkeley) 2/17/94 - * $FreeBSD$ - */ - -#ifndef _SYS_DEVICE_H_ -#define _SYS_DEVICE_H_ - -#include - -/* - * Minimal device structures. - * Note that all ``system'' device types are listed here. - */ -enum devclass { - DV_DULL, /* generic, no special info */ - DV_CPU, /* CPU (carries resource utilization) */ - DV_DISK, /* disk drive (label, etc) */ - DV_IFNET, /* network interface */ - DV_TAPE, /* tape device */ - DV_TTY /* serial line interface (?) */ -}; - -struct device { - enum devclass dv_class; /* this device's classification */ - struct device *dv_next; /* next in list of all */ - struct cfdata *dv_cfdata; /* config data that found us */ - int dv_unit; /* device unit number */ - char dv_xname[16]; /* external name (name + unit) */ - struct device *dv_parent; /* pointer to parent device */ -}; - -/* `event' counters (use zero or more per device instance, as needed) */ -struct evcnt { - struct evcnt *ev_next; /* linked list */ - struct device *ev_dev; /* associated device */ - int ev_count; /* how many have occurred */ - char ev_name[8]; /* what to call them (systat display) */ -}; - -/* - * Configuration data (i.e., data placed in ioconf.c). - */ -struct cfdata { - struct cfdriver *cf_driver; /* config driver */ - short cf_unit; /* unit number */ - short cf_fstate; /* finding state (below) */ - int *cf_loc; /* locators (machine dependent) */ - int cf_flags; /* flags from config */ - short *cf_parents; /* potential parents */ - void (**cf_ivstubs) __P((void)); - /* config-generated vectors, if any */ -}; -#define FSTATE_NOTFOUND 0 /* has not been found */ -#define FSTATE_FOUND 1 /* has been found */ -#define FSTATE_STAR 2 /* duplicable */ - -typedef int (*cfmatch_t) __P((struct device *, struct cfdata *, void *)); - -/* - * `configuration' driver (what the machine-independent autoconf uses). - * As devices are found, they are applied against all the potential matches. - * The one with the best match is taken, and a device structure (plus any - * other data desired) is allocated. Pointers to these are placed into - * an array of pointers. The array itself must be dynamic since devices - * can be found long after the machine is up and running. - */ -struct cfdriver { - void **cd_devs; /* devices found */ - char *cd_name; /* device name */ - cfmatch_t cd_match; /* returns a match level */ - void (*cd_attach) __P((struct device *, struct device *, void *)); - enum devclass cd_class; /* device classification */ - size_t cd_devsize; /* size of dev data (for malloc) */ - void *cd_aux; /* additional driver, if any */ - int cd_ndevs; /* size of cd_devs array */ -}; - -struct intr_config_hook { - TAILQ_ENTRY(intr_config_hook) ich_links; - void (*ich_func) __P((void *arg)); - void *ich_arg; -}; - -/* - * Configuration printing functions, and their return codes. The second - * argument is NULL if the device was configured; otherwise it is the name - * of the parent device. The return value is ignored if the device was - * configured, so most functions can return UNCONF unconditionally. - */ -typedef int (*cfprint_t) __P((void *, char *)); -#define QUIET 0 /* print nothing */ -#define UNCONF 1 /* print " not configured\n" */ -#define UNSUPP 2 /* print " not supported\n" */ - -/* - * Pseudo-device attach information (function + number of pseudo-devs). - */ -struct pdevinit { - void (*pdev_attach) __P((int)); - int pdev_count; -}; - -extern struct device *alldevs; /* head of list of all devices */ -extern struct evcnt *allevents; /* head of list of all events */ - -struct cfdata *config_search __P((cfmatch_t, struct device *, void *)); -struct cfdata *config_rootsearch __P((cfmatch_t, char *, void *)); -int config_found __P((struct device *, void *, cfprint_t)); -int config_rootfound __P((char *, void *)); -void config_attach __P((struct device *, struct cfdata *, void *, cfprint_t)); -void evcnt_attach __P((struct device *, const char *, struct evcnt *)); -int config_intrhook_establish __P((struct intr_config_hook *hook)); -void config_intrhook_disestablish __P((struct intr_config_hook *hook)); - -#endif /* !_SYS_DEVICE_H_ */ diff --git a/sys/sys/kernel.h b/sys/sys/kernel.h index c6d984c1bb0..1dbc2159651 100644 --- a/sys/sys/kernel.h +++ b/sys/sys/kernel.h @@ -49,6 +49,9 @@ #ifdef KERNEL +/* for intrhook below */ +#include + /* Global variables for the kernel. */ /* 1.1 */ @@ -286,4 +289,16 @@ SYSINIT(__Tunable_init_ ## var, SI_SUB_TUNABLES, SI_ORDER_MIDDLE, __Tunable_ ## extern struct linker_set execsw_set; + + + +struct intr_config_hook { + TAILQ_ENTRY(intr_config_hook) ich_links; + void (*ich_func) __P((void *arg)); + void *ich_arg; +}; + +int config_intrhook_establish __P((struct intr_config_hook *hook)); +void config_intrhook_disestablish __P((struct intr_config_hook *hook)); + #endif /* !_SYS_KERNEL_H_*/