Bug 20947 - [945GC SDVO-TV] CVBS Output type not recognized
Summary: [945GC SDVO-TV] CVBS Output type not recognized
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Wang Zhenyu
QA Contact: Xorg Project Team
Depends on:
Reported: 2009-03-30 07:19 UTC by Hugo Jacques
Modified: 2009-03-31 19:22 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

Xorg.0.log showing defect (68.13 KB, text/plain)
2009-03-30 07:19 UTC, Hugo Jacques
no flags Details
xorg.conf reproducing defect (2.86 KB, text/plain)
2009-03-30 07:21 UTC, Hugo Jacques
no flags Details
xrandr --versbose log (5.40 KB, text/plain)
2009-03-30 07:22 UTC, Hugo Jacques
no flags Details
dmesg when defect present (22.19 KB, text/plain)
2009-03-30 07:23 UTC, Hugo Jacques
no flags Details
patch that solves the problem on my setup (640 bytes, patch)
2009-03-31 05:20 UTC, Hugo Jacques
no flags Details | Splinter Review

Description Hugo Jacques 2009-03-30 07:19:29 UTC
Created attachment 24366 [details]
Xorg.0.log showing defect

The Composite output (CVBS) type is not recognized on SDVO TV ports. 
See line (WW) intel(0): SDVOB: Unknown SDVO output type (0x0400) in xorg.0.log
This results in plain old TV set not working through SDVO.

System environment:
-- chipset: 945GC
-- system architecture: i686 32 bits
-- xf86-video-intel: git commit #:375b2e40fcb17e94538a75392950e2533c1bb031
-- xserver: xorg-server-1.6.0
-- mesa: git commit #: 2002e03a5232c54988161cb629966bdce19d35de
-- libdrm: git commit #: c9cfeaa5542e08381a8144d0a5bd96036a19082f
-- kernel:
-- Linux distribution: Zenwalk 6.0.0
-- Machine or mobo model: Asus P5GC-MX
-- Display connector: VGA(DB-15) + Composite BNC Connector

Reproducing steps:

Boot the machine with attached xorg.conf, a regular VGA monitor on the DB-15 and a NTSV TV set on the the Composite BNC connector.
Nothing plugged into the DVI connector.
Would expect the VGA and the TV to side by side in a desktop spanning the two monitors.
Only the VGA monitor is being used in the desktop and the TV does not get any signal.
xrandr reports TV connector as "Unknown-1" instead of TV-1 (see attached log)

Additional info:

Using an Advantech Add2 card with Chrontel CH7021 on SDVO-B (Composite) and Chrontel CH7307 on SDVO-C (DVI)

This issue seems to be related to the fact the case where flag = SDVO_OUTPUT_CVBS0 in i830_sdvo_output_setup is not supported.
In fact, adding the following code after the "else if (flag & SDVO_OUTPUT_SVID0)" block makes the thing works just fine.

    else if (flag & SDVO_OUTPUT_CVBS0)
	dev_priv->controlled_output = SDVO_OUTPUT_CVBS0;
	output->subpixel_order = SubPixelHorizontalRGB; /* XXX */
	dev_priv->is_tv = TRUE;
	intel_output->needs_tv_clock = TRUE;
Comment 1 Hugo Jacques 2009-03-30 07:21:39 UTC
Created attachment 24367 [details]
xorg.conf reproducing defect
Comment 2 Hugo Jacques 2009-03-30 07:22:42 UTC
Created attachment 24368 [details]
xrandr --versbose log
Comment 3 Hugo Jacques 2009-03-30 07:23:27 UTC
Created attachment 24369 [details]
dmesg when defect present
Comment 4 Wang Zhenyu 2009-03-30 22:25:44 UTC
I've read you mail on xorg list, could you do a patch for this? Thanks.
Comment 5 Hugo Jacques 2009-03-31 05:20:53 UTC
Created attachment 24400 [details] [review]
patch that solves the problem on my setup

Here is the patch.
Comment 6 Wang Zhenyu 2009-03-31 19:22:55 UTC
Thanks a lot! Pushed.

commit 00de1757dd5776962bdd4c8968181878c2ebf4c9
Author: Hugo Jacques <hugo.jacques@verint.com>
Date:   Wed Apr 1 10:10:05 2009 +0800

    SDVO: add composite TV out support

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.