drm/i915: Compute proper intermediate wms for vlv/cvh
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 2 Mar 2017 17:14:59 +0000 (19:14 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 3 Mar 2017 14:50:10 +0000 (16:50 +0200)
commit4841da51a753ca65909441e561236de82b6b48a5
tree751fff850e13b7525d96dbe9a23adf7fd76920a5
parent236c48e692458fb55ec96ac1823a176f2bce09f1
drm/i915: Compute proper intermediate wms for vlv/cvh

Since the watermark registers arent double buffered on VLV/CHV, we'll
need to play around with intermediate watermarks same was as we do on
ILK-BDW.

The watermark registers on VLV/CHV contain inverted values, so to find
the intermediate watermark value we just take the minimum of the
active and optimal values. This also means that, unlike ILK-BDW,
there's no chance that we'd fail to find a working intermediate
watermarks. As long as both the active and optimal watermarks are valid
the intermediate watermarks will come out valid as well.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170302171508.1666-10-ville.syrjala@linux.intel.com
drivers/gpu/drm/i915/intel_drv.h
drivers/gpu/drm/i915/intel_pm.c