提交 a09d2bc1 编写于 作者: P Peter Ujfalusi 提交者: Tomi Valkeinen

drm/omap: Use omapdss_stack_is_ready() to check that the display stack is up

Instead of 'guessing' based on aliases of the status of the DSS drivers,
use the new interface to check that all needed drivers are loaded.
In this way we can be sure that all needed drivers are loaded so it is
safe to continue the probing of omapdrm.
This method will allow the omapdrm to be probed 'headless', without
outputs.
Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
上级 1e08c822
...@@ -250,7 +250,9 @@ static int omap_connect_dssdevs(void) ...@@ -250,7 +250,9 @@ static int omap_connect_dssdevs(void)
{ {
int r; int r;
struct omap_dss_device *dssdev = NULL; struct omap_dss_device *dssdev = NULL;
bool no_displays = true;
if (!omapdss_stack_is_ready())
return -EPROBE_DEFER;
for_each_dss_dev(dssdev) { for_each_dss_dev(dssdev) {
r = dssdev->driver->connect(dssdev); r = dssdev->driver->connect(dssdev);
...@@ -260,14 +262,9 @@ static int omap_connect_dssdevs(void) ...@@ -260,14 +262,9 @@ static int omap_connect_dssdevs(void)
} else if (r) { } else if (r) {
dev_warn(dssdev->dev, "could not connect display: %s\n", dev_warn(dssdev->dev, "could not connect display: %s\n",
dssdev->name); dssdev->name);
} else {
no_displays = false;
} }
} }
if (no_displays)
return -EPROBE_DEFER;
return 0; return 0;
cleanup: cleanup:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册