Skip to content
  • Srinivas Pandruvada's avatar
    ACPI / LPIT: Add Low Power Idle Table (LPIT) support · eeb2d80d
    Srinivas Pandruvada authored
    Add functionality to read LPIT table, which provides:
    
     - Sysfs interface to read residency counters via
       /sys/devices/system/cpu/cpuidle/low_power_idle_cpu_residency_us
       /sys/devices/system/cpu/cpuidle/low_power_idle_system_residency_us
    
    Here the count "low_power_idle_cpu_residency_us" shows the time spent
    by CPU package in low power state.  This is read via MSR interface,
    which points to MSR for PKG C10.
    
    Here the count "low_power_idle_system_residency_us" show the count the
    system was in low power state. This is read via MMIO interface. This
    is mapped to SLP_S0 residency on modern Intel systems. This residency
    is achieved only when CPU is in PKG C10 and all functional blocks are
    in low power state.
    
    It is possible that none of the above counters present or anyone of the
    counter present or all counters present.
    
    For example: On my Kabylake system both of the above counters present.
    After suspend to idle these counts updated and prints:
    
     6916179
     ...
    eeb2d80d