Commit 12caf46c authored by Ville Syrjälä's avatar Ville Syrjälä Committed by Tvrtko Ursulin
Browse files

drm/i915/sdvo: Grab mode_config.mutex during LVDS init to avoid WARNs

drm_mode_probed_add() is unhappy about being called w/o
mode_config.mutex. Grab it during LVDS fixed mode setup
to silence the WARNs.

Cc: stable@vger.kernel.org
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/7301


Fixes: aa2b8807 ("drm/i915/sdvo: Fix multi function encoder stuff")
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20221026101134.20865-4-ville.syrjala@linux.intel.com


Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
(cherry picked from commit a3cd4f44)
Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
parent d372ec94
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -2900,8 +2900,12 @@ intel_sdvo_lvds_init(struct intel_sdvo *intel_sdvo, int device)
	intel_panel_add_vbt_sdvo_fixed_mode(intel_connector);
	intel_panel_add_vbt_sdvo_fixed_mode(intel_connector);


	if (!intel_panel_preferred_fixed_mode(intel_connector)) {
	if (!intel_panel_preferred_fixed_mode(intel_connector)) {
		mutex_lock(&i915->drm.mode_config.mutex);

		intel_ddc_get_modes(connector, &intel_sdvo->ddc);
		intel_ddc_get_modes(connector, &intel_sdvo->ddc);
		intel_panel_add_edid_fixed_modes(intel_connector, false);
		intel_panel_add_edid_fixed_modes(intel_connector, false);

		mutex_unlock(&i915->drm.mode_config.mutex);
	}
	}


	intel_panel_init(intel_connector);
	intel_panel_init(intel_connector);