drm/i915/tv: fix gen4 composite s-video tv-out

This is *not* bisected, but the likely regression is

commit c35614380d
Author: Zhao Yakui <yakui.zhao@intel.com>
Date:   Tue Nov 24 09:48:48 2009 +0800

    drm/i915: Don't set up the TV port if it isn't in the BIOS table.

The commit does not check for all TV device types that might be present
in the VBT, disabling TV out for the missing ones. Add composite
S-video.

Reported-and-tested-by: Matthew Khouzam <matthew.khouzam@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73362
Cc: stable@vger.kernel.org
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Jani Nikula 2014-03-28 08:54:04 +02:00 committed by Daniel Vetter
parent e3243d1672
commit e1f23f3dd8
1 changed files with 7 additions and 2 deletions

View File

@ -1536,9 +1536,14 @@ static int tv_is_present_in_vbt(struct drm_device *dev)
/* /*
* If the device type is not TV, continue. * If the device type is not TV, continue.
*/ */
if (p_child->old.device_type != DEVICE_TYPE_INT_TV && switch (p_child->old.device_type) {
p_child->old.device_type != DEVICE_TYPE_TV) case DEVICE_TYPE_INT_TV:
case DEVICE_TYPE_TV:
case DEVICE_TYPE_TV_SVIDEO_COMPOSITE:
break;
default:
continue; continue;
}
/* Only when the addin_offset is non-zero, it is regarded /* Only when the addin_offset is non-zero, it is regarded
* as present. * as present.
*/ */