Re: [PATCH] omapfb: In omapfb_probe return -EPROBE_DEFER when displaydriver is not loaded yet

From: Archit Taneja
Date: Thu Jul 11 2013 - 04:40:18 EST


Hi,

On Wednesday 10 July 2013 06:38 PM, Pali RohÃr wrote:
* On RX-51 probing for acx565akm driver is later then for omapfb which cause that omapfb probe fail and framebuffer is not working
* EPROBE_DEFER causing that kernel try to probe for omapfb later again which fixing this problem

* Without this patch display on Nokia RX-51 (N900) phone not working

Signed-off-by: Pali RohÃr <pali.rohar@xxxxxxxxx>
---
drivers/video/omap2/omapfb/omapfb-main.c | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c
index 856917b..93e7c84 100644
--- a/drivers/video/omap2/omapfb/omapfb-main.c
+++ b/drivers/video/omap2/omapfb/omapfb-main.c
@@ -2419,6 +2419,15 @@ static int omapfb_probe(struct platform_device *pdev)
if (omapdss_is_initialized() == false)
return -EPROBE_DEFER;

+ dssdev = NULL;
+ for_each_dss_dev(dssdev) {
+ if (!dssdev->driver) {
+ dev_warn(&pdev->dev, "no driver for display: %s\n",
+ dssdev->name);
+ return -EPROBE_DEFER;

This will make omapfb probe defer till the time every panel has a driver. It's possible that all the panel driver modules are never interested by userspace. This will lead to the panels having drivers also not work.

I think Tomi was working on this, it was something like making omapfb defer only if the default display doesn't have a driver. We can wait for his comment.

Archit

+ }
+ }
+
if (pdev->num_resources != 0) {
dev_err(&pdev->dev, "probed for an unknown device\n");
r = -ENODEV;


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/