The TMIO core sets a very low latency limit (100 us), but when using R-Car SDHI hosts with SD cards, I have observed typical latencies of around 20-30 ms. This prevents runtime PM from working properly, and the devices remain on continuously. This patch sets the default latency limit to 100 ms to avoid that. Signed-off-by: Ulrich Hecht <uli+renesas@xxxxxxxx> --- drivers/mmc/host/renesas_sdhi_core.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/mmc/host/renesas_sdhi_core.c b/drivers/mmc/host/renesas_sdhi_core.c index 635bf31a6735..4f41616cc6bb 100644 --- a/drivers/mmc/host/renesas_sdhi_core.c +++ b/drivers/mmc/host/renesas_sdhi_core.c @@ -32,6 +32,7 @@ #include <linux/pinctrl/pinctrl-state.h> #include <linux/platform_device.h> #include <linux/pm_domain.h> +#include <linux/pm_qos.h> #include <linux/regulator/consumer.h> #include <linux/reset.h> #include <linux/sh_dma.h> @@ -1147,6 +1148,9 @@ int renesas_sdhi_probe(struct platform_device *pdev, host->ops.hs400_complete = renesas_sdhi_hs400_complete; } + /* keep tmio_mmc_host_probe() from setting latency limit too low */ + dev_pm_qos_expose_latency_limit(&pdev->dev, 100000); + ret = tmio_mmc_host_probe(host); if (ret < 0) goto edisclk; -- 2.20.1