Disable VSX instruction

VSX bit is enabled by default for Power7 and Power8 CPU models,
so we need to disable them in order to avoid instruction exceptions.
Kernel will activate it when necessary.

* grub-core/kern/powerpc/ieee1275/startup.S: Disable VSX.

Also-By: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Also-By: Colin Watson <cjwatson@debian.org>

Origin: other, https://lists.gnu.org/archive/html/grub-devel/2014-09/msg00078.html
Last-Update: 2015-01-27

Patch-Name: ppc64el-disable-vsx.patch
This commit is contained in:
Paulo Flabiano Smorigo 2014-09-25 19:33:39 -03:00 committed by Colin Watson
parent 863a52dd1c
commit 8d95d2b9ba

View File

@ -20,6 +20,8 @@
#include <grub/symbol.h>
#include <grub/offsets.h>
#define MSR_VSX 0x80
.extern __bss_start
.extern _end
@ -28,6 +30,16 @@
.globl start, _start
start:
_start:
_start:
/* Disable VSX instruction */
mfmsr 0
oris 0,0,MSR_VSX
/* The "VSX Available" bit is in the lower half of the MSR, so we
don't need mtmsrd, which in any case won't work in 32-bit mode. */
mtmsr 0
isync
li 2, 0
li 13, 0