linux/arch/mips
Serge Semin 9ee195fd1b 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 <Alexey.Malahov@baikalelectronics.ru>
Signed-off-by: Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Paul Burton <paulburton@kernel.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: linux-pm@vger.kernel.org
Cc: devicetree@vger.kernel.org
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
2020-05-19 17:39:32 +02:00
..
alchemy MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
ar7 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
ath25 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
ath79 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
bcm47xx MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
bcm63xx MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
bmips MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
boot MIPS: ath79: ar9331: rename uart to serial node 2020-05-15 09:33:46 +02:00
cavium-octeon MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
cobalt MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
configs MIPS: Loongson: Enable devicetree based probing for 8250 ports in defconfig 2020-05-18 09:34:41 +02:00
crypto crypto: {arm,arm64,mips}/poly1305 - remove redundant non-reduction from emit 2020-01-16 15:18:12 +08:00
dec MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
fw MIPS: CFE: Remove dead code in cfe_getfwinfo() 2020-05-07 10:29:42 +02:00
generic MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
include mips: MAAR: Add XPA mode support 2020-05-19 17:39:32 +02:00
jazz MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
jz4740 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
kernel MIPS: Remove useless parameter of bootcmdline_init() 2020-05-19 17:36:04 +02:00
kvm KVM: MIPS/Emulate: Remove unneeded semicolon 2020-05-14 00:29:25 +02:00
lantiq MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
lib MIPS: do not compile generic functions for CONFIG_CAVIUM_OCTEON_SOC 2020-03-25 16:07:13 +01:00
loongson2ef MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
loongson32 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
loongson64 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
math-emu MIPS: Use fallthrough for arch/mips 2020-05-07 11:55:47 +02:00
mm mips: MAAR: Add XPA mode support 2020-05-19 17:39:32 +02:00
mti-malta MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
net MIPS: BPF: Use sizeof_field() instead of FIELD_SIZEOF() 2020-01-10 11:33:35 -08:00
netlogic MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
oprofile MIPS: Use fallthrough for arch/mips 2020-05-07 11:55:47 +02:00
paravirt MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
pci MIPS: Remove NEC MARKEINS/EMMA 2020-05-09 18:05:57 +02:00
pic32 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
pistachio MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
pnx833x MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
power mips: check for dsp presence only once before save/restore 2019-10-07 10:58:53 -07:00
ralink MIPS: ralink: Don't include objects twice 2020-05-15 09:10:07 +02:00
rb532 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
sgi-ip22 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
sgi-ip27 MIPS: SGI-IP27: Remove duplicated include in ip27-timer.c 2020-05-19 17:35:11 +02:00
sgi-ip30 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
sgi-ip32 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
sibyte MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
sni MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
tools MIPS: tools: Move "returns" after "loongson3-llsc-check" 2020-05-04 10:18:41 +02:00
txx9 MIPS: Only include the platform file needed 2020-05-13 00:17:18 +02:00
vdso MIPS: VDSO: Allow ld.lld to link the VDSO 2020-05-12 10:02:11 +02:00
vr41xx MIPS: Fix builds for VR41xx platforms 2020-05-15 09:09:58 +02:00
Kbuild MIPS: Fix "make clean" error due to recent changes 2020-05-13 13:20:22 +02:00
Kbuild.platforms MIPS: Fix typos in arch/mips/Kbuild.platforms 2020-05-13 13:19:52 +02:00
Kconfig MIPS: Remove not used 8250-platform.c 2020-05-17 10:25:26 +02:00
Kconfig.debug MIPS: cmdline: Remove redundant Kconfig defaults 2019-10-09 15:53:16 -07:00
Makefile MIPS: Unconditionally specify '-EB' or '-EL' 2020-05-12 10:01:53 +02:00
Makefile.postlink MIPS: fix indentation of the 'RELOCS' message 2020-01-20 15:37:30 -08:00