diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_lvds.c')
| -rw-r--r-- | drivers/gpu/drm/i915/intel_lvds.c | 18 | 
1 files changed, 16 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c index c5c0973af8a..9c71183629c 100644 --- a/drivers/gpu/drm/i915/intel_lvds.c +++ b/drivers/gpu/drm/i915/intel_lvds.c @@ -187,6 +187,8 @@ centre_horizontally(struct drm_display_mode *mode,  	mode->crtc_hsync_start = mode->crtc_hblank_start + sync_pos;  	mode->crtc_hsync_end = mode->crtc_hsync_start + sync_width; + +	mode->private_flags |= INTEL_MODE_CRTC_TIMINGS_SET;  }  static void @@ -208,6 +210,8 @@ centre_vertically(struct drm_display_mode *mode,  	mode->crtc_vsync_start = mode->crtc_vblank_start + sync_pos;  	mode->crtc_vsync_end = mode->crtc_vsync_start + sync_width; + +	mode->private_flags |= INTEL_MODE_CRTC_TIMINGS_SET;  }  static inline u32 panel_fitter_scaling(u32 source, u32 target) @@ -283,6 +287,8 @@ static bool intel_lvds_mode_fixup(struct drm_encoder *encoder,  	for_each_pipe(pipe)  		I915_WRITE(BCLRPAT(pipe), 0); +	drm_mode_set_crtcinfo(adjusted_mode, 0); +  	switch (intel_lvds->fitting_mode) {  	case DRM_MODE_SCALE_CENTER:  		/* @@ -744,7 +750,7 @@ static const struct dmi_system_id intel_no_lvds[] = {  		.ident = "Hewlett-Packard t5745",  		.matches = {  			DMI_MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"), -			DMI_MATCH(DMI_BOARD_NAME, "hp t5745"), +			DMI_MATCH(DMI_PRODUCT_NAME, "hp t5745"),  		},  	},  	{ @@ -752,7 +758,15 @@ static const struct dmi_system_id intel_no_lvds[] = {  		.ident = "Hewlett-Packard st5747",  		.matches = {  			DMI_MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"), -			DMI_MATCH(DMI_BOARD_NAME, "hp st5747"), +			DMI_MATCH(DMI_PRODUCT_NAME, "hp st5747"), +		}, +	}, +	{ +		.callback = intel_no_lvds_dmi_callback, +		.ident = "MSI Wind Box DC500", +		.matches = { +			DMI_MATCH(DMI_BOARD_VENDOR, "MICRO-STAR INTERNATIONAL CO., LTD"), +			DMI_MATCH(DMI_BOARD_NAME, "MS-7469"),  		},  	},  | 
