diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2013-08-12 11:43:45 +0400 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2013-08-12 11:43:45 +0400 |
commit | cada23f308e3869ceb5c75f164d249448dfaec07 (patch) | |
tree | 97c7aebcad0eb2a93a7519251a01f5be9255ee75 /arch/arm/include/asm/tlbflush.h | |
parent | e769ece3b129698d2b09811a6f6d304e4eaa8c29 (diff) | |
parent | 6c8c0c4dc0e98ee2191211d66e9f876e95787073 (diff) | |
download | linux-cada23f308e3869ceb5c75f164d249448dfaec07.tar.xz |
Merge branch 'kvm-arm64/fixes-3.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into kvm-master
Diffstat (limited to 'arch/arm/include/asm/tlbflush.h')
-rw-r--r-- | arch/arm/include/asm/tlbflush.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm/include/asm/tlbflush.h b/arch/arm/include/asm/tlbflush.h index fdbb9e369745..f467e9b3f8d5 100644 --- a/arch/arm/include/asm/tlbflush.h +++ b/arch/arm/include/asm/tlbflush.h @@ -443,7 +443,18 @@ static inline void local_flush_bp_all(void) isb(); } +#include <asm/cputype.h> #ifdef CONFIG_ARM_ERRATA_798181 +static inline int erratum_a15_798181(void) +{ + unsigned int midr = read_cpuid_id(); + + /* Cortex-A15 r0p0..r3p2 affected */ + if ((midr & 0xff0ffff0) != 0x410fc0f0 || midr > 0x413fc0f2) + return 0; + return 1; +} + static inline void dummy_flush_tlb_a15_erratum(void) { /* @@ -453,6 +464,11 @@ static inline void dummy_flush_tlb_a15_erratum(void) dsb(); } #else +static inline int erratum_a15_798181(void) +{ + return 0; +} + static inline void dummy_flush_tlb_a15_erratum(void) { } |