• Yazen Ghannam's avatar
    x86/ACPI/cstate: Allow ACPI C1 FFH MWAIT use on AMD systems · 5209654a
    Yazen Ghannam authored
    AMD systems support the Monitor/Mwait instructions and these can be used
    for ACPI C1 in the same way as on Intel systems.
    
    Three things are needed:
     1) This patch.
     2) BIOS that declares a C1 state in _CST to use FFH, with correct values.
     3) CPUID_Fn00000005_EDX is non-zero on the system.
    
    The BIOS on AMD systems have historically not defined a C1 state in _CST,
    so the acpi_idle driver uses HALT for ACPI C1.
    
    Currently released systems have CPUID_Fn00000005_EDX as reserved/RAZ. If a
    BIOS is released for these systems that requests a C1 state with FFH, the
    FFH implementation in Linux will fail since CPUID_Fn00000005_EDX is 0. The
    acpi_idle driver will then fallback to using HALT for ACPI C1.
    
    Future systems are expected to have non-zero CPUID_Fn00000005_EDX and BIOS
    support for using FFH for ACPI C1.
    
    Allow ffh_cstate_init() to succeed on AMD systems.
    
    Tested on Fam15h and Fam17h systems.
    Signed-off-by: default avatarYazen Ghannam <yazen.ghannam@amd.com>
    Acked-by: default avatarBorislav Petkov <bp@suse.de>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    5209654a
cstate.c 5.05 KB