[PATCH 0/2] PCI/ASPM: Allow quirks to avoid L0s and L1
- To: linux-pci@vger.kernel.org
- Cc: Christian Zigotzky <chzigotzky@xenosoft.de>, Manivannan Sadhasivam <mani@kernel.org>, mad skateman <madskateman@gmail.com>, "R . T . Dickinson" <rtd2@xtra.co.nz>, Darren Stevens <darren@stevens-zone.net>, John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>, Lukas Wunner <lukas@wunner.de>, luigi burdo <intermediadc@hotmail.com>, Al <al@datazap.net>, Roland <rol7and@gmx.com>, Hongxing Zhu <hongxing.zhu@nxp.com>, hypexed@yahoo.com.au, linuxppc-dev@lists.ozlabs.org, debian-powerpc@lists.debian.org, linux-kernel@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>
- Subject: [PATCH 0/2] PCI/ASPM: Allow quirks to avoid L0s and L1
- From: Bjorn Helgaas <helgaas@kernel.org>
- Date: Thu, 6 Nov 2025 12:36:37 -0600
- Message-id: <[🔎] 20251106183643.1963801-1-helgaas@kernel.org>
From: Bjorn Helgaas <bhelgaas@google.com>
We enabled ASPM too aggressively in v6.18-rc1. f3ac2ff14834 ("PCI/ASPM:
Enable all ClockPM and ASPM states for devicetree platforms") enabled ASPM
L0s, L1, and (if advertised) L1 PM Substates.
L1 PM Substates and Clock PM in particular are a problem because they
depend on CLKREQ# and sometimes device-specific configuration, and none of
this is discoverable in a generic way.
df5192d9bb0e ("PCI/ASPM: Enable only L0s and L1 for devicetree platforms")
(v6.18-rc3) backed off and omitted Clock PM and L1 Substates.
L0s and L1 are generically discoverable, but some devices advertise them
even though they don't work correctly. This series is a way to avoid L0s
and L1 in that case.
Bjorn Helgaas (2):
PCI/ASPM: Cache Link Capabilities so quirks can override them
PCI/ASPM: Avoid L0s and L1 on Freescale Root Ports
drivers/pci/pcie/aspm.c | 42 ++++++++++++++++++++---------------------
drivers/pci/probe.c | 5 ++---
drivers/pci/quirks.c | 12 ++++++++++++
include/linux/pci.h | 1 +
4 files changed, 36 insertions(+), 24 deletions(-)
--
2.43.0
Reply to: