• Rafael J. Wysocki's avatar
    intel_idle: Use ACPI _CST for processor models without C-state tables · 18734958
    Rafael J. Wysocki authored
    Modify the intel_idle driver to get the C-states information from ACPI
    _CST if the processor model is not recognized by it.
    
    The processor is still required to support MWAIT and the information
    from ACPI _CST will only be used if all of the C-states listed by
    _CST are of the ACPI_CSTATE_FFH type (which means that they are
    expected to be entered via MWAIT).
    
    Moreover, the driver assumes that the _CST information is the same
    for all CPUs in the system, so it is sufficient to evaluate _CST for
    one of them and extract the common list of C-states from there.
    Also _CST is evaluated once at the system initialization time and
    the driver does not respond to _CST change notifications (that can
    be changed in the future).
    
    The main functional difference between intel_idle with this change
    and the ACPI processor driver is that the former sets the target
    residency to be equal to the exit latency (provided by _CST) for
    C1-type C-states and to 3 times the exit latency value for the other
    C-state types, whereas the latter obtains the target residency by
    multiplying the exit latency by the same number (2 by default) for
    all C-state types.  Therefore it is expected that in general using
    the former instead of the latter on the same system will lead to
    improved energy-efficiency.
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    18734958
intel_idle.c 39.3 KB