summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2022-03-11 20:24:26 +0300
committerVille Syrjälä <ville.syrjala@linux.intel.com>2022-03-15 01:16:25 +0300
commitc2f12155536a28ee99fbf9960c1d83ceff81d9ae (patch)
tree6e6620e8912c8835d80db36c072742c013e6a6a3
parente8ae25df50803b93fa9530ed7048bc67531eb7da (diff)
downloadlinux-c2f12155536a28ee99fbf9960c1d83ceff81d9ae.tar.xz
drm/i915: Enable eDP DRRS on ilk/snb port A
Nothing special about ivb+ here, if DRRS works on ivb+ port A it should work just as well on ilk/snb. So let's enable that. Reviewed-by: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220311172428.14685-15-ville.syrjala@linux.intel.com
-rw-r--r--drivers/gpu/drm/i915/display/intel_display_debugfs.c3
-rw-r--r--drivers/gpu/drm/i915/display/intel_drrs.c8
2 files changed, 4 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
index 24f773583dd3..35c27d67d584 100644
--- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
+++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
@@ -1838,9 +1838,6 @@ static int i915_drrs_ctl_set(void *data, u64 val)
struct drm_device *dev = &dev_priv->drm;
struct intel_crtc *crtc;
- if (DISPLAY_VER(dev_priv) < 7)
- return -ENODEV;
-
for_each_intel_crtc(dev, crtc) {
struct intel_crtc_state *crtc_state;
struct drm_crtc_commit *commit;
diff --git a/drivers/gpu/drm/i915/display/intel_drrs.c b/drivers/gpu/drm/i915/display/intel_drrs.c
index fd956775698e..981eb37d613e 100644
--- a/drivers/gpu/drm/i915/display/intel_drrs.c
+++ b/drivers/gpu/drm/i915/display/intel_drrs.c
@@ -158,10 +158,10 @@ static void intel_drrs_set_state(struct intel_crtc *crtc,
if (refresh_rate == crtc->drrs.refresh_rate)
return;
- if (DISPLAY_VER(dev_priv) >= 8 && !IS_CHERRYVIEW(dev_priv))
- intel_drrs_set_refresh_rate_m_n(crtc, refresh_rate);
- else if (DISPLAY_VER(dev_priv) > 6)
+ if (intel_cpu_transcoder_has_m2_n2(dev_priv, crtc->drrs.cpu_transcoder))
intel_drrs_set_refresh_rate_pipeconf(crtc, refresh_rate);
+ else
+ intel_drrs_set_refresh_rate_m_n(crtc, refresh_rate);
crtc->drrs.refresh_rate = refresh_rate;
}
@@ -374,7 +374,7 @@ intel_drrs_init(struct intel_connector *connector,
struct intel_encoder *encoder = connector->encoder;
struct drm_display_mode *downclock_mode;
- if (DISPLAY_VER(dev_priv) <= 6) {
+ if (DISPLAY_VER(dev_priv) < 5) {
drm_dbg_kms(&dev_priv->drm,
"[CONNECTOR:%d:%s] DRRS not supported on platform\n",
connector->base.base.id, connector->base.name);