platform-driver-x86.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFCv3 0/1] x86: allow to notify host about guest entering s2idle
@ 2023-02-13 10:09 Grzegorz Jaszczyk
  2023-02-13 10:09 ` [RFCv3 1/1] platform/x86: Add virtual PMC driver used for S2Idle Grzegorz Jaszczyk
  0 siblings, 1 reply; 5+ messages in thread
From: Grzegorz Jaszczyk @ 2023-02-13 10:09 UTC (permalink / raw)
  To: linux-kernel, rafael
  Cc: dmy, tn, dbehr, zide.chen, seanjc, upstream, hdegoede, markgross,
	dtor, mario.limonciello, linux-pm, x86, platform-driver-x86,
	Grzegorz Jaszczyk

According to the mailing list discussion [1] about the preferred approach
for notifying hypervisor/VMM about guest entering s2idle state this RFC was
implemented.

Instead of original hypercall based approach, which involves KVM change [2]
and makes it hypervisor specific, implement different mechanism, which
takes advantage of MMIO/PIO trapping and makes it hypervisor independent.

For the RFCv1 [3]:
  Patch #1 extends S2Idle ops by new notify handler which will be invoked as a
  very last command before system actually enters S2Idle states. It also allows
  to register and use driver specific notification hook which is used in
  patch #2.

  Patch #2 introduces new driver for virtual PMC, which registers
  acpi_s2idle_dev_ops's notify handler. Its implementation is based on an
  ACPI _DSM evaluation, which in turn can perform MMIO access and allow to
  trap and therefore notify the VMM about guest entering S2Idle state.

For the RFCv2 [4]: the patch #1 was dropped as in the meantime Mario Limonciello
introduced a very similar patch [5] which uses s/notify/check and invokes the
callback a bit earlier just before s2idle_entry. Mentioned patch has already
been merged.

This patchset is marked as RFC since patch #2 implements driver for non
existing device "HYPE0001", which ACPI ID was not registered yet.
Furthermore the required registration process [6] will not be started
before getting positive feedback about this patchset.

[1] https://patchwork.kernel.org/project/linux-pm/patch/20220609110337.1238762-2-jaz@semihalf.com/
[2] https://patchwork.kernel.org/project/linux-pm/patch/20220609110337.1238762-3-jaz@semihalf.com/
[3] https://patchwork.kernel.org/project/linux-pm/cover/20220707125329.378277-1-jaz@semihalf.com/
[4] https://patchwork.kernel.org/project/linux-pm/cover/20230209152123.3186930-1-jaz@semihalf.com/
[5] https://patchwork.kernel.org/project/linux-pm/patch/20220829162953.5947-2-mario.limonciello@amd.com
[6] https://uefi.org/PNP_ACPI_Registry

Grzegorz Jaszczyk (1):
  platform/x86: Add virtual PMC driver used for S2Idle

 drivers/platform/x86/Kconfig    |  7 +++
 drivers/platform/x86/Makefile   |  3 ++
 drivers/platform/x86/virt_pmc.c | 83 +++++++++++++++++++++++++++++++++
 3 files changed, 93 insertions(+)
 create mode 100644 drivers/platform/x86/virt_pmc.c

-- 
2.39.1.581.gbfd45094c4-goog


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-04-06 14:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-13 10:09 [RFCv3 0/1] x86: allow to notify host about guest entering s2idle Grzegorz Jaszczyk
2023-02-13 10:09 ` [RFCv3 1/1] platform/x86: Add virtual PMC driver used for S2Idle Grzegorz Jaszczyk
2023-03-29 12:33   ` Grzegorz Jaszczyk
2023-04-06 10:53     ` Hans de Goede
2023-04-06 13:59       ` Grzegorz Jaszczyk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).