Module Name:    src
Committed By:   matt
Date:           Fri Oct 19 13:47:03 UTC 2012

Modified Files:
        src/sys/arch/arm/arm: cpufunc.c cpufunc_asm_armv7.S
        src/sys/arch/arm/include: cpufunc.h

Log Message:
Add armv7_drain_writebuf (which is just a dsb).


To generate a diff of this commit:
cvs rdiff -u -r1.116 -r1.117 src/sys/arch/arm/arm/cpufunc.c
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/arm/arm/cpufunc_asm_armv7.S
cvs rdiff -u -r1.60 -r1.61 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/arm/cpufunc.c
diff -u src/sys/arch/arm/arm/cpufunc.c:1.116 src/sys/arch/arm/arm/cpufunc.c:1.117
--- src/sys/arch/arm/arm/cpufunc.c:1.116	Tue Sep 11 17:51:38 2012
+++ src/sys/arch/arm/arm/cpufunc.c	Fri Oct 19 13:47:03 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpufunc.c,v 1.116 2012/09/11 17:51:38 matt Exp $	*/
+/*	$NetBSD: cpufunc.c,v 1.117 2012/10/19 13:47:03 matt Exp $	*/
 
 /*
  * arm7tdmi support code Copyright (c) 2001 John Fremlin
@@ -49,7 +49,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cpufunc.c,v 1.116 2012/09/11 17:51:38 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpufunc.c,v 1.117 2012/10/19 13:47:03 matt Exp $");
 
 #include "opt_compat_netbsd.h"
 #include "opt_cpuoptions.h"
@@ -1311,7 +1311,7 @@ struct cpu_functions cortex_cpufuncs = {
 	/* Other functions */
 
 	.cf_flush_prefetchbuf	= cpufunc_nullop,
-	.cf_drain_writebuf	= arm11_drain_writebuf,
+	.cf_drain_writebuf	= armv7_drain_writebuf,
 	.cf_flush_brnchtgt_C	= cpufunc_nullop,
 	.cf_flush_brnchtgt_E	= (void *)cpufunc_nullop,
 

Index: src/sys/arch/arm/arm/cpufunc_asm_armv7.S
diff -u src/sys/arch/arm/arm/cpufunc_asm_armv7.S:1.8 src/sys/arch/arm/arm/cpufunc_asm_armv7.S:1.9
--- src/sys/arch/arm/arm/cpufunc_asm_armv7.S:1.8	Wed Oct 17 18:55:43 2012
+++ src/sys/arch/arm/arm/cpufunc_asm_armv7.S	Fri Oct 19 13:47:03 2012
@@ -74,7 +74,7 @@ ENTRY(armv7_tlb_flushID_SE)
 END(armv7_tlb_flushID_SE)
 
 
-ENTRY(armv7_setttb)
+ENTRY_NP(armv7_setttb)
 	mrc	p15, 0, r2, c0, c0, 5	@ get MPIDR
 	cmp	r2, #0
 	orrlt	r0, #0x5b		@ MP, cachable (Normal WB)
@@ -91,6 +91,13 @@ ENTRY(armv7_setttb)
 	bx	lr
 END(armv7_setttb)
 
+/* Other functions. */
+
+ENTRY_NP(armv7_drain_writebuf)
+	dsb				@ data synchronization barrier
+	RET
+END(armv7_drain_writebuf)
+
 /* Cache operations. */
 
 /* LINTSTUB: void armv7_icache_sync_range(vaddr_t, vsize_t); */

Index: src/sys/arch/arm/include/cpufunc.h
diff -u src/sys/arch/arm/include/cpufunc.h:1.60 src/sys/arch/arm/include/cpufunc.h:1.61
--- src/sys/arch/arm/include/cpufunc.h:1.60	Sat Sep 22 00:33:37 2012
+++ src/sys/arch/arm/include/cpufunc.h	Fri Oct 19 13:47:03 2012
@@ -474,7 +474,8 @@ void	armv7_icache_sync_all(void);
 void	armv7_cpu_sleep(int);
 void	armv7_context_switch(u_int);
 void	armv7_tlb_flushID_SE(u_int);
-void	armv7_setup		(char *string);
+void	armv7_drain_writebuf(void);
+void	armv7_setup(char *string);
 #endif
 
 

Reply via email to