Bug 12225 - Regression in randr-1.2 code with external VGA monitor
Summary: Regression in randr-1.2 code with external VGA monitor
Status: RESOLVED DUPLICATE of bug 12165
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-30 14:24 UTC by Manish Singh
Modified: 2007-09-14 15:51 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Xorg log with broken driver (91.58 KB, text/plain)
2007-08-30 14:25 UTC, Manish Singh
no flags Details
Xorg log with working driver (80.75 KB, text/plain)
2007-08-30 14:25 UTC, Manish Singh
no flags Details
xorg.conf (5.73 KB, text/plain)
2007-08-30 14:26 UTC, Manish Singh
no flags Details
xrandr --verbose with broken driver (6.42 KB, text/plain)
2007-08-30 22:14 UTC, Manish Singh
no flags Details
xrandr --verbose with working driver (5.58 KB, text/plain)
2007-08-30 22:14 UTC, Manish Singh
no flags Details
xrandr --verbose after reboot with driver with 2 lines commented out (6.19 KB, text/plain)
2007-08-31 15:18 UTC, Manish Singh
no flags Details

Description Manish Singh 2007-08-30 14:24:26 UTC
I'd been following the randr-1.2 branch for a while, but it broke a while ago (and is still broken now it's been merged into HEAD). I finally did a git-bisect and tracked it to this change:

commit cc8e1d95f1b90a259beea4e8cc4d7e29af660919
Author: Alex Deucher <alex@botch2.com>
Date:   Sun Aug 5 01:14:36 2007 -0400

    RADEON: Major rework of BIOS table parsing
    
    - greatly simplify ATOM and legacy connector table parsing
    - use bios tables to detect LVDS and TV outputs
    - add support for TV table parsing (legacy only)

Now when I try:

xrandr --output VGA --mode 1920x1200 --right-of LVDS 

It exits with no errors and doesn't turn on the external display.
Comment 1 Manish Singh 2007-08-30 14:25:28 UTC
Created attachment 11336 [details]
Xorg log with broken driver
Comment 2 Manish Singh 2007-08-30 14:25:52 UTC
Created attachment 11337 [details]
Xorg log with working driver
Comment 3 Manish Singh 2007-08-30 14:26:10 UTC
Created attachment 11338 [details]
xorg.conf
Comment 4 Alex Deucher 2007-08-30 14:51:50 UTC
can you attach the output of xrandr --verbose from both git master and the older version?  Next, it appears you have 3 monitors connected, one on the VGA, one on the DVI and the LVDS port.  Is this correct?  Are you trying to use only the LVDS and VGA ports in a side by side configuration?
Comment 5 Manish Singh 2007-08-30 15:51:10 UTC
Yeah, the the monitor has multiple inputs, I have both VGA and DVI connected. I'm not using the DVI because of blanking problems that I haven't had a chance to sit down and give useful info on yet.
Comment 6 Alex Deucher 2007-08-30 16:50:31 UTC
Can you attach the xrandr outputs and try using only the DVI or VGA input?  The monitor may be getting confused.
Comment 7 Manish Singh 2007-08-30 22:13:35 UTC
Disconnecting the DVI cable made no difference. Attaching the xrandr --verbose output as requested.
Comment 8 Manish Singh 2007-08-30 22:14:10 UTC
Created attachment 11345 [details]
xrandr --verbose with broken driver
Comment 9 Manish Singh 2007-08-30 22:14:33 UTC
Created attachment 11346 [details]
xrandr --verbose with working driver
Comment 10 Alex Deucher 2007-08-31 06:36:38 UTC
It looks like the driver thinks the tv is connected and hence it is using a crtc, leaving none for the vga or dvi ports.  does it help to turn off tv-out first?

xrandr --output S-video --off
then
xrandr --output VGA-0 --auto
or
xrandr --output VGA-0 --mode 1920x1200 --right-of LVDS
Comment 11 Manish Singh 2007-08-31 12:15:52 UTC
Yeah, explicitly turning off the S-video connection made VGA work again.

So the question is why does it think that's connected? There is an s-video port on the machine, but it's not hooked up to anything.
Comment 12 Alex Deucher 2007-08-31 12:43:57 UTC
(In reply to comment #11)
> Yeah, explicitly turning off the S-video connection made VGA work again.
> 
> So the question is why does it think that's connected? There is an s-video port
> on the machine, but it's not hooked up to anything.
> 

The load detection code for tv-out is a bit flakey on some chips.  Can you try commenting out lines 1413 and 1414 of radeon_output.c and see if that helps?  remove these lines:

     if (IS_R300_VARIANT)
         return r300_detect_tv(pScrn);

If not I may just disable tv-load detection by default.
Comment 13 Manish Singh 2007-08-31 14:29:02 UTC
(In reply to comment #12)
> remove these lines:
> 
>      if (IS_R300_VARIANT)
>          return r300_detect_tv(pScrn);

Commenting out those two lines did the trick.
Comment 14 Manish Singh 2007-08-31 15:17:59 UTC
Hmm, after a full reboot, same problem with those lines commented. I had to disable the S-video output manually.
Comment 15 Manish Singh 2007-08-31 15:18:42 UTC
Created attachment 11364 [details]
xrandr --verbose after reboot with driver with 2 lines commented out
Comment 16 Alex Deucher 2007-09-14 15:51:59 UTC

*** This bug has been marked as a duplicate of bug 12165 ***


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.