[PATCH RFC] mfd: intel-lpss: Set d3hot_delay to 0

From: Navon John Lukose

Date: Fri Oct 16 2026 - 07:44:10 EST


intel-lpss-pci already clears d3cold_delay, but every runtime resume of an
LPSS controller still sleeps the default 10 ms d3hot_delay in
pci_power_up().

On Arrow Lake-H (Lenovo Yoga Pro 7 14IAH10) the delay costs 8-16 ms per
resume of the touchpad's I2C controller, which lands on the first
touchpad report after each 1 s autosuspend. With d3hot_delay set to 0 the
power-up takes 64-256 us and the I2C transfers that follow complete
without errors.

Commit 815b4448198f ("i3c: mipi-i3c-hci-pci: Set d3hot_delay to 0 for Intel
controllers") does the same for the Intel I3C controllers.

Signed-off-by: Navon John Lukose <navonjohnlukose@xxxxxxxxx>
---

Notes:
RFC because I could only test Arrow Lake-H, and this applies to every LPSS
generation the driver handles, back to Sunrise Point. Andy, do any of the
older ones need the D3hot->D0 delay? If so I can limit it to newer IDs
through the driver data.

drivers/mfd/intel-lpss-pci.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/mfd/intel-lpss-pci.c b/drivers/mfd/intel-lpss-pci.c
index 63a3fb58566..5672f033e5c 100644
--- a/drivers/mfd/intel-lpss-pci.c
+++ b/drivers/mfd/intel-lpss-pci.c
@@ -70,6 +70,7 @@ static int intel_lpss_pci_probe(struct pci_dev *pdev,
info->quirks = quirk_pci_info->driver_data;

pdev->d3cold_delay = 0;
+ pdev->d3hot_delay = 0;

/* Probably it is enough to set this for iDMA capable devices only */
pci_set_master(pdev);
--
2.56.0