drm/i915: Introduce intel_panel_preferred_fixed_mode()
There are a couple of cases where we essentially just want to get/check the preferred fixed mode of the panel. Add a small helper for that to abstract away the direct pointer lookup. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220311172428.14685-9-ville.syrjala@linux.intel.com Reviewed-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
parent
53f64f3a24
commit
43af674357
@ -582,8 +582,9 @@ static bool intel_dp_can_link_train_fallback_for_edp(struct intel_dp *intel_dp,
|
|||||||
int link_rate,
|
int link_rate,
|
||||||
u8 lane_count)
|
u8 lane_count)
|
||||||
{
|
{
|
||||||
|
/* FIXME figure out what we actually want here */
|
||||||
const struct drm_display_mode *fixed_mode =
|
const struct drm_display_mode *fixed_mode =
|
||||||
intel_dp->attached_connector->panel.fixed_mode;
|
intel_panel_preferred_fixed_mode(intel_dp->attached_connector);
|
||||||
int mode_rate, max_rate;
|
int mode_rate, max_rate;
|
||||||
|
|
||||||
mode_rate = intel_dp_link_required(fixed_mode->clock, 18);
|
mode_rate = intel_dp_link_required(fixed_mode->clock, 18);
|
||||||
|
@ -45,6 +45,12 @@ bool intel_panel_use_ssc(struct drm_i915_private *i915)
|
|||||||
&& !(i915->quirks & QUIRK_LVDS_SSC_DISABLE);
|
&& !(i915->quirks & QUIRK_LVDS_SSC_DISABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const struct drm_display_mode *
|
||||||
|
intel_panel_preferred_fixed_mode(struct intel_connector *connector)
|
||||||
|
{
|
||||||
|
return connector->panel.fixed_mode;
|
||||||
|
}
|
||||||
|
|
||||||
const struct drm_display_mode *
|
const struct drm_display_mode *
|
||||||
intel_panel_fixed_mode(struct intel_connector *connector,
|
intel_panel_fixed_mode(struct intel_connector *connector,
|
||||||
const struct drm_display_mode *mode)
|
const struct drm_display_mode *mode)
|
||||||
|
@ -25,6 +25,8 @@ enum drm_connector_status
|
|||||||
intel_panel_detect(struct drm_connector *connector, bool force);
|
intel_panel_detect(struct drm_connector *connector, bool force);
|
||||||
bool intel_panel_use_ssc(struct drm_i915_private *i915);
|
bool intel_panel_use_ssc(struct drm_i915_private *i915);
|
||||||
const struct drm_display_mode *
|
const struct drm_display_mode *
|
||||||
|
intel_panel_preferred_fixed_mode(struct intel_connector *connector);
|
||||||
|
const struct drm_display_mode *
|
||||||
intel_panel_fixed_mode(struct intel_connector *connector,
|
intel_panel_fixed_mode(struct intel_connector *connector,
|
||||||
const struct drm_display_mode *mode);
|
const struct drm_display_mode *mode);
|
||||||
const struct drm_display_mode *
|
const struct drm_display_mode *
|
||||||
|
@ -2932,7 +2932,7 @@ intel_sdvo_lvds_init(struct intel_sdvo *intel_sdvo, int device)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!intel_connector->panel.fixed_mode)
|
if (!intel_panel_preferred_fixed_mode(intel_connector))
|
||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user