aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/cache.h
diff options
context:
space:
mode:
authorChristophe Leroy <christophe.leroy@c-s.fr>2019-05-14 05:05:15 -0400
committerMichael Ellerman <mpe@ellerman.id.au>2019-07-04 12:06:37 -0400
commitd98fc70fc139b72ae098d24fde42ad70c8ff2f81 (patch)
treef968d93729af83cf24f7eaa62b91f01d1a11ed65 /arch/powerpc/include/asm/cache.h
parent1cfb725fb1899dc6fdc88f8b5354a65e8ad260c6 (diff)
powerpc/32: define helpers to get L1 cache sizes.
This patch defines C helpers to retrieve the size of cache blocks and uses them in the cacheflush functions. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/include/asm/cache.h')
-rw-r--r--arch/powerpc/include/asm/cache.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/arch/powerpc/include/asm/cache.h b/arch/powerpc/include/asm/cache.h
index df8e4c407366..e84d1622eeb6 100644
--- a/arch/powerpc/include/asm/cache.h
+++ b/arch/powerpc/include/asm/cache.h
@@ -33,7 +33,8 @@
33 33
34#define IFETCH_ALIGN_BYTES (1 << IFETCH_ALIGN_SHIFT) 34#define IFETCH_ALIGN_BYTES (1 << IFETCH_ALIGN_SHIFT)
35 35
36#if defined(__powerpc64__) && !defined(__ASSEMBLY__) 36#if !defined(__ASSEMBLY__)
37#ifdef CONFIG_PPC64
37 38
38struct ppc_cache_info { 39struct ppc_cache_info {
39 u32 size; 40 u32 size;
@@ -53,7 +54,18 @@ struct ppc64_caches {
53}; 54};
54 55
55extern struct ppc64_caches ppc64_caches; 56extern struct ppc64_caches ppc64_caches;
56#endif /* __powerpc64__ && ! __ASSEMBLY__ */ 57#else
58static inline u32 l1_cache_shift(void)
59{
60 return L1_CACHE_SHIFT;
61}
62
63static inline u32 l1_cache_bytes(void)
64{
65 return L1_CACHE_BYTES;
66}
67#endif
68#endif /* ! __ASSEMBLY__ */
57 69
58#if defined(__ASSEMBLY__) 70#if defined(__ASSEMBLY__)
59/* 71/*