diff options
author | Tomi Valkeinen <tomi.valkeinen@nokia.com> | 2010-01-07 16:45:03 +0100 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@nokia.com> | 2010-01-12 11:10:55 +0100 |
commit | 807a7515aea421f2b340140482ed4c8811c523c6 (patch) | |
tree | f8ab9e4a19ad7dbf072303b7b3cbda2b3a6f6fe0 /drivers/video/omap2 | |
parent | OMAP: DSS2: Reject scaling settings when they cannot be supported (diff) | |
download | linux-807a7515aea421f2b340140482ed4c8811c523c6.tar.xz linux-807a7515aea421f2b340140482ed4c8811c523c6.zip |
OMAP: DSS2: OMAPFB: fix crash when panel driver was not loaded
If the panel's probe had failed, omapfb would still go on, eventually
crashing.
A better fix would be to handle each display properly, and leaving just
the failed display out. But that is a bigger change.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Diffstat (limited to 'drivers/video/omap2')
-rw-r--r-- | drivers/video/omap2/omapfb/omapfb-main.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c index e61a75c31358..d17caef6915a 100644 --- a/drivers/video/omap2/omapfb/omapfb-main.c +++ b/drivers/video/omap2/omapfb/omapfb-main.c @@ -2115,6 +2115,11 @@ static int omapfb_probe(struct platform_device *pdev) dssdev = NULL; for_each_dss_dev(dssdev) { omap_dss_get_device(dssdev); + if (!dssdev->driver) { + dev_err(&pdev->dev, "no driver for display\n"); + r = -EINVAL; + goto cleanup; + } fbdev->displays[fbdev->num_displays++] = dssdev; } |