aboutsummaryrefslogtreecommitdiff
path: root/emulators/qemu8/files/patch-util_cpuinfo-ppc.c
diff options
context:
space:
mode:
Diffstat (limited to 'emulators/qemu8/files/patch-util_cpuinfo-ppc.c')
-rw-r--r--emulators/qemu8/files/patch-util_cpuinfo-ppc.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/emulators/qemu8/files/patch-util_cpuinfo-ppc.c b/emulators/qemu8/files/patch-util_cpuinfo-ppc.c
new file mode 100644
index 000000000000..af9999a22108
--- /dev/null
+++ b/emulators/qemu8/files/patch-util_cpuinfo-ppc.c
@@ -0,0 +1,34 @@
+--- util/cpuinfo-ppc.c.orig 2024-01-29 19:13:22 UTC
++++ util/cpuinfo-ppc.c
+@@ -6,13 +6,21 @@
+ #include "qemu/osdep.h"
+ #include "host/cpuinfo.h"
+
+-#include <asm/cputable.h>
+ #ifdef CONFIG_GETAUXVAL
+ # include <sys/auxv.h>
+ #else
++# ifdef __linux__
++# include <asm/cputable.h>
++# elif defined(__FreeBSD__)
++# include <machine/cpu.h>
++# endif
+ # include "elf.h"
+ #endif
+
++#ifndef PPC_FEATURE2_ARCH_3_1
++# define PPC_FEATURE2_ARCH_3_1 0x00040000
++#endif
++
+ unsigned cpuinfo;
+
+ /* Called both as constructor and (possibly) via other constructors. */
+@@ -53,7 +61,7 @@ unsigned __attribute__((constructor)) cpuinfo_init(voi
+ * always have both anyway, since VSX came with Power7
+ * and crypto came with Power8.
+ */
+- if (hwcap2 & PPC_FEATURE2_VEC_CRYPTO) {
++ if (hwcap2 & PPC_FEATURE2_HAS_VEC_CRYPTO) {
+ info |= CPUINFO_CRYPTO;
+ }
+ }