mbox series

[v5,0/4] Add vendor agnostic mechanism to report hardware sleep

Message ID 20230330194439.14361-1-mario.limonciello@amd.com
Headers show
Series Add vendor agnostic mechanism to report hardware sleep | expand

Message

Mario Limonciello March 30, 2023, 7:44 p.m. UTC
An important part of validating that s0ix worked properly is to check how much
of a cycle was spent in a hardware sleep state.

The reporting of hardware sleep is a mix of kernel messages and sysfs files
that vary from vendor to vendor. Collecting this information requires extra
information on the kernel command line or fetching from debugfs.

To make this information more readily accessible introduce a new file in
suspend_stats that drivers can report into during their resume routine.

Userspace can fetch this information and compare it against the duration of
the cycle to allow determining residency percentages and flagging problems.

v4->v5
 * Stop calculating a percentage, let userspace do this if desirable.
   Userspace may just care != 0.
 * Fix S3 case for Intel PMC

Previous submission:
https://lore.kernel.org/all/20221117225822.16154-1-mario.limonciello@amd.com/

Mario Limonciello (4):
  PM: Add a sysfs file to represent time spent in hardware sleep state
  platform/x86/amd: pmc: Report duration of time in hw sleep state
  platform/x86/intel/pmc: core: Always capture counters on suspend
  platform/x86/intel/pmc: core: Report duration of time in HW sleep
    state

 Documentation/ABI/testing/sysfs-power |  9 +++++++++
 drivers/platform/x86/amd/pmc.c        |  5 ++---
 drivers/platform/x86/intel/pmc/core.c | 15 +++++++-------
 drivers/platform/x86/intel/pmc/core.h |  2 --
 include/linux/suspend.h               |  2 ++
 kernel/power/main.c                   | 29 +++++++++++++++++++++++++++
 6 files changed, 49 insertions(+), 13 deletions(-)