Bug 14832

Summary: Corrupt secondary display with xrandr dual screen (Radeon Xpress 200M)
Product: xorg Reporter: Lann Martin <templ>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: 7.3 (2007.09)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
xrandr --prop --verbose
none
Xorg log
none
xorg.conf
none
radeontool: Before first X session
none
radeontool: During first X session
none
radeontool: After first X session
none
radeontool: During second X session none

Description Lann Martin 2008-03-05 08:19:24 UTC
Toshiba Satellite A135 with Radeon Xpress 200M.

LVDS and VGA both work independantly, but if both are enabled (clone or not), the VGA display goes to vertical blue and black blocks.

ATI: 6.7.197
xserver: 1.4.0.90
Comment 1 Lann Martin 2008-03-05 08:19:50 UTC
Created attachment 14860 [details]
xrandr --prop --verbose
Comment 2 Lann Martin 2008-03-05 08:20:27 UTC
Created attachment 14861 [details]
Xorg log
Comment 3 Lann Martin 2008-03-05 08:20:49 UTC
Created attachment 14862 [details]
xorg.conf
Comment 4 Alex Deucher 2008-03-05 15:58:36 UTC
Can you try again with 6.8.0 or preferably ati git master?  If it doesn't work there it's probably a display fifo issue.  I'll see what I can find out.
Comment 5 Lann Martin 2008-03-07 06:43:36 UTC
6.8.0 gave the same effect, although the cursor now shows up as a vertical white line. If the line is supposed to be one pixel wide, then from the width of it the display looks to be set at 640x480, despite xrandr claiming 1024x768.
Comment 6 Lann Martin 2008-03-07 07:01:02 UTC
I just discovered that rebooting fixes the problem until I close X. The second time X starts the problem reappears.
Comment 7 Alex Deucher 2008-03-07 11:40:37 UTC
Can you provide register dumps with radeontool for the first time you start X and the second time?  Please use the version available here (http://gitweb.freedesktop.org/?p=users/airlied/radeontool.git;a=summary).

(as root) ./radeontool regmatch '*'
Comment 8 Lann Martin 2008-03-19 08:22:56 UTC
Created attachment 15297 [details]
radeontool: Before first X session
Comment 9 Lann Martin 2008-03-19 08:23:18 UTC
Created attachment 15298 [details]
radeontool: During first X session
Comment 10 Lann Martin 2008-03-19 08:23:48 UTC
Created attachment 15299 [details]
radeontool: After first X session
Comment 11 Lann Martin 2008-03-19 08:24:27 UTC
Created attachment 15300 [details]
radeontool: During second X session
Comment 12 Alex Deucher 2008-03-20 12:50:05 UTC
Just as I suspected, it looks like the fifo regs:
-RS480_UNK_e38 (0e38)   0x8000021b
-RS480_UNK_e3c (0e3c)   0x000004d2
+RS480_UNK_e38 (0e38)   0x800001b0
+RS480_UNK_e3c (0e3c)   0x0000295c

does the following help (when the screen is corrupt):
radeontool regset RS480_UNK_e38 0x8000021b
radeontool regset RS480_UNK_e3c 0x000004d2

you may want to do a dpms cycle after you change them (xset dpms force off).
Comment 13 Lann Martin 2008-03-21 06:31:26 UTC
No effect. I tried it from both an xterm in the corrupt X session and from the console before running X. 

> does the following help (when the screen is corrupt):
> radeontool regset RS480_UNK_e38 0x8000021b
> radeontool regset RS480_UNK_e3c 0x000004d2
> 
> you may want to do a dpms cycle after you change them (xset dpms force off).
 

Comment 14 Alex Deucher 2008-03-21 13:27:03 UTC
I've just committed some changes that may fix this.  Can you please test ati git master?
Comment 15 Alex Deucher 2008-12-03 01:21:29 UTC
closing due to lack of feedback.

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.