linux/drivers/ufs/host
Adrian Hunter 47bf4ef2d0 scsi: ufs: ufs-pci: Fix default runtime and system PM levels
commit 6de7435e6b upstream.

Intel MTL-like host controllers support auto-hibernate.  Using
auto-hibernate with manual (driver initiated) hibernate produces more
complex operation.  For example, the host controller will have to exit
auto-hibernate simply to allow the driver to enter hibernate state
manually.  That is not recommended.

The default rpm_lvl and spm_lvl is 3, which includes manual hibernate.

Change the default values to 2, which does not.

Note, to be simpler to backport to stable kernels, utilize the UFS PCI
driver's ->late_init() call back.  Recent commits have made it possible
to set up a controller-specific default in the regular ->init() call
back, but not all stable kernels have those changes.

Fixes: 4049f7acef ("scsi: ufs: ufs-pci: Add support for Intel MTL")
Cc: stable@vger.kernel.org
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20250723165856.145750-3-adrian.hunter@intel.com
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-08-28 16:30:57 +02:00
..
cdns-pltfrm.c scsi: ufs: pltfrm: Disable runtime PM during removal of glue drivers 2024-12-14 20:03:25 +01:00
Kconfig scsi: ufs: ufs-mediatek: Add dependency for RESET_CONTROLLER 2023-07-05 21:40:53 -04:00
Makefile scsi: ufs: ufs-qcom: Switch to the new ICE API 2023-06-16 12:04:31 -04:00
tc-dwc-g210-pci.c scsi: ufs: Follow the kernel-doc syntax for documenting return values 2023-07-31 15:17:50 -04:00
tc-dwc-g210-pltfrm.c scsi: ufs: pltfrm: Drop PM runtime reference count after ufshcd_remove() 2024-12-14 20:03:34 +01:00
tc-dwc-g210.c scsi: ufs: Fix kernel-doc headers 2023-07-31 15:17:50 -04:00
tc-dwc-g210.h scsi: ufs: Split the drivers/scsi/ufs directory 2022-05-19 20:27:37 -04:00
ti-j721e-ufs.c scsi: ufs: Convert all platform drivers to return void 2023-09-21 21:48:05 -04:00
ufs-exynos.c scsi: ufs: exynos: Fix programming of HCI_UTRL_NEXUS_TYPE 2025-08-28 16:30:57 +02:00
ufs-exynos.h scsi: ufs: exynos: gs101: Put UFS device in reset on .suspend() 2025-05-02 07:59:26 +02:00
ufs-hisi.c scsi: ufs: pltfrm: Disable runtime PM during removal of glue drivers 2024-12-14 20:03:25 +01:00
ufs-hisi.h scsi: ufs: Split the drivers/scsi/ufs directory 2022-05-19 20:27:37 -04:00
ufs-mediatek-sip.h scsi: ufs: mediatek: Support rtff in PM flow 2024-03-25 21:03:00 -04:00
ufs-mediatek-trace.h scsi: ufs: ufs-mediatek: Support clk-scaling to optimize power consumption 2022-08-22 22:58:30 -04:00
ufs-mediatek.c scsi: ufs: pltfrm: Drop PM runtime reference count after ufshcd_remove() 2024-12-14 20:03:34 +01:00
ufs-mediatek.h scsi: ufs: core: Maximum RTT supported by the host driver 2024-05-30 20:34:38 -04:00
ufs-qcom.c scsi: ufs: qcom: Prevent calling phy_exit() before phy_init() 2025-06-19 15:32:20 +02:00
ufs-qcom.h scsi: ufs: qcom: Perform read back after writing reset bit 2024-04-05 21:06:28 -04:00
ufs-renesas.c scsi: ufs: core: Make DMA mask configuration more flexible 2024-12-14 20:03:59 +01:00
ufs-sprd.c scsi: ufs: pltfrm: Drop PM runtime reference count after ufshcd_remove() 2024-12-14 20:03:34 +01:00
ufs-sprd.h scsi: ufs: ufs-unisoc: Add support for Unisoc UFS host controller 2023-01-11 21:17:18 -05:00
ufshcd-dwc.c scsi: ufs: Fix kernel-doc headers 2023-07-31 15:17:50 -04:00
ufshcd-dwc.h scsi: ufs: Split the drivers/scsi/ufs directory 2022-05-19 20:27:37 -04:00
ufshcd-pci.c scsi: ufs: ufs-pci: Fix default runtime and system PM levels 2025-08-28 16:30:57 +02:00
ufshcd-pltfrm.c scsi: ufs: core: Fix use-after free in init error and remove paths 2025-02-17 10:05:22 +01:00
ufshcd-pltfrm.h scsi: ufs: pltfrm: Disable runtime PM during removal of glue drivers 2024-12-14 20:03:25 +01:00
ufshci-dwc.h scsi: ufs: Split the drivers/scsi/ufs directory 2022-05-19 20:27:37 -04:00