Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-7]: src/sys/arch/arm Pull up following revision(s) (requested by ...
details: https://anonhg.NetBSD.org/src/rev/812ca9a582ab
branches: netbsd-7
changeset: 800266:812ca9a582ab
user: snj <snj%NetBSD.org@localhost>
date: Sun Jul 23 06:14:03 2017 +0000
description:
Pull up following revision(s) (requested by skrll in ticket #1452):
sys/arch/arm/arm32/genassym.cf: revision 1.75
sys/arch/arm/arm/cpufunc_asm_arm11x6.S: revision 1.8
In idcache_wbinv_range if the range size is bigger than the dcache size
then call idcache_wbinv_all
Avoids a problem with large ranges as seen in
port-evbarm/52169: setting dtrace module to load cause Pi to hang on boot
diffstat:
sys/arch/arm/arm/cpufunc_asm_arm11x6.S | 12 ++++++++++--
sys/arch/arm/arm32/genassym.cf | 5 ++++-
2 files changed, 14 insertions(+), 3 deletions(-)
diffs (53 lines):
diff -r 91a23f2fa3de -r 812ca9a582ab sys/arch/arm/arm/cpufunc_asm_arm11x6.S
--- a/sys/arch/arm/arm/cpufunc_asm_arm11x6.S Sun Jul 23 06:11:47 2017 +0000
+++ b/sys/arch/arm/arm/cpufunc_asm_arm11x6.S Sun Jul 23 06:14:03 2017 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: cpufunc_asm_arm11x6.S,v 1.7 2014/07/30 13:31:17 skrll Exp $ */
+/* $NetBSD: cpufunc_asm_arm11x6.S,v 1.7.2.1 2017/07/23 06:14:03 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 2014/07/30 13:31:17 skrll Exp $")
+RCSID("$NetBSD: cpufunc_asm_arm11x6.S,v 1.7.2.1 2017/07/23 06:14:03 snj Exp $")
#if 0
#define Invalidate_I_cache(Rtmp1, Rtmp2) \
@@ -164,6 +164,11 @@
END(arm11x6_icache_sync_range)
ENTRY_NP(arm11x6_idcache_wbinv_range)
+ ldr r2, .Larm_pcache
+ ldr r2, [r2, #DCACHE_SIZE]
+ cmp r1, r2
+ bge arm11x6_idcache_wbinv_all
+
add r1, r1, r0
sub r1, r1, #1
/* Erratum ARM1136 371025, workaround #2 */
@@ -212,3 +217,6 @@
bne 1b
RET
END(arm11x6_sleep)
+
+.Larm_pcache:
+ .word arm_pcache
diff -r 91a23f2fa3de -r 812ca9a582ab sys/arch/arm/arm32/genassym.cf
--- a/sys/arch/arm/arm32/genassym.cf Sun Jul 23 06:11:47 2017 +0000
+++ b/sys/arch/arm/arm32/genassym.cf Sun Jul 23 06:14:03 2017 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: genassym.cf,v 1.69.2.1 2015/03/27 11:27:39 martin Exp $
+# $NetBSD: genassym.cf,v 1.69.2.2 2017/07/23 06:14:04 snj Exp $
# Copyright (c) 1982, 1990 The Regents of the University of California.
# All rights reserved.
@@ -248,3 +248,6 @@
define M_NEXT offsetof(struct mbuf, m_next)
define IP_SRC offsetof(struct ip, ip_src)
define IP_DST offsetof(struct ip, ip_dst)
+
+# Cache information
+define DCACHE_SIZE offsetof(struct arm_cache_info, dcache_size)
- Prev by Date:
[src/netbsd-7]: src/sys/dev/sdmmc Pull up following revision(s) (requested by...
- Next by Date:
[src/netbsd-7]: src/doc 1418, 1422, 1423, 1438-1440, 1447, 1452, 1456
- Previous by Thread:
[src/netbsd-7]: src/sys/dev/sdmmc Pull up following revision(s) (requested by...
- Next by Thread:
[src/netbsd-7]: src/doc 1418, 1422, 1423, 1438-1440, 1447, 1452, 1456
- Indexes:
Home |
Main Index |
Thread Index |
Old Index