diff options
author | markm <markm@FreeBSD.org> | 2004-08-04 18:30:31 +0000 |
---|---|---|
committer | markm <markm@FreeBSD.org> | 2004-08-04 18:30:31 +0000 |
commit | 124b176fef5130ca995d2b9f839ccf690a880eef (patch) | |
tree | abf47e071c49af987bfa30304247de6cd6e8fa78 | |
parent | bc0c49120545212dcc8b185d81971a000bf866d1 (diff) | |
download | FreeBSD-src-124b176fef5130ca995d2b9f839ccf690a880eef.zip FreeBSD-src-124b176fef5130ca995d2b9f839ccf690a880eef.tar.gz |
Fix module builds for i386 and amd64.
-rw-r--r-- | sys/amd64/amd64/mem.c | 37 | ||||
-rw-r--r-- | sys/amd64/amd64/mp_machdep.c | 9 | ||||
-rw-r--r-- | sys/dev/mem/memdev.c | 2 | ||||
-rw-r--r-- | sys/dev/mem/memutil.c | 62 | ||||
-rw-r--r-- | sys/i386/i386/mem.c | 37 | ||||
-rw-r--r-- | sys/i386/i386/mp_machdep.c | 9 | ||||
-rw-r--r-- | sys/modules/mem/Makefile | 3 | ||||
-rw-r--r-- | sys/sys/memrange.h | 2 |
8 files changed, 84 insertions, 77 deletions
diff --git a/sys/amd64/amd64/mem.c b/sys/amd64/amd64/mem.c index 1b46d3d..00f5a8e 100644 --- a/sys/amd64/amd64/mem.c +++ b/sys/amd64/amd64/mem.c @@ -71,14 +71,6 @@ __FBSDID("$FreeBSD$"); * Used in /dev/mem drivers and elsewhere */ MALLOC_DEFINE(M_MEMDESC, "memdesc", "memory range descriptors"); -struct mem_range_softc mem_range_softc; - -void -mem_range_AP_init(void) -{ - if (mem_range_softc.mr_op && mem_range_softc.mr_op->initAP) - mem_range_softc.mr_op->initAP(&mem_range_softc); -} /* ARGSUSED */ int @@ -223,35 +215,6 @@ memioctl(struct cdev *dev __unused, u_long cmd, caddr_t data, int flags, return (error); } -/* - * Implementation-neutral, kernel-callable functions for manipulating - * memory range attributes. - */ -int -mem_range_attr_get(struct mem_range_desc *mrd, int *arg) -{ - /* can we handle this? */ - if (mem_range_softc.mr_op == NULL) - return (EOPNOTSUPP); - - if (*arg == 0) - *arg = mem_range_softc.mr_ndesc; - else - bcopy(mem_range_softc.mr_desc, mrd, - (*arg) * sizeof(struct mem_range_desc)); - return (0); -} - -int -mem_range_attr_set(struct mem_range_desc *mrd, int *arg) -{ - /* can we handle this? */ - if (mem_range_softc.mr_op == NULL) - return (EOPNOTSUPP); - - return (mem_range_softc.mr_op->set(&mem_range_softc, mrd, arg)); -} - void dev_mem_md_init(void) { diff --git a/sys/amd64/amd64/mp_machdep.c b/sys/amd64/amd64/mp_machdep.c index cf223b1..21bfb8a 100644 --- a/sys/amd64/amd64/mp_machdep.c +++ b/sys/amd64/amd64/mp_machdep.c @@ -142,6 +142,15 @@ static int hlt_logical_cpus; static struct sysctl_ctx_list logical_cpu_clist; static u_int bootMP_size; +struct mem_range_softc mem_range_softc; + +static void +mem_range_AP_init(void) +{ + if (mem_range_softc.mr_op && mem_range_softc.mr_op->initAP) + mem_range_softc.mr_op->initAP(&mem_range_softc); +} + void mp_topology(void) { diff --git a/sys/dev/mem/memdev.c b/sys/dev/mem/memdev.c index c6059a5..9fb33d2 100644 --- a/sys/dev/mem/memdev.c +++ b/sys/dev/mem/memdev.c @@ -34,7 +34,6 @@ __FBSDID("$FreeBSD$"); #include <sys/kernel.h> #include <sys/lock.h> #include <sys/malloc.h> -#include <sys/memrange.h> #include <sys/module.h> #include <sys/mutex.h> #include <sys/proc.h> @@ -98,7 +97,6 @@ mem_modevent(module_t mod __unused, int type, void *data __unused) default: return(EOPNOTSUPP); - break; } diff --git a/sys/dev/mem/memutil.c b/sys/dev/mem/memutil.c new file mode 100644 index 0000000..f514f50 --- /dev/null +++ b/sys/dev/mem/memutil.c @@ -0,0 +1,62 @@ +/*- + * Copyright (c) 2004 Mark R V Murray + * All rights reserved. + * + * 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 + * in this position and unchanged. + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``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 AUTHOR 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. + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/param.h> +#include <sys/malloc.h> +#include <sys/memrange.h> +#include <sys/systm.h> + +/* + * Implementation-neutral, kernel-callable functions for manipulating + * memory range attributes. + */ +int +mem_range_attr_get(struct mem_range_desc *mrd, int *arg) +{ + /* can we handle this? */ + if (mem_range_softc.mr_op == NULL) + return (EOPNOTSUPP); + + if (*arg == 0) + *arg = mem_range_softc.mr_ndesc; + else + bcopy(mem_range_softc.mr_desc, mrd, + (*arg) * sizeof(struct mem_range_desc)); + return (0); +} + +int +mem_range_attr_set(struct mem_range_desc *mrd, int *arg) +{ + /* can we handle this? */ + if (mem_range_softc.mr_op == NULL) + return (EOPNOTSUPP); + + return (mem_range_softc.mr_op->set(&mem_range_softc, mrd, arg)); +} diff --git a/sys/i386/i386/mem.c b/sys/i386/i386/mem.c index 55d2d2e..d093e2d 100644 --- a/sys/i386/i386/mem.c +++ b/sys/i386/i386/mem.c @@ -70,14 +70,6 @@ __FBSDID("$FreeBSD$"); * Used in /dev/mem drivers and elsewhere */ MALLOC_DEFINE(M_MEMDESC, "memdesc", "memory range descriptors"); -struct mem_range_softc mem_range_softc; - -void -mem_range_AP_init(void) -{ - if (mem_range_softc.mr_op && mem_range_softc.mr_op->initAP) - mem_range_softc.mr_op->initAP(&mem_range_softc); -} /* ARGSUSED */ int @@ -218,35 +210,6 @@ memioctl(struct cdev *dev __unused, u_long cmd, caddr_t data, int flags, return (error); } -/* - * Implementation-neutral, kernel-callable functions for manipulating - * memory range attributes. - */ -int -mem_range_attr_get(struct mem_range_desc *mrd, int *arg) -{ - /* can we handle this? */ - if (mem_range_softc.mr_op == NULL) - return (EOPNOTSUPP); - - if (*arg == 0) - *arg = mem_range_softc.mr_ndesc; - else - bcopy(mem_range_softc.mr_desc, mrd, - (*arg) * sizeof(struct mem_range_desc)); - return (0); -} - -int -mem_range_attr_set(struct mem_range_desc *mrd, int *arg) -{ - /* can we handle this? */ - if (mem_range_softc.mr_op == NULL) - return (EOPNOTSUPP); - - return (mem_range_softc.mr_op->set(&mem_range_softc, mrd, arg)); -} - void dev_mem_md_init(void) { diff --git a/sys/i386/i386/mp_machdep.c b/sys/i386/i386/mp_machdep.c index 5fd35d2..48ba4ef 100644 --- a/sys/i386/i386/mp_machdep.c +++ b/sys/i386/i386/mp_machdep.c @@ -212,6 +212,15 @@ static int hlt_cpus_mask; static int hlt_logical_cpus; static struct sysctl_ctx_list logical_cpu_clist; +struct mem_range_softc mem_range_softc; + +static void +mem_range_AP_init(void) +{ + if (mem_range_softc.mr_op && mem_range_softc.mr_op->initAP) + mem_range_softc.mr_op->initAP(&mem_range_softc); +} + void mp_topology(void) { diff --git a/sys/modules/mem/Makefile b/sys/modules/mem/Makefile index d1529a5..75d89e3 100644 --- a/sys/modules/mem/Makefile +++ b/sys/modules/mem/Makefile @@ -5,6 +5,9 @@ KMOD= mem SRCS= memdev.c mem.c +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" +SRCS+= memutil.c +.endif SRCS+= bus_if.h device_if.h vnode_if.h .include <bsd.kmod.mk> diff --git a/sys/sys/memrange.h b/sys/sys/memrange.h index 558ad31..ace778d 100644 --- a/sys/sys/memrange.h +++ b/sys/sys/memrange.h @@ -66,6 +66,6 @@ extern struct mem_range_softc mem_range_softc; extern int mem_range_attr_get(struct mem_range_desc *mrd, int *arg); extern int mem_range_attr_set(struct mem_range_desc *mrd, int *arg); -extern void mem_range_AP_init(void); + #endif |