summaryrefslogtreecommitdiffstats
path: root/sys/arm/include
diff options
context:
space:
mode:
authorrpaulo <rpaulo@FreeBSD.org>2010-01-04 03:35:45 +0000
committerrpaulo <rpaulo@FreeBSD.org>2010-01-04 03:35:45 +0000
commit69436c4cabfac51fcdfa42784059f5ae68801cd4 (patch)
tree2fb376f68d2590dd7f858046d845d1af0f99f6ba /sys/arm/include
parentd3158f2b66a7748dd7e67c5fc04bc181f987c5ce (diff)
downloadFreeBSD-src-69436c4cabfac51fcdfa42784059f5ae68801cd4.zip
FreeBSD-src-69436c4cabfac51fcdfa42784059f5ae68801cd4.tar.gz
Add support for Cavium Econa CNS11XX ARM boards. These boards were
previously know by StarSemi STR9104. Tested by the submitter on an Emprex NSD-100 board. Submitted by: Yohanes Nugroho <yohanes at gmail.com> Reviewed by: freebsd-arm, stas Obtained from: //depot/projects/str91xx/...
Diffstat (limited to 'sys/arm/include')
-rw-r--r--sys/arm/include/cpuconf.h5
-rw-r--r--sys/arm/include/cpufunc.h23
2 files changed, 26 insertions, 2 deletions
diff --git a/sys/arm/include/cpuconf.h b/sys/arm/include/cpuconf.h
index 458507a..942b591 100644
--- a/sys/arm/include/cpuconf.h
+++ b/sys/arm/include/cpuconf.h
@@ -61,6 +61,7 @@
defined(CPU_XSCALE_80200) + \
defined(CPU_XSCALE_80321) + \
defined(CPU_XSCALE_PXA2X0) + \
+ defined(CPU_FA526) + \
defined(CPU_XSCALE_IXP425))
/*
@@ -68,7 +69,7 @@
*/
#if (defined(CPU_ARM7TDMI) || defined(CPU_ARM8) || defined(CPU_ARM9) || \
defined(CPU_SA110) || defined(CPU_SA1100) || defined(CPU_SA1110) || \
- defined(CPU_IXP12X0) || defined(CPU_XSCALE_IXP425))
+ defined(CPU_IXP12X0) || defined(CPU_XSCALE_IXP425) || defined(CPU_FA526))
#define ARM_ARCH_4 1
#else
#define ARM_ARCH_4 0
@@ -125,7 +126,7 @@
#if (defined(CPU_ARM6) || defined(CPU_ARM7) || defined(CPU_ARM7TDMI) || \
defined(CPU_ARM8) || defined(CPU_ARM9) || defined(CPU_ARM9E) || \
- defined(CPU_ARM10) || defined(CPU_ARM11))
+ defined(CPU_ARM10) || defined(CPU_ARM11) || defined(CPU_FA526))
#define ARM_MMU_GENERIC 1
#else
#define ARM_MMU_GENERIC 0
diff --git a/sys/arm/include/cpufunc.h b/sys/arm/include/cpufunc.h
index 74f21e4..8494966 100644
--- a/sys/arm/include/cpufunc.h
+++ b/sys/arm/include/cpufunc.h
@@ -283,6 +283,28 @@ void arm8_setup (char *string);
u_int arm8_clock_config (u_int, u_int);
#endif
+
+#ifdef CPU_FA526
+void fa526_setup (char *arg);
+void fa526_setttb (u_int ttb);
+void fa526_context_switch (void);
+void fa526_cpu_sleep (int);
+void fa526_tlb_flushI_SE (u_int);
+void fa526_tlb_flushID_SE (u_int);
+void fa526_flush_prefetchbuf (void);
+void fa526_flush_brnchtgt_E (u_int);
+
+void fa526_icache_sync_all (void);
+void fa526_icache_sync_range(vm_offset_t start, vm_size_t end);
+void fa526_dcache_wbinv_all (void);
+void fa526_dcache_wbinv_range(vm_offset_t start, vm_size_t end);
+void fa526_dcache_inv_range (vm_offset_t start, vm_size_t end);
+void fa526_dcache_wb_range (vm_offset_t start, vm_size_t end);
+void fa526_idcache_wbinv_all(void);
+void fa526_idcache_wbinv_range(vm_offset_t start, vm_size_t end);
+#endif
+
+
#ifdef CPU_SA110
void sa110_setup (char *string);
void sa110_context_switch (void);
@@ -445,6 +467,7 @@ extern unsigned armv5_dcache_index_inc;
#if defined(CPU_ARM9) || defined(CPU_ARM9E) || defined(CPU_ARM10) || \
defined(CPU_SA110) || defined(CPU_SA1100) || defined(CPU_SA1110) || \
defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \
+ defined(CPU_FA526) || \
defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) || \
defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
OpenPOWER on IntegriCloud