|
@@ -899,6 +899,7 @@ void intel_lvds_init(struct drm_device *dev)
|
|
|
struct drm_encoder *encoder;
|
|
|
struct drm_display_mode *scan; /* *modes, *bios_mode; */
|
|
|
struct drm_display_mode *fixed_mode = NULL;
|
|
|
+ struct drm_display_mode *downclock_mode = NULL;
|
|
|
struct edid *edid;
|
|
|
struct drm_crtc *crtc;
|
|
|
u32 lvds;
|
|
@@ -1032,15 +1033,14 @@ void intel_lvds_init(struct drm_device *dev)
|
|
|
|
|
|
fixed_mode = drm_mode_duplicate(dev, scan);
|
|
|
if (fixed_mode) {
|
|
|
- intel_connector->panel.downclock_mode =
|
|
|
+ downclock_mode =
|
|
|
intel_find_panel_downclock(dev,
|
|
|
fixed_mode, connector);
|
|
|
- if (intel_connector->panel.downclock_mode !=
|
|
|
- NULL && i915.lvds_downclock) {
|
|
|
+ if (downclock_mode != NULL &&
|
|
|
+ i915.lvds_downclock) {
|
|
|
/* We found the downclock for LVDS. */
|
|
|
dev_priv->lvds_downclock_avail = true;
|
|
|
dev_priv->lvds_downclock =
|
|
|
- intel_connector->panel.
|
|
|
downclock_mode->clock;
|
|
|
DRM_DEBUG_KMS("LVDS downclock is found"
|
|
|
" in EDID. Normal clock %dKhz, "
|
|
@@ -1116,7 +1116,7 @@ out:
|
|
|
}
|
|
|
drm_sysfs_connector_add(connector);
|
|
|
|
|
|
- intel_panel_init(&intel_connector->panel, fixed_mode);
|
|
|
+ intel_panel_init(&intel_connector->panel, fixed_mode, downclock_mode);
|
|
|
intel_panel_setup_backlight(connector);
|
|
|
|
|
|
return;
|