]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Fix AVI/HDMI/SPD infoframes on HSW+
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 16 Dec 2015 16:10:00 +0000 (18:10 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 16 Dec 2015 17:01:09 +0000 (19:01 +0200)
commit56232ae4d5387b8b8a151356980187c07adaea62
tree442e9f02dee377b0734fe3239a396cd5ed3f5a84
parenta87eb7073eb36565a6c5bd4e860754829cb0dddd
drm/i915: Fix AVI/HDMI/SPD infoframes on HSW+

I broke AVI/HDMI/SPD infoframes on HSW+ with the register type
safety changes. We were supposed to check that the infoframe data
register is valid before writing the infoframe data, but the check
ended up inverted, and so in practice we never wrote or enabled
these infoframes.

We were still sending out the GCP infoframe when the sink was
deep-color capable. That and the fact that we use a single
bool to track our infoframe state meant that the state checker
only caught this when a HDMI sink that doesn't do deep-color was
used.

We really need to fix our infoframe state checking to be much
more anal. But in the meantime let's just fix the regression.
In fact let's just throw out the register validity check and
convert some of the "unknown info frame type" debug messages
into MISSING_CASE(). So far we support the same set of infoframe
types on all platforms, so the silent debug messages make no
sense.

Cc: drm-intel-fixes@lists.freedesktop.org
Fixes: c9d31b2d65f9 ("drm/i915: Type safe register read/write")
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> (irc)
Tested-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> (irc)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1450282200-4203-1-git-send-email-ville.syrjala@linux.intel.com
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93119
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_hdmi.c