Home Home > GIT Browse > SLE15-AZURE
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBorislav Petkov <bp@suse.de>2019-06-15 10:56:19 +0200
committerBorislav Petkov <bp@suse.de>2019-06-15 10:56:19 +0200
commit67e2d3fb95948e81089165961e1d0dc54381c313 (patch)
tree23ba281118979f2567f3e397b36576863b750b48
parent732e9eb15604cf6da453793eace2821557712d17 (diff)
x86/apic: Add Hygon Dhyana support (fate#327735).
-rw-r--r--patches.arch/x86-apic-add-hygon-dhyana-support.patch62
-rw-r--r--series.conf1
2 files changed, 63 insertions, 0 deletions
diff --git a/patches.arch/x86-apic-add-hygon-dhyana-support.patch b/patches.arch/x86-apic-add-hygon-dhyana-support.patch
new file mode 100644
index 0000000000..2941f5619c
--- /dev/null
+++ b/patches.arch/x86-apic-add-hygon-dhyana-support.patch
@@ -0,0 +1,62 @@
+From: Pu Wen <puwen@hygon.cn>
+Date: Sun, 23 Sep 2018 17:35:28 +0800
+Subject: x86/apic: Add Hygon Dhyana support
+Git-commit: da33dfef404174b0b452f4d2a9a9e00801794f3a
+Patch-mainline: v4.20-rc1
+References: fate#327735
+
+Add Hygon Dhyana support to the APIC subsystem. When running in 32 bit
+mode, bigsmp should be enabled if there are more than 8 cores online.
+
+Signed-off-by: Pu Wen <puwen@hygon.cn>
+Signed-off-by: Borislav Petkov <bp@suse.de>
+Reviewed-by: Borislav Petkov <bp@suse.de>
+Cc: tglx@linutronix.de
+Cc: mingo@redhat.com
+Cc: hpa@zytor.com
+Cc: x86@kernel.org
+Cc: thomas.lendacky@amd.com
+Link: https://lkml.kernel.org/r/7a557265a8c7c9e842fe60f9d8e064458801aef3.1537533369.git.puwen@hygon.cn
+---
+ arch/x86/kernel/apic/apic.c | 7 +++++++
+ arch/x86/kernel/apic/probe_32.c | 1 +
+ 2 files changed, 8 insertions(+)
+
+diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
+index 84132eddb5a8..ab731ab09f06 100644
+--- a/arch/x86/kernel/apic/apic.c
++++ b/arch/x86/kernel/apic/apic.c
+@@ -224,6 +224,11 @@ static int modern_apic(void)
+ if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD &&
+ boot_cpu_data.x86 >= 0xf)
+ return 1;
++
++ /* Hygon systems use modern APIC */
++ if (boot_cpu_data.x86_vendor == X86_VENDOR_HYGON)
++ return 1;
++
+ return lapic_get_version() >= 0x14;
+ }
+
+@@ -1912,6 +1917,8 @@ static int __init detect_init_APIC(void)
+ (boot_cpu_data.x86 >= 15))
+ break;
+ goto no_apic;
++ case X86_VENDOR_HYGON:
++ break;
+ case X86_VENDOR_INTEL:
+ if (boot_cpu_data.x86 == 6 || boot_cpu_data.x86 == 15 ||
+ (boot_cpu_data.x86 == 5 && boot_cpu_has(X86_FEATURE_APIC)))
+diff --git a/arch/x86/kernel/apic/probe_32.c b/arch/x86/kernel/apic/probe_32.c
+index 02e8acb134f8..47ff2976c292 100644
+--- a/arch/x86/kernel/apic/probe_32.c
++++ b/arch/x86/kernel/apic/probe_32.c
+@@ -185,6 +185,7 @@ void __init default_setup_apic_routing(void)
+ break;
+ }
+ /* If P4 and above fall through */
++ case X86_VENDOR_HYGON:
+ case X86_VENDOR_AMD:
+ def_to_bigsmp = 1;
+ }
+
diff --git a/series.conf b/series.conf
index 511d50d698..f0279fb706 100644
--- a/series.conf
+++ b/series.conf
@@ -19538,6 +19538,7 @@
patches.arch/x86-alternative-init-ideal_nops-for-hygon-dhyana.patch
patches.arch/x86-amd_nb-check-vendor-in-amd-only-functions.patch
patches.arch/x86-pci-x86-amd_nb-add-hygon-dhyana-support-to-pci-and-northbridge.patch
+ patches.arch/x86-apic-add-hygon-dhyana-support.patch
patches.fixes/0001-x86-xen-Fix-boot-loader-version-reported-for-PVH-gue.patch
patches.arch/x86-kexec-correct-kexec_backup_src_end-off-by-one-error.patch
patches.fixes/resource-include-resource-end-in-walk_-interfaces.patch