Bug 15350

Summary: randr12: VGA-0 always reported as "disconnected"
Product: xorg Reporter: Joe Orton <jorton>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED WORKSFORME QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: sb476
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
xorg.conf
none
Xorg.0.log
none
xrandr -q output
none
new Xorg log
none
debugging diff
none
current config
none
current log none

Description Joe Orton 2008-04-04 08:29:52 UTC
Created attachment 15678 [details]
xorg.conf

I'm using nouveau from git with Fedora Raw Hide-ish Xorg, on a laptop with:

00:05.0 VGA compatible controller: nVidia Corporation C51 [Geforce 6150 Go] (rev a2)

the LVDS works fine, but I can't get the VGA output to work.  xrandr -q always reports "VGA-0 disconnected".
Comment 1 Joe Orton 2008-04-04 08:30:28 UTC
Created attachment 15679 [details]
Xorg.0.log
Comment 2 Joe Orton 2008-04-04 08:31:31 UTC
Created attachment 15680 [details]
xrandr -q output
Comment 3 Joe Orton 2008-04-04 08:32:37 UTC
I added the:

        Option "Monitor-LVDS" "Laptop LCD"
        Option "Monitor-VGA-0" "External VGA"

& associated Monitor sections to xorg.conf in an attempt to force detection of the VGA output, but it didn't make any difference.

Comment 4 Maarten Maathuis 2008-04-04 08:39:49 UTC
Is your monitor DDC capable?
Comment 5 Joe Orton 2008-04-04 09:05:37 UTC
Yes, I've tried with two separate LCD panels.
Comment 6 Stuart Bennett 2008-04-04 13:31:10 UTC
If you bludgeon the ext vga into connectedness (say, by adding "return XF86OutputStatusConnected;" at the top of nv_analog_output_detect in nv_output.c), any joy? If not, a log of attempting that would be good.
Comment 7 Joe Orton 2008-04-04 14:10:06 UTC
Earlier I tried changing that very function to return XF86OutputStatusUnknown in the fall-through case rather than Disconnected; would you expect that to have a similar effect?

It seemed a little better; the monitor displayed a blank screen rather than screaming "omg no input"; it didn't fetch the EDID info though.  I added debugging printfs to nv_get_edid to see where it was falling out, and it was:

        ddc_mon = xf86OutputGetEDID(output, nv_output->pDDCBus);
        if (!ddc_mon) {

returning ddc_mon == NULL here.  I'm off to a conference for all of next week so may not be able to play with this any more for a while.  Suggestions on how to debug further (or to tell me I'm simply screwing up the config!) welcome.

Comment 8 Stuart Bennett 2008-04-04 14:38:11 UTC
Last time I lookked, "Unknown" outputs were only used if nothing could be found as definitely connected -- since the LVDS *is* connected, you lose. Saying it is definitely connected should make the xserver use its pool of default modes.

I'm not too worried yet about the lack of ddc, as I strongly suspect (having looked at a C51 bios image) that the integrated chipset uses a different set of regs to read/write I2C, hence ddc is broken. Before fixing that though, I'd like to be convinced that using the xserver's fallback default modes we can get the screen lit up without additional trickery being required.
Comment 9 Stuart Bennett 2008-04-26 17:15:48 UTC
Hi, any luck with trying to force a connected status as described in comment 6?
Comment 10 Joe Orton 2008-04-29 06:02:29 UTC
Created attachment 16235 [details]
new Xorg log
Comment 11 Joe Orton 2008-04-29 06:03:33 UTC
Created attachment 16236 [details] [review]
debugging diff
Comment 12 Joe Orton 2008-04-29 06:07:06 UTC
Sorry about the delay.

I've attached the diff I'm using, and the log which results, same config as above.  The results are the same: nothing is displayed on the monitor, but the monitor is not screaming "no input" any more.  (and e.g. after forcing a mode change with xrandr, the monitor flicked up "Auto adjust" but then carried on displaying nothing)
Comment 13 Stuart Bennett 2008-04-29 06:43:29 UTC
I'm beginning to suspect that something in your xorg conf is working against you; your initial log claims no modes exist for VGA-0, and your new log manages to find a 1360x768 mode, which is quite special. Maybe try without the additional Monitor sections, and/or add something like

Modes           "1024x768" "800x600" "640x480"

inside the Display subsection of your Screen section. Bug 15729 (same chipset as this bug) manages to use the load detection stuff correctly (although it obviously only uses a pool of generic modes), so that ought to work here too.

That said, there's now a C51 DDC patch in the same bug which will hopefully fix your DDC too.
Comment 14 Joe Orton 2008-05-01 08:12:08 UTC
Created attachment 16300 [details]
current config
Comment 15 Joe Orton 2008-05-01 08:12:46 UTC
Created attachment 16301 [details]
current log
Comment 16 Joe Orton 2008-05-01 08:19:33 UTC
I've applied the patch from Bug 15729 and this seems to be getting the DDC info correctly from the (Dell) panel - nice work! It's also not falling through to the debugging force-connected hack any more.

I'm still not getting any output on the VGA head, though.

Attached current config/log.

(I've no idea why it likes 1360x768.  One of the three panels I have ever tried testing with uses that as a native resolution; the only one not currently in the same room as the laptop!)
Comment 17 Stuart Bennett 2008-05-01 11:16:46 UTC
Looking over your log, it seems you're using a checkout of the nouveau ddx that's around a month old. In the intervening period there have been several commits which could affect issues of this sort, so it's worth doing future testing against the code in git (the git code also has the C51 DDC patch applied).

Please also test with   Option "ModeDebug" "On"   in the Device section of your xorg.conf to generate a more verbose log, and when in X, see if setting some different modes helps: run xrandr to see a list of available resolutions for VGA-0, then set one using xrandr --output VGA-0 --mode 800x600 (for an 800x600 mode).
Comment 18 Pekka Paalanen 2009-08-09 00:45:01 UTC
Joe, any news on this issue?
Comment 19 Joe Orton 2009-08-09 01:36:08 UTC
Sorry, the laptop on which I saw this bug joined the bit bucket in the sky a while back.  Feel free to close out if you think appropriate.
Comment 20 Pekka Paalanen 2009-08-09 01:44:06 UTC
Okay, thanks. Closing.

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.