Before the referenced commit we used i801_suspend and i801_resume also as runtime pm callbacks. That's no longer the case, and at least on my platform the SMBus controller PCI device doesn't support PM. Therefore PCI core can't do what it would do for other devices: bring them to D3hot or D3cold. Having said that effectively there is no runtime pm any longer. Not sure whether there are SMBus controller versions where the PCI device supports PM. So my questions are: Does the SMBus controller support any power-saving modes? i801_suspend() just sets SMBHSTCFG to the value it had when the driver was loaded. Means if SMBHSTCFG_HST_EN was enabled already, we won't clear it. And this bit may have an impact on some internal PLL's (just guessing). If there's no good-enough power-saving option, then runtime pm support could be removed completely, or? 00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10) DeviceName: Onboard - Other Subsystem: ASUSTeK Computer Inc. Device 8694 Flags: medium devsel, IRQ 16 Memory at a1316000 (64-bit, non-prefetchable) [size=256] I/O ports at efa0 [size=32] Kernel driver in use: i801_smbus Kernel modules: i2c_i801 Heiner