drm/i915: hw state readout support for pipe timings
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 29 Apr 2013 19:56:12 +0000 (21:56 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 29 Apr 2013 21:29:38 +0000 (23:29 +0200)
commit1bd1bd806037af04dd1d7bdd39b2b04090c10d2c
treeea4cfd7be346f089d7689d7f5e3e5902b25538c1
parent72419203cab9acf173956f5564639b0012cd2604
drm/i915: hw state readout support for pipe timings

This does duplicate the logic in intel_crtc_mode_get a bit, but the
issue is that we also should handle interlace modes and other insanity
correctly.

Hence I've opted for a sligthly more elaborate route where we first
read out the crtc timings for the adjusted mode, and then optionally
(not sure if we really need it) compute the modeline from that.

v2: Also read out the pipe source dimensions into the requested mode.

v3: Rebase on top of the moved cpu_transcoder.

v4: Simplify CHECK_FLAGS logic as suggested by Chris Wilson. Also
properly #undef that macro again.

Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> (v3)
[danvet: Use the existing mask for interlaced bits, spotted by Mika.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_reg.h
drivers/gpu/drm/i915/intel_display.c