summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Larsson <andreas@gaisler.com>2013-07-01 16:16:07 +0200
committerDavid S. Miller <davem@davemloft.net>2013-07-10 13:35:52 -0700
commite8e2bfd1033aadfee334419b7d11eeba1bc9cbed (patch)
tree1515757e559ae1d31045b7a9961ea68b8487432b
parentf118e9abddfae94d7ef88858159d7556e1c2f7f6 (diff)
downloadlinux-stable-e8e2bfd1033aadfee334419b7d11eeba1bc9cbed.tar.gz
linux-stable-e8e2bfd1033aadfee334419b7d11eeba1bc9cbed.tar.bz2
linux-stable-e8e2bfd1033aadfee334419b7d11eeba1bc9cbed.zip
sparc32, leon: Require separate snoop tags set to regard snooping to be enabled
Even if data snooping is enabled, without separate snoop tags snooping will not work when the MMU is enabled. Signed-off-by: Andreas Larsson <andreas@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--arch/sparc/include/asm/leon.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sparc/include/asm/leon.h b/arch/sparc/include/asm/leon.h
index b836e9297f2a..c2f6ff6d7a35 100644
--- a/arch/sparc/include/asm/leon.h
+++ b/arch/sparc/include/asm/leon.h
@@ -108,7 +108,7 @@ static inline int sparc_leon3_snooping_enabled(void)
{
u32 cctrl;
__asm__ __volatile__("lda [%%g0] 2, %0\n\t" : "=r"(cctrl));
- return (cctrl >> 23) & 1;
+ return ((cctrl >> 23) & 1) && ((cctrl >> 17) & 1);
};
static inline void sparc_leon3_disable_cache(void)