Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5be3aebd authored by Tomi Valkeinen's avatar Tomi Valkeinen
Browse files

OMAPDSS: fix warnings if CONFIG_PM_RUNTIME=n



If runtime PM is not enabled in the kernel config, pm_runtime_get_sync()
will always return 1 and pm_runtime_put_sync() will always return
-ENOSYS. pm_runtime_get_sync() returning 1 presents no problem to the
driver, but -ENOSYS from pm_runtime_put_sync() causes the driver to
print a warning.

One option would be to ignore errors returned by pm_runtime_put_sync()
totally, as they only say that the call was unable to put the hardware
into suspend mode.

However, I chose to ignore the returned -ENOSYS explicitly, and print a
warning for other errors, as I think we should get notified if the HW
failed to go to suspend properly.

Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Jassi Brar <jaswinder.singh@linaro.org>
Cc: Grazvydas Ignotas <notasas@gmail.com>
parent 2b8501d7
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -384,7 +384,7 @@ void dispc_runtime_put(void)
	DSSDBG("dispc_runtime_put\n");
	DSSDBG("dispc_runtime_put\n");


	r = pm_runtime_put_sync(&dispc.pdev->dev);
	r = pm_runtime_put_sync(&dispc.pdev->dev);
	WARN_ON(r < 0);
	WARN_ON(r < 0 && r != -ENOSYS);
}
}


static inline bool dispc_mgr_is_lcd(enum omap_channel channel)
static inline bool dispc_mgr_is_lcd(enum omap_channel channel)
+1 −1
Original line number Original line Diff line number Diff line
@@ -1075,7 +1075,7 @@ void dsi_runtime_put(struct platform_device *dsidev)
	DSSDBG("dsi_runtime_put\n");
	DSSDBG("dsi_runtime_put\n");


	r = pm_runtime_put_sync(&dsi->pdev->dev);
	r = pm_runtime_put_sync(&dsi->pdev->dev);
	WARN_ON(r < 0);
	WARN_ON(r < 0 && r != -ENOSYS);
}
}


/* source clock for DSI PLL. this could also be PCLKFREE */
/* source clock for DSI PLL. this could also be PCLKFREE */
+1 −1
Original line number Original line Diff line number Diff line
@@ -731,7 +731,7 @@ static void dss_runtime_put(void)
	DSSDBG("dss_runtime_put\n");
	DSSDBG("dss_runtime_put\n");


	r = pm_runtime_put_sync(&dss.pdev->dev);
	r = pm_runtime_put_sync(&dss.pdev->dev);
	WARN_ON(r < 0 && r != -EBUSY);
	WARN_ON(r < 0 && r != -ENOSYS && r != -EBUSY);
}
}


/* DEBUGFS */
/* DEBUGFS */
+1 −1
Original line number Original line Diff line number Diff line
@@ -138,7 +138,7 @@ static void hdmi_runtime_put(void)
	DSSDBG("hdmi_runtime_put\n");
	DSSDBG("hdmi_runtime_put\n");


	r = pm_runtime_put_sync(&hdmi.pdev->dev);
	r = pm_runtime_put_sync(&hdmi.pdev->dev);
	WARN_ON(r < 0);
	WARN_ON(r < 0 && r != -ENOSYS);
}
}


static int __init hdmi_init_display(struct omap_dss_device *dssdev)
static int __init hdmi_init_display(struct omap_dss_device *dssdev)
+1 −1
Original line number Original line Diff line number Diff line
@@ -141,7 +141,7 @@ static void rfbi_runtime_put(void)
	DSSDBG("rfbi_runtime_put\n");
	DSSDBG("rfbi_runtime_put\n");


	r = pm_runtime_put_sync(&rfbi.pdev->dev);
	r = pm_runtime_put_sync(&rfbi.pdev->dev);
	WARN_ON(r < 0);
	WARN_ON(r < 0 && r != -ENOSYS);
}
}


void rfbi_bus_lock(void)
void rfbi_bus_lock(void)
Loading