From d77173cc5e38956189ecf2e81aa734643aaab57a Mon Sep 17 00:00:00 2001 From: Jani Nikula Date: Tue, 30 Apr 2013 11:15:03 +0300 Subject: [PATCH] drm/i915: don't quirk away LVDS on D510MOV Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo Cc: Jani Nikula dmi_check_system() matches the D510MO no LVDS quirk for D510MOV too. Reverse quirk the quirk. Signed-off-by: Jani Nikula --- drivers/gpu/drm/i915/intel_lvds.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c index 9451d38..c610917 100644 --- a/drivers/gpu/drm/i915/intel_lvds.c +++ b/drivers/gpu/drm/i915/intel_lvds.c @@ -502,6 +502,19 @@ static const struct drm_encoder_funcs intel_lvds_enc_funcs = { .destroy = intel_encoder_destroy, }; +/* These systems have LVDS but also match the no lvds quirk table... */ +static const struct dmi_system_id intel_yes_lvds[] = { + { + .ident = "Intel D510MOV", + .matches = { + DMI_MATCH(DMI_BOARD_VENDOR, "Intel"), + DMI_MATCH(DMI_BOARD_NAME, "D510MOV"), + }, + }, + + { } /* terminating entry */ +}; + static int __init intel_no_lvds_dmi_callback(const struct dmi_system_id *id) { DRM_INFO("Skipping LVDS initialization for %s\n", id->ident); @@ -893,7 +906,7 @@ bool intel_lvds_init(struct drm_device *dev) return false; /* Skip init on machines we know falsely report LVDS */ - if (dmi_check_system(intel_no_lvds)) + if (!dmi_check_system(intel_yes_lvds) && dmi_check_system(intel_no_lvds)) return false; pin = GMBUS_PORT_PANEL; -- 1.7.10.4