aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMark Murray <markm@FreeBSD.org>2004-08-04 18:30:31 +0000
committerMark Murray <markm@FreeBSD.org>2004-08-04 18:30:31 +0000
commita20ad05beb32b120fab7f8cfaee81601d7851d92 (patch)
treeabf47e071c49af987bfa30304247de6cd6e8fa78 /sys
parent98aed8ca56a11cd051fbe0eb2a94575b6b23bac2 (diff)
downloadsrc-a20ad05beb32b120fab7f8cfaee81601d7851d92.tar.gz
src-a20ad05beb32b120fab7f8cfaee81601d7851d92.zip
Fix module builds for i386 and amd64.
Notes
Notes: svn path=/head/; revision=133129
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/amd64/mem.c37
-rw-r--r--sys/amd64/amd64/mp_machdep.c9
-rw-r--r--sys/dev/mem/memdev.c2
-rw-r--r--sys/dev/mem/memutil.c62
-rw-r--r--sys/i386/i386/mem.c37
-rw-r--r--sys/i386/i386/mp_machdep.c9
-rw-r--r--sys/modules/mem/Makefile3
-rw-r--r--sys/sys/memrange.h2
8 files changed, 84 insertions, 77 deletions
diff --git a/sys/amd64/amd64/mem.c b/sys/amd64/amd64/mem.c
index 1b46d3d17e02..00f5a8e1a20b 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 cf223b116aaf..21bfb8a168c3 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 c6059a5c285a..9fb33d2c4d48 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 000000000000..f514f50bedb6
--- /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 55d2d2e0315a..d093e2d47681 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 5fd35d2d3a02..48ba4efdf742 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 d1529a53f971..75d89e38c9e3 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 558ad31377e3..ace778d5bfd4 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