diff options
author | Patrik Jakobsson <patrik.r.jakobsson@gmail.com> | 2013-11-08 10:00:33 -0500 |
---|---|---|
committer | Patrik Jakobsson <patrik.r.jakobsson@gmail.com> | 2013-11-08 10:23:10 -0500 |
commit | 49a5d87a894681321d43ed80acb1edf705df0aea (patch) | |
tree | 3828f34b37257841f6381cf417622a15eb006eb3 | |
parent | 6528c897966c7d520f18ed4804c31a1f1aa8a3d9 (diff) |
drm/gma500/mrst: Don't blindly guess a mode for LVDS
Previously we always had something hooked up to LVDS so we tried very
hard to get a mode. With the Minnowboard this is no longer the case.
If no mode can be found over DDC or the firmware we just ignore LVDS.
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
-rw-r--r-- | drivers/gpu/drm/gma500/oaktrail_lvds.c | 30 |
1 files changed, 3 insertions, 27 deletions
diff --git a/drivers/gpu/drm/gma500/oaktrail_lvds.c b/drivers/gpu/drm/gma500/oaktrail_lvds.c index e77d7214fca4..4c17c93d8d10 100644 --- a/drivers/gpu/drm/gma500/oaktrail_lvds.c +++ b/drivers/gpu/drm/gma500/oaktrail_lvds.c | |||
@@ -218,30 +218,6 @@ static const struct drm_encoder_helper_funcs oaktrail_lvds_helper_funcs = { | |||
218 | .commit = oaktrail_lvds_commit, | 218 | .commit = oaktrail_lvds_commit, |
219 | }; | 219 | }; |
220 | 220 | ||
221 | static struct drm_display_mode lvds_configuration_modes[] = { | ||
222 | /* hard coded fixed mode for TPO LTPS LPJ040K001A */ | ||
223 | { DRM_MODE("800x480", DRM_MODE_TYPE_DRIVER, 33264, 800, 836, | ||
224 | 846, 1056, 0, 480, 489, 491, 525, 0, 0) }, | ||
225 | /* hard coded fixed mode for LVDS 800x480 */ | ||
226 | { DRM_MODE("800x480", DRM_MODE_TYPE_DRIVER, 30994, 800, 801, | ||
227 | 802, 1024, 0, 480, 481, 482, 525, 0, 0) }, | ||
228 | /* hard coded fixed mode for Samsung 480wsvga LVDS 1024x600@75 */ | ||
229 | { DRM_MODE("1024x600", DRM_MODE_TYPE_DRIVER, 53990, 1024, 1072, | ||
230 | 1104, 1184, 0, 600, 603, 604, 608, 0, 0) }, | ||
231 | /* hard coded fixed mode for Samsung 480wsvga LVDS 1024x600@75 */ | ||
232 | { DRM_MODE("1024x600", DRM_MODE_TYPE_DRIVER, 53990, 1024, 1104, | ||
233 | 1136, 1184, 0, 600, 603, 604, 608, 0, 0) }, | ||
234 | /* hard coded fixed mode for Sharp wsvga LVDS 1024x600 */ | ||
235 | { DRM_MODE("1024x600", DRM_MODE_TYPE_DRIVER, 48885, 1024, 1124, | ||
236 | 1204, 1312, 0, 600, 607, 610, 621, 0, 0) }, | ||
237 | /* hard coded fixed mode for LVDS 1024x768 */ | ||
238 | { DRM_MODE("1024x768", DRM_MODE_TYPE_DRIVER, 65000, 1024, 1048, | ||
239 | 1184, 1344, 0, 768, 771, 777, 806, 0, 0) }, | ||
240 | /* hard coded fixed mode for LVDS 1366x768 */ | ||
241 | { DRM_MODE("1366x768", DRM_MODE_TYPE_DRIVER, 77500, 1366, 1430, | ||
242 | 1558, 1664, 0, 768, 769, 770, 776, 0, 0) }, | ||
243 | }; | ||
244 | |||
245 | /* Returns the panel fixed mode from configuration. */ | 221 | /* Returns the panel fixed mode from configuration. */ |
246 | 222 | ||
247 | static void oaktrail_lvds_get_configuration_mode(struct drm_device *dev, | 223 | static void oaktrail_lvds_get_configuration_mode(struct drm_device *dev, |
@@ -303,10 +279,10 @@ static void oaktrail_lvds_get_configuration_mode(struct drm_device *dev, | |||
303 | mode_dev->panel_fixed_mode = | 279 | mode_dev->panel_fixed_mode = |
304 | drm_mode_duplicate(dev, | 280 | drm_mode_duplicate(dev, |
305 | dev_priv->lfp_lvds_vbt_mode); | 281 | dev_priv->lfp_lvds_vbt_mode); |
306 | /* Then guess */ | 282 | |
283 | /* If we still got no mode then bail */ | ||
307 | if (mode_dev->panel_fixed_mode == NULL) | 284 | if (mode_dev->panel_fixed_mode == NULL) |
308 | mode_dev->panel_fixed_mode | 285 | return; |
309 | = drm_mode_duplicate(dev, &lvds_configuration_modes[2]); | ||
310 | 286 | ||
311 | drm_mode_set_name(mode_dev->panel_fixed_mode); | 287 | drm_mode_set_name(mode_dev->panel_fixed_mode); |
312 | drm_mode_set_crtcinfo(mode_dev->panel_fixed_mode, 0); | 288 | drm_mode_set_crtcinfo(mode_dev->panel_fixed_mode, 0); |