summaryrefslogtreecommitdiff
path: root/arch/csky/abiv2/inc
diff options
context:
space:
mode:
authorGuo Ren <guoren@linux.alibaba.com>2020-03-28 14:14:37 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-04-23 11:36:38 +0300
commite907a0d09b34e63163fb73b6826805e334ae3e11 (patch)
tree1fb088ef495809da054661faac22a2429c50efe7 /arch/csky/abiv2/inc
parent88591187bebc0140acb3901cb7e73c7442f92771 (diff)
downloadlinux-e907a0d09b34e63163fb73b6826805e334ae3e11.tar.xz
csky: Fixup cpu speculative execution to IO area
[ Upstream commit aefd9461d34a1b0a2acad0750c43216c1c27b9d4 ] For the memory size ( > 512MB, < 1GB), the MSA setting is: - SSEG0: PHY_START , PHY_START + 512MB - SSEG1: PHY_START + 512MB, PHY_START + 1GB But the real memory is no more than 1GB, there is a gap between the end size of memory and border of 1GB. CPU could speculatively execute to that gap and if the gap of the bus couldn't respond to the CPU request, then the crash will happen. Now make the setting with: - SSEG0: PHY_START , PHY_START + 512MB (no change) - SSEG1: Disabled (We use highmem to use the memory of 512MB~1GB) We also deprecated zhole_szie[] settings, it's only used by arm style CPUs. All memory gap should use Reserved setting of dts in csky system. Signed-off-by: Guo Ren <guoren@linux.alibaba.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'arch/csky/abiv2/inc')
-rw-r--r--arch/csky/abiv2/inc/abi/entry.h7
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/csky/abiv2/inc/abi/entry.h b/arch/csky/abiv2/inc/abi/entry.h
index 94a7a58765df..111973c6c713 100644
--- a/arch/csky/abiv2/inc/abi/entry.h
+++ b/arch/csky/abiv2/inc/abi/entry.h
@@ -230,11 +230,8 @@
addi r6, 0x1ce
mtcr r6, cr<30, 15> /* Set MSA0 */
- lsri r6, 28
- addi r6, 2
- lsli r6, 28
- addi r6, 0x1ce
- mtcr r6, cr<31, 15> /* Set MSA1 */
+ movi r6, 0
+ mtcr r6, cr<31, 15> /* Clr MSA1 */
/* enable MMU */
mfcr r6, cr18