On Mon, Apr 17, 2023 at 5:27 PM Mario Limonciello <mario.limonciello@xxxxxxx> wrote: > > 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. > > v9->v10: > * Add tags > * Rebase on linux-pm/bleeding-edge as it will apply through this tree > > Mario Limonciello (4): > PM: Add sysfs files 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 | 29 +++++++++++++ > drivers/platform/x86/amd/pmc.c | 6 +-- > drivers/platform/x86/intel/pmc/core.c | 17 ++++---- > drivers/platform/x86/intel/pmc/core.h | 4 +- > include/linux/suspend.h | 8 ++++ > kernel/power/main.c | 59 +++++++++++++++++++++------ > 6 files changed, 98 insertions(+), 25 deletions(-) > Whole series applied as 6.4-rc1 material, thanks!