diff options
| author | Serge Semin <[email protected]> | 2020-05-06 17:42:30 +0000 |
|---|---|---|
| committer | Thomas Bogendoerfer <[email protected]> | 2020-05-19 15:39:32 +0000 |
| commit | 9ee195fd1be87719e5fcda4cbd7ba4454249f04f (patch) | |
| tree | 5ef3b3fcdd40e6dc231c1b90e4214c171877ae84 /arch/mips/include/asm/stackframe.h | |
| parent | MIPS: Remove useless parameter of bootcmdline_init() (diff) | |
| download | kernel-9ee195fd1be87719e5fcda4cbd7ba4454249f04f.tar.gz kernel-9ee195fd1be87719e5fcda4cbd7ba4454249f04f.zip | |
mips: MAAR: Add XPA mode support
When XPA mode is enabled the normally 32-bits MAAR pair registers
are extended to be of 64-bits width as in pure 64-bits MIPS
architecture. In this case the MAAR registers can enable the
speculative loads/stores for addresses of up to 39-bits width.
But in this case the process of the MAAR initialization changes a bit.
The upper 32-bits of the registers are supposed to be accessed by mean
of the dedicated instructions mfhc0/mthc0 and there is a CP0.MAAR.VH
bit which should be set together with CP0.MAAR.VL as indication
of the boundary validity. All of these peculiarities were taken into
account in this commit so the speculative loads/stores would work
when XPA mode is enabled.
Co-developed-by: Alexey Malahov <[email protected]>
Signed-off-by: Alexey Malahov <[email protected]>
Signed-off-by: Serge Semin <[email protected]>
Cc: Thomas Bogendoerfer <[email protected]>
Cc: Paul Burton <[email protected]>
Cc: Ralf Baechle <[email protected]>
Cc: Arnd Bergmann <[email protected]>
Cc: Rob Herring <[email protected]>
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Thomas Bogendoerfer <[email protected]>
Diffstat (limited to 'arch/mips/include/asm/stackframe.h')
0 files changed, 0 insertions, 0 deletions
