Module Name: src Committed By: snj Date: Mon Feb 19 19:24:43 UTC 2018
Modified Files: src/sys/arch/arm/arm [netbsd-7]: cpufunc_asm_arm11x6.S Log Message: Pull up following revision(s) (requested by skrll in ticket #1555): sys/arch/arm/arm/cpufunc_asm_arm11x6.S: 1.10 PR/52934: Yasushi Oshima: Apply the erratum fix that was applied to wbinv_range to isync_range so that we don't hang when we try to sync from execcmd_readvn(). To generate a diff of this commit: cvs rdiff -u -r1.7.2.1 -r1.7.2.2 src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S 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_asm_arm11x6.S diff -u src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S:1.7.2.1 src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S:1.7.2.2 --- src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S:1.7.2.1 Sun Jul 23 06:14:03 2017 +++ src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S Mon Feb 19 19:24:43 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: cpufunc_asm_arm11x6.S,v 1.7.2.1 2017/07/23 06:14:03 snj Exp $ */ +/* $NetBSD: cpufunc_asm_arm11x6.S,v 1.7.2.2 2018/02/19 19:24:43 snj Exp $ */ /* * Copyright (c) 2007 Microsoft @@ -63,7 +63,7 @@ #include <machine/asm.h> #include <arm/locore.h> -RCSID("$NetBSD: cpufunc_asm_arm11x6.S,v 1.7.2.1 2017/07/23 06:14:03 snj Exp $") +RCSID("$NetBSD: cpufunc_asm_arm11x6.S,v 1.7.2.2 2018/02/19 19:24:43 snj Exp $") #if 0 #define Invalidate_I_cache(Rtmp1, Rtmp2) \ @@ -137,6 +137,11 @@ ENTRY_NP(arm11x6_flush_prefetchbuf) END(arm11x6_flush_prefetchbuf) ENTRY_NP(arm11x6_icache_sync_range) + ldr r2, .Larm_pcache + ldr r2, [r2, #DCACHE_SIZE] + cmp r1, r2 + bge arm11x6_icache_sync_all + add r1, r1, r0 sub r1, r1, #1 /* Erratum ARM1136 371025, workaround #2 */