From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 986511F462C; Sat, 6 Sep 2025 14:37:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757169430; cv=none; b=bzqMLdKzrLNbnFKO7+dGGVs0szUQefJ5/gbSM7abEi5eLFkdaqlF25h++gu+hcWMHmNT74aGJ7cQg+N4x/wVC6i5tEPlnqMYE3nMTIzik4yEb+rNkrOHKorNFMHjj6R/aZWqnX8Ml3DYHLxrUiHr3MgCWCZokefEvdv2nXuQKKs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757169430; c=relaxed/simple; bh=gEhVcdfHmARzAI1nxkb/sOlulPpWTjfsshzz5cygmTI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ss34pM23oTmu2YH9/YshVSKQOgb+q271UCORvlgxSI6qo/KMadWQ+6O4MXwPh/XwAQg3g8r04okDdXnNNcl+bGQ4xFecxZpZvIEqs6lXbUn3xEYPNs63O76j6yk0mjujmcsWcQFggPUkWFcxo6lxFhHfjVHrRryG1Ai9GWgfIhE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ZUNiJ0rq; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ZUNiJ0rq" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 922EEC4CEF8; Sat, 6 Sep 2025 14:37:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1757169430; bh=gEhVcdfHmARzAI1nxkb/sOlulPpWTjfsshzz5cygmTI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZUNiJ0rqi+dvjIoqO5HHnEHBqo48X/A1jZJ7JnGJiBYXHyfHC+tjxul6Lwbx6MrWG 96a3HVWEezBLLRqWM3jfHpAu8Iaz5Lr5LrgO2qkmfmjcIB36RJL8NpLSh5gJ52KjnE W97HBXi11FLeCJTKnTfbePRU2t4YLwOO2vuhRaDPf9PDAmvAgGecrCHiLz7iGS6lXS jugUqukj8XowRnYg8akft98jerIN+GDnfgw6eafQHIVxjnQhSoTfhfi+0XrvRuHFAS KJUhpCPaOEjqn+T7bOSrzie5EV8gJxcgKLvz7qpMgUoY83nXJvgPNTMpTo7JAdkOSa 3oulahNrOhdZw== From: "Mario Limonciello (AMD)" To: "Rafael J . Wysocki" , Greg Kroah-Hartman , Danilo Krummrich , Bjorn Helgaas Cc: Pavel Machek , Len Brown , =?UTF-8?q?Christian=20K=C3=B6nig?= , "James E . J . Bottomley" , "Martin K . Petersen" , Steven Rostedt , linux-pm@vger.kernel.org (open list:HIBERNATION (aka Software Suspend, aka swsusp)), amd-gfx@lists.freedesktop.org (open list:RADEON and AMDGPU DRM DRIVERS), dri-devel@lists.freedesktop.org (open list:DRM DRIVERS), linux-pci@vger.kernel.org (open list:PCI SUBSYSTEM), linux-scsi@vger.kernel.org (open list:SCSI SUBSYSTEM), linux-usb@vger.kernel.org (open list:USB SUBSYSTEM), linux-trace-kernel@vger.kernel.org (open list:TRACING), AceLan Kao , Kai-Heng Feng , Mark Pearson , =?UTF-8?q?Merthan=20Karaka=C5=9F?= , Eric Naim , "Mario Limonciello (AMD)" Subject: [PATCH v6 RESEND 05/11] PCI: PM: Disable device wakeups when halting system through S4 flow Date: Sat, 6 Sep 2025 09:36:36 -0500 Message-ID: <20250906143642.2590808-6-superm1@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250906143642.2590808-1-superm1@kernel.org> References: <20250906143642.2590808-1-superm1@kernel.org> Precedence: bulk X-Mailing-List: linux-usb@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit PCI devices can be programmed as a wakeup source from low power states by sysfs. However when using the S4 flow to go into S5 these wakeup sources should be disabled to avoid what users would perceive as spurious wakeup events. Tested-by: Eric Naim Signed-off-by: Mario Limonciello (AMD) --- drivers/pci/pci-driver.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c index 63665240ae87f..f201d298d7173 100644 --- a/drivers/pci/pci-driver.c +++ b/drivers/pci/pci-driver.c @@ -1139,6 +1139,10 @@ static int pci_pm_poweroff(struct device *dev) struct pci_dev *pci_dev = to_pci_dev(dev); const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL; + if (device_may_wakeup(dev) && + (system_state == SYSTEM_HALT || system_state == SYSTEM_POWER_OFF)) + device_set_wakeup_enable(dev, false); + if (pci_has_legacy_pm_support(pci_dev)) return pci_legacy_suspend(dev, PMSG_HIBERNATE); -- 2.43.0