drm/i915: add set_infoframes to struct intel_hdmi
authorPaulo Zanoni <paulo.r.zanoni@intel.com>
Mon, 28 May 2012 19:42:48 +0000 (16:42 -0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 30 May 2012 19:36:58 +0000 (21:36 +0200)
commit687f4d06dbb1cf3c8f9f6050cd7aad24dc0ce978
tree695bb1149bf925ec3bc47409fcdf7a5a5013f6ce
parenteeafaaca763408c099d2ade3a69e0716f296a97b
drm/i915: add set_infoframes to struct intel_hdmi

We need a function that is able to fully 'set' the state of the DIP
registers to a known state.

Currently, we have the write_infoframe function that is called twice:
once for AVI and once for SPD. The problem is that write_infoframe
tries to keep the state of the DIP register as it is, changing only
the minimum necessary bits. The second problem is that
write_infoframe does twice (once for each time it is called) some
work that should be done only once (like waiting for vblank and
setting the port). If we add even more DIPs, it will do even more
repeated work.

This patch only adds the infrastructure keeping the code behavior the
same as before.

v2: add static keywords

Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_ddi.c
drivers/gpu/drm/i915/intel_drv.h
drivers/gpu/drm/i915/intel_hdmi.c