summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/display/intel_panel.c
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2022-03-11 19:24:19 +0200
committerVille Syrjälä <ville.syrjala@linux.intel.com>2022-03-15 00:14:17 +0200
commit53f64f3a24c115bac05a7a343282623005a16c90 (patch)
tree15ebe2c8ca7348d8e0069f4cb29fca2503b21b6f /drivers/gpu/drm/i915/display/intel_panel.c
parent092706786e1143fa947f7387600d275113a4043c (diff)
drm/i915: Introduce intel_panel_get_modes()
Several connectors want to return the fixed_mode from .get_modes(), add a helper to do that (and hide the details inside intel_panel.c). Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220311172428.14685-8-ville.syrjala@linux.intel.com Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_panel.c')
-rw-r--r--drivers/gpu/drm/i915/display/intel_panel.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_panel.c b/drivers/gpu/drm/i915/display/intel_panel.c
index 3ad246791da5..222328d4e7a1 100644
--- a/drivers/gpu/drm/i915/display/intel_panel.c
+++ b/drivers/gpu/drm/i915/display/intel_panel.c
@@ -59,6 +59,24 @@ intel_panel_downclock_mode(struct intel_connector *connector,
return connector->panel.downclock_mode;
}
+int intel_panel_get_modes(struct intel_connector *connector)
+{
+ int num_modes = 0;
+
+ if (connector->panel.fixed_mode) {
+ struct drm_display_mode *mode;
+
+ mode = drm_mode_duplicate(connector->base.dev,
+ connector->panel.fixed_mode);
+ if (mode) {
+ drm_mode_probed_add(&connector->base, mode);
+ num_modes++;
+ }
+ }
+
+ return num_modes;
+}
+
int intel_panel_compute_config(struct intel_connector *connector,
struct drm_display_mode *adjusted_mode)
{