summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1999-04-26 08:57:51 +0000
committerpeter <peter@FreeBSD.org>1999-04-26 08:57:51 +0000
commitcbc4b2562bfe5286e4cdccdfb39b54becb24672d (patch)
tree83f57ada44883546a0cbc1b30d093ca7fdf1e1c7 /sys
parentfb89c43e31a8158ad7e94486e944d69d0aa1c84a (diff)
downloadFreeBSD-src-cbc4b2562bfe5286e4cdccdfb39b54becb24672d.zip
FreeBSD-src-cbc4b2562bfe5286e4cdccdfb39b54becb24672d.tar.gz
Register the netisr's via SYSINIT rather than linker sets.
Diffstat (limited to 'sys')
-rw-r--r--sys/alpha/alpha/machdep.c22
-rw-r--r--sys/amd64/amd64/machdep.c38
-rw-r--r--sys/i386/i386/machdep.c38
3 files changed, 18 insertions, 80 deletions
diff --git a/sys/alpha/alpha/machdep.c b/sys/alpha/alpha/machdep.c
index 3c4e567..a4d8c7d 100644
--- a/sys/alpha/alpha/machdep.c
+++ b/sys/alpha/alpha/machdep.c
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: machdep.c,v 1.38 1999/04/19 14:14:11 peter Exp $
+ * $Id: machdep.c,v 1.39 1999/04/23 19:53:37 dt Exp $
*/
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -234,13 +234,11 @@ SYSCTL_INT(_hw, OID_AUTO, availpages, CTLFLAG_RD, &physmem, 0, "");
/* must be 2 less so 0 0 can signal end of chunks */
#define PHYS_AVAIL_ARRAY_END ((sizeof(phys_avail) / sizeof(vm_offset_t)) - 2)
-static void setup_netisrs __P((struct linker_set *)); /* XXX declare elsewhere */
static void identifycpu __P((void));
static vm_offset_t buffer_sva, buffer_eva;
vm_offset_t clean_sva, clean_eva;
static vm_offset_t pager_sva, pager_eva;
-extern struct linker_set netisr_set;
#define offsetof(type, member) ((size_t)(&((type *)0)->member))
@@ -297,11 +295,6 @@ cpu_startup(dummy)
}
/*
- * Quickly wire in netisrs.
- */
- setup_netisrs(&netisr_set);
-
- /*
* Calculate callout wheel size
*/
for (callwheelsize = 1, callwheelbits = 0;
@@ -464,17 +457,14 @@ register_netisr(num, handler)
return (0);
}
-static void
-setup_netisrs(ls)
- struct linker_set *ls;
+void
+netisr_sysinit(data)
+ void *data;
{
- int i;
const struct netisrtab *nit;
- for(i = 0; ls->ls_items[i]; i++) {
- nit = (const struct netisrtab *)ls->ls_items[i];
- register_netisr(nit->nit_num, nit->nit_isr);
- }
+ nit = (const struct netisrtab *)data;
+ register_netisr(nit->nit_num, nit->nit_isr);
}
/*
diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c
index 6ff8559..712996e 100644
--- a/sys/amd64/amd64/machdep.c
+++ b/sys/amd64/amd64/machdep.c
@@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)machdep.c 7.4 (Berkeley) 6/3/91
- * $Id: machdep.c,v 1.329 1999/04/16 21:22:13 peter Exp $
+ * $Id: machdep.c,v 1.330 1999/04/19 14:14:12 peter Exp $
*/
#include "apm.h"
@@ -101,14 +101,7 @@
#include <ddb/ddb.h>
-#if defined(INET) || defined(IPX) || defined(NATM) || defined(NETATALK) \
- || NETHER > 0 || defined(NS)
-#define NETISR
-#endif
-
-#ifdef NETISR
#include <net/netisr.h>
-#endif
#include <machine/cpu.h>
#include <machine/reg.h>
@@ -253,16 +246,9 @@ vm_offset_t phys_avail[10];
/* must be 2 less so 0 0 can signal end of chunks */
#define PHYS_AVAIL_ARRAY_END ((sizeof(phys_avail) / sizeof(vm_offset_t)) - 2)
-#ifdef NETISR
-static void setup_netisrs __P((struct linker_set *));
-#endif
-
static vm_offset_t buffer_sva, buffer_eva;
vm_offset_t clean_sva, clean_eva;
static vm_offset_t pager_sva, pager_eva;
-#ifdef NETISR
-extern struct linker_set netisr_set;
-#endif
#if NNPX > 0
extern struct isa_driver npxdriver;
#endif
@@ -311,13 +297,6 @@ cpu_startup(dummy)
}
}
-#ifdef NETISR
- /*
- * Quickly wire in netisrs.
- */
- setup_netisrs(&netisr_set);
-#endif
-
/*
* Calculate callout wheel size
*/
@@ -466,7 +445,6 @@ again:
#endif /* SMP */
}
-#ifdef NETISR
int
register_netisr(num, handler)
int num;
@@ -481,19 +459,15 @@ register_netisr(num, handler)
return (0);
}
-static void
-setup_netisrs(ls)
- struct linker_set *ls;
+void
+netisr_sysinit(data)
+ void *data;
{
- int i;
const struct netisrtab *nit;
- for(i = 0; ls->ls_items[i]; i++) {
- nit = (const struct netisrtab *)ls->ls_items[i];
- register_netisr(nit->nit_num, nit->nit_isr);
- }
+ nit = (const struct netisrtab *)data;
+ register_netisr(nit->nit_num, nit->nit_isr);
}
-#endif /* NETISR */
/*
* Send an interrupt to process.
diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c
index 6ff8559..712996e 100644
--- a/sys/i386/i386/machdep.c
+++ b/sys/i386/i386/machdep.c
@@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)machdep.c 7.4 (Berkeley) 6/3/91
- * $Id: machdep.c,v 1.329 1999/04/16 21:22:13 peter Exp $
+ * $Id: machdep.c,v 1.330 1999/04/19 14:14:12 peter Exp $
*/
#include "apm.h"
@@ -101,14 +101,7 @@
#include <ddb/ddb.h>
-#if defined(INET) || defined(IPX) || defined(NATM) || defined(NETATALK) \
- || NETHER > 0 || defined(NS)
-#define NETISR
-#endif
-
-#ifdef NETISR
#include <net/netisr.h>
-#endif
#include <machine/cpu.h>
#include <machine/reg.h>
@@ -253,16 +246,9 @@ vm_offset_t phys_avail[10];
/* must be 2 less so 0 0 can signal end of chunks */
#define PHYS_AVAIL_ARRAY_END ((sizeof(phys_avail) / sizeof(vm_offset_t)) - 2)
-#ifdef NETISR
-static void setup_netisrs __P((struct linker_set *));
-#endif
-
static vm_offset_t buffer_sva, buffer_eva;
vm_offset_t clean_sva, clean_eva;
static vm_offset_t pager_sva, pager_eva;
-#ifdef NETISR
-extern struct linker_set netisr_set;
-#endif
#if NNPX > 0
extern struct isa_driver npxdriver;
#endif
@@ -311,13 +297,6 @@ cpu_startup(dummy)
}
}
-#ifdef NETISR
- /*
- * Quickly wire in netisrs.
- */
- setup_netisrs(&netisr_set);
-#endif
-
/*
* Calculate callout wheel size
*/
@@ -466,7 +445,6 @@ again:
#endif /* SMP */
}
-#ifdef NETISR
int
register_netisr(num, handler)
int num;
@@ -481,19 +459,15 @@ register_netisr(num, handler)
return (0);
}
-static void
-setup_netisrs(ls)
- struct linker_set *ls;
+void
+netisr_sysinit(data)
+ void *data;
{
- int i;
const struct netisrtab *nit;
- for(i = 0; ls->ls_items[i]; i++) {
- nit = (const struct netisrtab *)ls->ls_items[i];
- register_netisr(nit->nit_num, nit->nit_isr);
- }
+ nit = (const struct netisrtab *)data;
+ register_netisr(nit->nit_num, nit->nit_isr);
}
-#endif /* NETISR */
/*
* Send an interrupt to process.
OpenPOWER on IntegriCloud