Module Name:    src
Committed By:   rkujawa
Date:           Sun May 19 15:51:11 UTC 2013

Modified Files:
        src/sys/arch/arm/conf: files.arm
        src/sys/arch/arm/include: cpuconf.h cpufunc.h

Log Message:
Make PJ4B support code compilable.

Obtained from Marvell, Semihalf.


To generate a diff of this commit:
cvs rdiff -u -r1.116 -r1.117 src/sys/arch/arm/conf/files.arm
cvs rdiff -u -r1.20 -r1.21 src/sys/arch/arm/include/cpuconf.h
cvs rdiff -u -r1.62 -r1.63 src/sys/arch/arm/include/cpufunc.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/conf/files.arm
diff -u src/sys/arch/arm/conf/files.arm:1.116 src/sys/arch/arm/conf/files.arm:1.117
--- src/sys/arch/arm/conf/files.arm:1.116	Thu Feb 14 07:26:23 2013
+++ src/sys/arch/arm/conf/files.arm	Sun May 19 15:51:10 2013
@@ -1,4 +1,4 @@
-#	$NetBSD: files.arm,v 1.116 2013/02/14 07:26:23 matt Exp $
+#	$NetBSD: files.arm,v 1.117 2013/05/19 15:51:10 rkujawa Exp $
 
 # temporary define to allow easy moving to ../arch/arm/arm32
 defflag				ARM32
@@ -8,7 +8,7 @@ defflag	opt_cputypes.h		CPU_ARM2 CPU_ARM
 defflag	opt_cputypes.h		CPU_ARM6 CPU_ARM7 CPU_ARM7TDMI CPU_ARM8
 				CPU_ARM9 CPU_ARM9E CPU_ARM10 CPU_ARM11
 				CPU_SA110 CPU_SA1100 CPU_SA1110 CPU_IXP12X0
-				CPU_FA526 CPU_CORTEX
+				CPU_FA526 CPU_CORTEX CPU_PJ4B
 				CPU_XSCALE_80200 CPU_XSCALE_80321
 				CPU_XSCALE_PXA250 CPU_XSCALE_PXA270
 				CPU_XSCALE_IXP425 
@@ -136,7 +136,8 @@ file	arch/arm/arm/cpufunc_asm_armv5.S	cp
 file	arch/arm/arm/cpufunc_asm_armv5_ec.S	cpu_arm9e | cpu_arm10 |
 							cpu_sheeva
 file	arch/arm/arm/cpufunc_asm_armv6.S	cpu_arm11 | cpu_cortex
-file	arch/arm/arm/cpufunc_asm_armv7.S	cpu_cortex
+file	arch/arm/arm/cpufunc_asm_armv7.S	cpu_cortex | cpu_pj4b
+file	arch/arm/arm/cpufunc_asm_pj4b.S		cpu_pj4b
 file	arch/arm/arm/cpufunc_asm_sa1.S		cpu_sa110 | cpu_sa1100 |
 							cpu_sa1110 |
 							cpu_ixp12x0

