public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: Mario Limonciello <mario.limonciello@amd.com>
To: Mika Westerberg <mika.westerberg@linux.intel.com>,
	"Rafael J . Wysocki" <rafael@kernel.org>,
	Bjorn Helgaas <helgaas@kernel.org>
Cc: <linux-pci@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<linux-acpi@vger.kernel.org>,
	Iain Lane <iain@orangesquash.org.uk>,
	"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
	Kuppuswamy Sathyanarayanan 
	<sathyanarayanan.kuppuswamy@linux.intel.com>,
	Mario Limonciello <mario.limonciello@amd.com>
Subject: [PATCH v8 0/2] Fix wakeup problems on some AMD platforms
Date: Wed, 2 Aug 2023 15:10:11 -0500	[thread overview]
Message-ID: <20230802201013.910-1-mario.limonciello@amd.com> (raw)

Problems have been reported on AMD laptops with suspend/resume
where particular root ports are put into D3 and then the system is unable
to resume properly.

The issue boils down to the currently selected kernel policy for root port
behavior at suspend time:
0) If the machine is from 2015 or later
1) If a PCIe root port is power manageable by the platform then platform
   will be used to determine the power state of the root port at suspend.
2) If the PCIe root is not power manageable by the platform then the kernel
   will check if it was configured to wakeup.
3) If it was, then it will be put into the deepest state that supports
   wakeup from PME.
4) If it wasn't, then it will be put into D3hot.

This patch adjusts it so that device constraints for low power idle are
considered instead of a time based policy.

Mario Limonciello (2):
  ACPI: Add comments to clarify some #ifdef statements
  PCI/ACPI: Use device constraints instead of dates to opt devices into
    D3

 drivers/acpi/x86/s2idle.c | 28 ++++++++++++++++++++++++++--
 drivers/pci/pci-acpi.c    | 19 +++++++++++++++++++
 drivers/pci/pci.c         | 15 ++++++++++-----
 drivers/pci/pci.h         |  5 +++++
 include/linux/acpi.h      | 10 ++++++++--
 5 files changed, 68 insertions(+), 9 deletions(-)

-- 
2.34.1


             reply	other threads:[~2023-08-02 20:10 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-02 20:10 Mario Limonciello [this message]
2023-08-02 20:10 ` [PATCH v8 1/2] ACPI: Add comments to clarify some #ifdef statements Mario Limonciello
2023-08-02 20:10 ` [PATCH v8 2/2] PCI/ACPI: Use device constraints instead of dates to opt devices into D3 Mario Limonciello
2023-08-03  5:01   ` Mika Westerberg
2023-08-03 11:38     ` Mario Limonciello
2023-08-03 15:14       ` Mika Westerberg
2023-08-03 15:18         ` Mario Limonciello
2023-08-04  6:07           ` Mika Westerberg
2023-08-04  6:12             ` Andy Shevchenko
2023-08-04 12:59               ` Mario Limonciello
2023-08-04  2:32       ` Mario Limonciello
2023-08-03  5:04   ` kernel test robot
2023-08-03  9:40   ` kernel test robot
2023-08-03 11:49   ` Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230802201013.910-1-mario.limonciello@amd.com \
    --to=mario.limonciello@amd.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=helgaas@kernel.org \
    --cc=iain@orangesquash.org.uk \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=mika.westerberg@linux.intel.com \
    --cc=rafael@kernel.org \
    --cc=sathyanarayanan.kuppuswamy@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox