aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorArchit Taneja <archit@ti.com>2013-03-26 09:45:18 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2013-04-11 06:25:48 -0400
commit581382e31090aa2459e8046e0bafb0f1daa2ecd8 (patch)
tree60a8f8182df1527c5c5621745f6ddc3c8b6d6abd /drivers/gpu
parent2c6360fb41e71d86ef2a870fd94c0fc9dcd9779e (diff)
drm/omap: fix modeset_init if a panel doesn't satisfy omapdrm requirements
modeset_init iterates through all the registered omapdss devices and has some initial checks to see if the panel has a driver and the required driver ops for it to be usable by omapdrm. The function bails out from modeset_init if a panel doesn't meet the requirements, and stops the registration of the future panels and encoders which come after it, that isn't the correct thing to do, we should go through the rest of the panels. Replace the 'return's with 'continue's. Signed-off-by: Archit Taneja <archit@ti.com> Reviewed-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/omapdrm/omap_drv.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c
index 079c54c6f94c..77b72259f15b 100644
--- a/drivers/gpu/drm/omapdrm/omap_drv.c
+++ b/drivers/gpu/drm/omapdrm/omap_drv.c
@@ -121,7 +121,7 @@ static int omap_modeset_init(struct drm_device *dev)
121 if (!dssdev->driver) { 121 if (!dssdev->driver) {
122 dev_warn(dev->dev, "%s has no driver.. skipping it\n", 122 dev_warn(dev->dev, "%s has no driver.. skipping it\n",
123 dssdev->name); 123 dssdev->name);
124 return 0; 124 continue;
125 } 125 }
126 126
127 if (!(dssdev->driver->get_timings || 127 if (!(dssdev->driver->get_timings ||
@@ -129,7 +129,7 @@ static int omap_modeset_init(struct drm_device *dev)
129 dev_warn(dev->dev, "%s driver does not support " 129 dev_warn(dev->dev, "%s driver does not support "
130 "get_timings or read_edid.. skipping it!\n", 130 "get_timings or read_edid.. skipping it!\n",
131 dssdev->name); 131 dssdev->name);
132 return 0; 132 continue;
133 } 133 }
134 134
135 encoder = omap_encoder_init(dev, dssdev); 135 encoder = omap_encoder_init(dev, dssdev);