diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2021-09-23 23:01:04 +0300 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2021-09-30 11:18:32 +0300 |
commit | 082436068c19316d5153229fd1b48dceccd0efee (patch) | |
tree | 7641a142fa112ee194fba841c1b694aa84c38c8d /drivers/gpu/drm/i915/display/intel_panel.c | |
parent | b58a88682093b3438dad66f2c3d3a4d0a20ee1e8 (diff) | |
download | linux-082436068c19316d5153229fd1b48dceccd0efee.tar.gz linux-082436068c19316d5153229fd1b48dceccd0efee.tar.bz2 linux-082436068c19316d5153229fd1b48dceccd0efee.zip |
drm/i915: Extract intel_panel_mode_valid()
Extract intel_panel_mode_valid() from the eDP code to a generic helper.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210923200109.4459-2-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.c | 18 |
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 4804b6b86798..8a364bb1ce41 100644 --- a/drivers/gpu/drm/i915/display/intel_panel.c +++ b/drivers/gpu/drm/i915/display/intel_panel.c @@ -482,6 +482,24 @@ intel_panel_detect(struct drm_connector *connector, bool force) return connector_status_connected; } +enum drm_mode_status +intel_panel_mode_valid(struct intel_connector *connector, + const struct drm_display_mode *mode) +{ + const struct drm_display_mode *fixed_mode = connector->panel.fixed_mode; + + if (!fixed_mode) + return MODE_OK; + + if (mode->hdisplay != fixed_mode->hdisplay) + return MODE_PANEL; + + if (mode->vdisplay != fixed_mode->vdisplay) + return MODE_PANEL; + + return MODE_OK; +} + int intel_panel_init(struct intel_panel *panel, struct drm_display_mode *fixed_mode, struct drm_display_mode *downclock_mode) |