diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2022-03-31 14:28:13 +0300 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2022-03-31 14:28:13 +0300 |
commit | db10c14a2523071369e87c24af854928d52dad34 (patch) | |
tree | c1b73cc1d4b1449ce790c1c0ac1b3d21557c5fdf /drivers/gpu/drm/i915/display/intel_dvo.c | |
parent | 1c05183a3709fbef6aea66cd50002e718aec2e95 (diff) |
drm/i915: Put fixed modes directly onto the panel's fixed_modes list
Rather than having the connector init get the fixed mode back from
intel_panel and then feed it straight back into intel_panel_init()
let's just make the fixed mode lookup put the mode directly onto
the panel's fixed_modes list. Avoids the pointless round trip and
opens the door for further enhancements to the fixed mode handling.
v2: Make the debug message correct by using intel_panel_drrs_type() (Jani)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220331112822.11462-3-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_dvo.c')
-rw-r--r-- | drivers/gpu/drm/i915/display/intel_dvo.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_dvo.c b/drivers/gpu/drm/i915/display/intel_dvo.c index 8c98897d8313..5572e43026e4 100644 --- a/drivers/gpu/drm/i915/display/intel_dvo.c +++ b/drivers/gpu/drm/i915/display/intel_dvo.c @@ -520,8 +520,6 @@ void intel_dvo_init(struct drm_i915_private *dev_priv) intel_connector_attach_encoder(intel_connector, intel_encoder); if (dvo->type == INTEL_DVO_CHIP_LVDS) { - struct drm_display_mode *fixed_mode; - /* * For our LVDS chipsets, we should hopefully be able * to dig the fixed panel mode out of the BIOS data. @@ -530,10 +528,11 @@ void intel_dvo_init(struct drm_i915_private *dev_priv) * headers, likely), so for now, just get the current * mode being output through DVO. */ - fixed_mode = intel_panel_encoder_fixed_mode(intel_connector, - intel_encoder); + intel_panel_add_encoder_fixed_mode(intel_connector, + intel_encoder); + + intel_panel_init(intel_connector); - intel_panel_init(intel_connector, fixed_mode, NULL); intel_dvo->panel_wants_dither = true; } |