|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging] x86/amd: Initial support for Fam19h processors
commit fe36a173d110fd792f5e337e208a5ed714df1536
Author: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
AuthorDate: Thu Apr 30 10:47:14 2020 +0100
Commit: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
CommitDate: Mon May 4 11:04:29 2020 +0100
x86/amd: Initial support for Fam19h processors
Fam19h is very similar to Fam17h in these regards.
Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Reviewed-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
---
xen/arch/x86/acpi/cpu_idle.c | 1 +
xen/arch/x86/cpu/microcode/amd.c | 4 ++++
xen/arch/x86/cpu/vpmu_amd.c | 1 +
xen/arch/x86/nmi.c | 2 +-
xen/arch/x86/traps.c | 2 +-
5 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c
index e00f2a82de..b83446e77d 100644
--- a/xen/arch/x86/acpi/cpu_idle.c
+++ b/xen/arch/x86/acpi/cpu_idle.c
@@ -1356,6 +1356,7 @@ static void amd_cpuidle_init(struct acpi_processor_power
*power)
switch ( c->x86 )
{
+ case 0x19:
case 0x18:
if ( boot_cpu_data.x86_vendor != X86_VENDOR_HYGON )
{
diff --git a/xen/arch/x86/cpu/microcode/amd.c b/xen/arch/x86/cpu/microcode/amd.c
index 13bf9f4dee..3f0969e70d 100644
--- a/xen/arch/x86/cpu/microcode/amd.c
+++ b/xen/arch/x86/cpu/microcode/amd.c
@@ -112,6 +112,7 @@ static bool_t verify_patch_size(uint32_t patch_size)
#define F15H_MPB_MAX_SIZE 4096
#define F16H_MPB_MAX_SIZE 3458
#define F17H_MPB_MAX_SIZE 3200
+#define F19H_MPB_MAX_SIZE 4800
switch (boot_cpu_data.x86)
{
@@ -127,6 +128,9 @@ static bool_t verify_patch_size(uint32_t patch_size)
case 0x17:
max_size = F17H_MPB_MAX_SIZE;
break;
+ case 0x19:
+ max_size = F19H_MPB_MAX_SIZE;
+ break;
default:
max_size = F1XH_MPB_MAX_SIZE;
break;
diff --git a/xen/arch/x86/cpu/vpmu_amd.c b/xen/arch/x86/cpu/vpmu_amd.c
index 3c6799b42c..eba47cd2a0 100644
--- a/xen/arch/x86/cpu/vpmu_amd.c
+++ b/xen/arch/x86/cpu/vpmu_amd.c
@@ -576,6 +576,7 @@ int __init amd_vpmu_init(void)
{
case 0x15:
case 0x17:
+ case 0x19:
num_counters = F15H_NUM_COUNTERS;
counters = AMD_F15H_COUNTERS;
ctrls = AMD_F15H_CTRLS;
diff --git a/xen/arch/x86/nmi.c b/xen/arch/x86/nmi.c
index c3f92ed231..014524486f 100644
--- a/xen/arch/x86/nmi.c
+++ b/xen/arch/x86/nmi.c
@@ -398,7 +398,7 @@ void setup_apic_nmi_watchdog(void)
case X86_VENDOR_AMD:
switch (boot_cpu_data.x86) {
case 6:
- case 0xf ... 0x17:
+ case 0xf ... 0x19:
setup_k7_watchdog();
break;
default:
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index 0bcf554e93..33e5d21ece 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -1939,7 +1939,7 @@ static unsigned int calc_ler_msr(void)
switch ( boot_cpu_data.x86 )
{
case 6:
- case 0xf ... 0x17:
+ case 0xf ... 0x19:
return MSR_IA32_LASTINTFROMIP;
}
break;
--
generated by git-patchbot for /home/xen/git/xen.git#staging
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |