summaryrefslogtreecommitdiffstats
path: root/sys/arm/include/sysarch.h
diff options
context:
space:
mode:
authorgonzo <gonzo@FreeBSD.org>2012-08-15 03:03:03 +0000
committergonzo <gonzo@FreeBSD.org>2012-08-15 03:03:03 +0000
commit032427f3e9854fccfdddaea8fb15ae4603391a11 (patch)
tree68d86df1ea7d9bfea335c91632747716f5a0df4a /sys/arm/include/sysarch.h
parenteca813ad76756aea4f70787cf7827d4b319cfe94 (diff)
downloadFreeBSD-src-032427f3e9854fccfdddaea8fb15ae4603391a11.zip
FreeBSD-src-032427f3e9854fccfdddaea8fb15ae4603391a11.tar.gz
Merging projects/armv6, part 1
Cummulative patch of changes that are not vendor-specific: - ARMv6 and ARMv7 architecture support - ARM SMP support - VFP/Neon support - ARM Generic Interrupt Controller driver - Simplification of startup code for all platforms
Diffstat (limited to 'sys/arm/include/sysarch.h')
-rw-r--r--sys/arm/include/sysarch.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/arm/include/sysarch.h b/sys/arm/include/sysarch.h
index 138e91f..b0de6db 100644
--- a/sys/arm/include/sysarch.h
+++ b/sys/arm/include/sysarch.h
@@ -50,9 +50,18 @@
* if ARM_RAS_END moves in relation to ARM_RAS_START (look for occurrances
* of ldr/str rm,[rn, #4]).
*/
+
+/* ARM_TP_ADDRESS is needed for processors that don't support
+ * the exclusive-access opcodes introduced with ARMv6K. */
+/* TODO: #if !defined(_HAVE_ARMv6K_INSTRUCTIONS) */
+#if !defined (__ARM_ARCH_7__) && \
+ !defined (__ARM_ARCH_7A__) && \
+ !defined (__ARM_ARCH_6K__) && \
+ !defined (__ARM_ARCH_6ZK__)
#define ARM_TP_ADDRESS (ARM_VECTORS_HIGH + 0x1000)
#define ARM_RAS_START (ARM_TP_ADDRESS + 4)
#define ARM_RAS_END (ARM_TP_ADDRESS + 8)
+#endif
#ifndef LOCORE
#ifndef __ASSEMBLER__
OpenPOWER on IntegriCloud