| From e1f23f3dd817f53f622e486913ac662add46eeed Mon Sep 17 00:00:00 2001 |
| From: Jani Nikula <jani.nikula@intel.com> |
| Date: Fri, 28 Mar 2014 08:54:04 +0200 |
| Subject: drm/i915/tv: fix gen4 composite s-video tv-out |
| |
| From: Jani Nikula <jani.nikula@intel.com> |
| |
| commit e1f23f3dd817f53f622e486913ac662add46eeed upstream. |
| |
| This is *not* bisected, but the likely regression is |
| |
| commit c35614380d5c956bfda20eab2755b2f5a7d6f1e7 |
| 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 |
| Signed-off-by: Jani Nikula <jani.nikula@intel.com> |
| Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/gpu/drm/i915/intel_tv.c | 9 +++++++-- |
| 1 file changed, 7 insertions(+), 2 deletions(-) |
| |
| --- a/drivers/gpu/drm/i915/intel_tv.c |
| +++ b/drivers/gpu/drm/i915/intel_tv.c |
| @@ -1536,9 +1536,14 @@ static int tv_is_present_in_vbt(struct d |
| /* |
| * If the device type is not TV, continue. |
| */ |
| - if (p_child->old.device_type != DEVICE_TYPE_INT_TV && |
| - p_child->old.device_type != DEVICE_TYPE_TV) |
| + switch (p_child->old.device_type) { |
| + case DEVICE_TYPE_INT_TV: |
| + case DEVICE_TYPE_TV: |
| + case DEVICE_TYPE_TV_SVIDEO_COMPOSITE: |
| + break; |
| + default: |
| continue; |
| + } |
| /* Only when the addin_offset is non-zero, it is regarded |
| * as present. |
| */ |