Index: src/sys/arch/arm/include/cpuconf.h
diff -u src/sys/arch/arm/include/cpuconf.h:1.20 src/sys/arch/arm/include/cpuconf.h:1.21
--- src/sys/arch/arm/include/cpuconf.h:1.20	Thu Mar 10 07:47:14 2011
+++ src/sys/arch/arm/include/cpuconf.h	Sun May 19 15:51:10 2013
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpuconf.h,v 1.20 2011/03/10 07:47:14 bsh Exp $	*/
+/*	$NetBSD: cpuconf.h,v 1.21 2013/05/19 15:51:10 rkujawa Exp $	*/
 
 /*
  * Copyright (c) 2002 Wasabi Systems, Inc.
@@ -132,7 +132,7 @@
 #define ARM_ARCH_6	0
 #endif
 
-#if defined(CPU_CORTEX)
+#if defined(CPU_CORTEX) || defined(CPU_PJ4B)
 #define ARM_ARCH_7	1
 #else
 #define ARM_ARCH_7	0
@@ -217,7 +217,8 @@
 	defined(CPU_ARM1136) || \
 	defined(CPU_ARM1176) || \
 	defined(CPU_ARM11) && \
-	!defined(CPU_CORTEX) && !defined(CPU_ARM11MPCORE)
+	!defined(CPU_CORTEX) && \
+	!defined(CPU_ARM11MPCORE) && !defined(CPU_PJ4B)
 #define	ARM_MMU_V6C		1
 #else
 #define	ARM_MMU_V6C		0
@@ -234,7 +235,7 @@
 
 
 #if !defined(_KERNEL_OPT) ||						\
-	 defined(CPU_CORTEX)
+	 defined(CPU_CORTEX) || defined(CPU_PJ4B)
 #define	ARM_MMU_V7		1
 #else
 #define	ARM_MMU_V7		0

Index: src/sys/arch/arm/include/cpufunc.h
diff -u src/sys/arch/arm/include/cpufunc.h:1.62 src/sys/arch/arm/include/cpufunc.h:1.63
--- src/sys/arch/arm/include/cpufunc.h:1.62	Mon Nov 12 18:00:37 2012
+++ src/sys/arch/arm/include/cpufunc.h	Sun May 19 15:51:10 2013
@@ -221,6 +221,8 @@ void	cpufunc_domains		(u_int);
 u_int	cpufunc_faultstatus	(void);
 u_int	cpufunc_faultaddress	(void);
 
+u_int	cpu_pfr			(int);
+
 #if defined(CPU_ARM2) || defined(CPU_ARM250) || defined(CPU_ARM3)
 void	arm3_cache_flush	(void);
 #endif	/* CPU_ARM2 || CPU_ARM250 || CPU_ARM3 */
@@ -468,8 +470,6 @@ void	armv7_dcache_wbinv_range(vaddr_t, v
 void	armv7_dcache_inv_range(vaddr_t, vsize_t);
 void	armv7_idcache_wbinv_range(vaddr_t, vsize_t);
 
-void 	armv7_dcache_wbinv_all (void);
-void	armv7_idcache_wbinv_all(void);
 void	armv7_icache_sync_all(void);
 void	armv7_cpu_sleep(int);
 void	armv7_context_switch(u_int);
@@ -478,6 +478,33 @@ void	armv7_drain_writebuf(void);
 void	armv7_setup(char *string);
 #endif
 
+#if defined(CPU_CORTEX) || defined(CPU_PJ4B)
+void 	armv7_dcache_wbinv_all (void);
+void	armv7_idcache_wbinv_all(void);
+#endif
+
+#if defined(CPU_PJ4B)
+void	pj4b_setttb(u_int, bool);
+void	pj4b_tlb_flushID(void);
+void	pj4b_tlb_flushID_SE(u_int);
+
+void	pj4b_icache_sync_range(vm_offset_t, vm_size_t);
+void	pj4b_idcache_wbinv_range(vm_offset_t, vm_size_t);
+void	pj4b_dcache_wbinv_range(vm_offset_t, vm_size_t);
+void	pj4b_dcache_inv_range(vm_offset_t, vm_size_t);
+void	pj4b_dcache_wb_range(vm_offset_t, vm_size_t);
+
+void	pj4b_drain_writebuf(void);
+void	pj4b_drain_readbuf(void);
+void	pj4b_flush_brnchtgt_all(void);
+void	pj4b_flush_brnchtgt_va(u_int);
+void	pj4b_context_switch(u_int);
+void	pj4b_sleep(int);
+
+void	pj4bv7_setup(char *string);
+void	pj4b_config(void);
+
+#endif /* CPU_PJ4B */
 
 #if defined(CPU_ARM1136) || defined(CPU_ARM1176)
 void	arm11x6_setttb			(u_int, bool);

Reply via email to