summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandrew <andrew@FreeBSD.org>2015-11-21 13:02:34 +0000
committerandrew <andrew@FreeBSD.org>2015-11-21 13:02:34 +0000
commit04f8e4e4f5ac80e3b1b65dfcc69d4d2969a84099 (patch)
tree18d43a9fe159ccd3c3ddf066e8c5249415c198e4
parent17bcda38809a6157ad3a5adb2336e431ac39224c (diff)
downloadFreeBSD-src-04f8e4e4f5ac80e3b1b65dfcc69d4d2969a84099.zip
FreeBSD-src-04f8e4e4f5ac80e3b1b65dfcc69d4d2969a84099.tar.gz
Limit arm_base_bs_tag to ARMv4 and ARMv5, we only used it in one place in
armv6 and that can use fdtbus_bs_tag.
-rw-r--r--sys/arm/arm/bus_space_base.c3
-rw-r--r--sys/arm/include/bus.h3
-rw-r--r--sys/arm/versatile/versatile_pci.c2
3 files changed, 7 insertions, 1 deletions
diff --git a/sys/arm/arm/bus_space_base.c b/sys/arm/arm/bus_space_base.c
index 0eeaaa3..345ca53 100644
--- a/sys/arm/arm/bus_space_base.c
+++ b/sys/arm/arm/bus_space_base.c
@@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$");
#include <sys/param.h>
#include <sys/systm.h>
#include <machine/bus.h>
+#include <machine/acle-compat.h>
#include "opt_platform.h"
@@ -156,4 +157,6 @@ static struct bus_space arm_base_bus_space __aligned(CACHE_LINE_SIZE) = {
bus_space_tag_t fdtbus_bs_tag = &arm_base_bus_space;
#endif
+#if __ARM_ARCH < 6
bus_space_tag_t arm_base_bs_tag = &arm_base_bus_space;
+#endif
diff --git a/sys/arm/include/bus.h b/sys/arm/include/bus.h
index 300ebfb..d83ae8f 100644
--- a/sys/arm/include/bus.h
+++ b/sys/arm/include/bus.h
@@ -67,6 +67,7 @@
#define _MACHINE_BUS_H_
#include <machine/_bus.h>
+#include <machine/acle-compat.h>
/*
* int bus_space_map (bus_space_tag_t t, bus_addr_t addr,
@@ -252,7 +253,9 @@ struct bus_space {
bus_size_t, const uint64_t *, bus_size_t);
};
+#if __ARM_ARCH < 6
extern bus_space_tag_t arm_base_bs_tag;
+#endif
/*
* Utility macros; INTERNAL USE ONLY.
diff --git a/sys/arm/versatile/versatile_pci.c b/sys/arm/versatile/versatile_pci.c
index f5ef6e9..8a5c010 100644
--- a/sys/arm/versatile/versatile_pci.c
+++ b/sys/arm/versatile/versatile_pci.c
@@ -357,7 +357,7 @@ versatile_pci_activate_resource(device_t bus, device_t child, int type, int rid,
vaddr = (vm_offset_t)pmap_mapdev(rman_get_start(r),
rman_get_size(r));
rman_set_bushandle(r, vaddr);
- rman_set_bustag(r, arm_base_bs_tag);
+ rman_set_bustag(r, fdtbus_bs_tag);
res = rman_activate_resource(r);
break;
case SYS_RES_IRQ:
OpenPOWER on IntegriCloud