Bug 44811

Summary: missing dual display (single only) after switching to KMS driver on radeon firegl x1 (R300)
Product: xorg Reporter: Chesti <chesti>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED INVALID QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: chesti, hramrach
Version: unspecified   
Hardware: IA64 (Itanium)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
logs from x start with and without KMS
none
radeontool regs while no kms and dual screen working
none
radeontool regs while kms working and second display is not
none
radeontool regmatch while no kms and both displays working
none
radeontool regmatch while kms is working and second display is not
none
xrandr verbose for kms non standard 1024x768 mode - one display works only
none
xrandr verbose for kms 1680x1050 normal resolution - one display works only
none
xrandr verbose for non kms 1680x1050 both display working
none
regmatch results in 0x53 mode
none
regmatch results in 0x54 mode none

Description Chesti 2012-01-15 10:44:27 UTC
Created attachment 55608 [details]
logs from x start with and without KMS

I use :

Linux zx6000 2.6.32-5-mckinley #1 SMP Mon Oct 3 06:04:14 UTC 2011 ia64 GNU/Linux

and :

xrandr program version       1.3.3
Server reports RandR version 1.3

and :

ii  xorg                                   1:7.6+8~bpo60+1                   X.Org X Window System
ii  xorg-docs                              1:1.5-1                           Miscellaneous documentation for the X.org X Window System
ii  xorg-docs-core                         1:1.5-1                           Core documentation for the X.org X Window System
ii  xserver-xorg                           1:7.6+8~bpo60+1                   X.Org X server
ii  xserver-xorg-core                      2:1.10.4-1~bpo60+1                Xorg X server - core server
ii  xserver-xorg-input-all                 1:7.5+8+squeeze1                  the X.Org X server -- input driver metapackage
ii  xserver-xorg-input-evdev               1:2.6.0-2~bpo60+1                 X.Org X server -- evdev input driver
ii  xserver-xorg-input-mouse               1:1.7.1-1~bpo60+1                 X.Org X server -- mouse input driver
ii  xserver-xorg-input-synaptics           1.4.1-1~bpo60+1                   Synaptics TouchPad driver for X.Org server
ii  xserver-xorg-input-wacom               0.10.10+20110203-1~bpo60+1        X.Org X server -- Wacom input driver
ii  xserver-xorg-video-all                 1:7.6+8~bpo60+1                   X.Org X server -- output driver metapackage
ii  xserver-xorg-video-apm                 1:1.2.3-2~bpo60+1                 X.Org X server -- APM display driver
ii  xserver-xorg-video-ark                 1:0.7.3-2~bpo60+1                 X.Org X server -- ark display driver
ii  xserver-xorg-video-ati                 1:6.14.2-1~bpo60+1                X.Org X server -- AMD/ATI display driver wrapper
ii  xserver-xorg-video-chips               1:1.2.4-1~bpo60+1                 X.Org X server -- Chips display driver
ii  xserver-xorg-video-cirrus              1:1.3.2-4~bpo60+1                 X.Org X server -- Cirrus display driver
ii  xserver-xorg-video-fbdev               1:0.4.2-4~bpo60+1                 X.Org X server -- fbdev display driver
ii  xserver-xorg-video-i128                1:1.3.4-2~bpo60+1                 X.Org X server -- i128 display driver
ii  xserver-xorg-video-i740                1:1.3.2-4~bpo60+1                 X.Org X server -- i740 display driver
ii  xserver-xorg-video-mach64              6.9.0-1~bpo60+1                   X.Org X server -- ATI Mach64 display driver
ii  xserver-xorg-video-mga                 1:1.4.13.dfsg-3~bpo60+1           X.Org X server -- MGA display driver
ii  xserver-xorg-video-neomagic            1:1.2.5-2~bpo60+1                 X.Org X server -- Neomagic display driver
ii  xserver-xorg-video-r128                6.8.1-5~bpo60+1                   X.Org X server -- ATI r128 display driver
ii  xserver-xorg-video-radeon              1:6.14.2-1~bpo60+1                X.Org X server -- AMD/ATI Radeon display driver
ii  xserver-xorg-video-rendition           1:4.2.4-2~bpo60+1                 X.Org X server -- Rendition display driver
ii  xserver-xorg-video-s3                  1:0.6.3-4~bpo60+1                 X.Org X server -- legacy S3 display driver
ii  xserver-xorg-video-s3virge             1:1.10.4-4~bpo60+1                X.Org X server -- S3 ViRGE display driver
ii  xserver-xorg-video-savage              1:2.3.2-3~bpo60+1                 X.Org X server -- Savage display driver
ii  xserver-xorg-video-siliconmotion       1:1.7.5-1~bpo60+1                 X.Org X server -- SiliconMotion display driver
ii  xserver-xorg-video-sis                 1:0.10.3-3~bpo60+1                X.Org X server -- SiS display driver
ii  xserver-xorg-video-tdfx                1:1.4.3-4~bpo60+1                 X.Org X server -- tdfx display driver
ii  xserver-xorg-video-trident             1:1.3.4-2~bpo60+1                 X.Org X server -- Trident display driver
ii  xserver-xorg-video-tseng               1:1.2.4-2~bpo60+1                 X.Org X server -- Tseng display driver
ii  xserver-xorg-video-vesa                1:2.3.0-7~bpo60+1                 X.Org X server -- VESA display driver

and : 

Screen 0: minimum 320 x 200, current 3360 x 1050, maximum 4096 x 4096
DVI-0 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 474mm x 296mm
   1680x1050      59.9*+   60.0  
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  
DVI-1 connected 1680x1050+1680+0 (normal left inverted right x axis y axis) 474mm x 296mm
   1680x1050      59.9*+   60.0  
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  

and lspci:

80:00.0 VGA compatible controller: ATI Technologies Inc Radeon R300 NG [FireGL X1] (rev 80)
80:00.1 Display controller: ATI Technologies Inc Radeon R300 [FireGL X1] (Secondary) (rev 80)


Decription:

I use dual display. I have two identical DELL P2210 monitors connected using DVI. When i switch to KMS driver my second display doesn`t work i get blank screen. I use HP ZX6000 Workstation with AGP Radeon FireGL X1 graphic (dual head).
xrandr --output SECOND_DISPLAY -off
xrandr --output SECOND_DISPLAY -auto
doesn`t help
neither doing anyting like : 
xrandr --output FIRST_DISPLAY --auto --output SECOND_DISPLAY --auto --rightof FIRST_DISPLAY
Problem seems to be related with KMS driver only.
Comment 1 Dave Airlie 2012-01-17 02:40:27 UTC
don't suppose you could try a newer upstream kernel?

I see you are on IA64, not sure how much testing KMS has seen on IA64.
Comment 2 Chesti 2012-01-17 04:07:44 UTC
Ok i can try another kernel that`s no problem - this one is just the default debian kernel. 

Do you have a custom one on mind or just the latest (3.2.1 now)?

I try to help as much as i`m able to :)
Comment 3 Chesti 2012-01-17 04:19:34 UTC
I attach some info till the end of the week (i try shorter).
Comment 4 Chesti 2012-01-27 03:47:21 UTC
My tries compiling actual kernel or using debian testing - whezzy - with 3.x kernel give the same result hang during boot. I`m investigating it but that mean that i have nothing more in this topic about behavior on other kernels. Please continue without this if possible.
Comment 5 Alex Deucher 2012-01-27 07:09:54 UTC
(In reply to comment #4)
> My tries compiling actual kernel or using debian testing - whezzy - with 3.x
> kernel give the same result hang during boot. I`m investigating it but that
> mean that i have nothing more in this topic about behavior on other kernels.
> Please continue without this if possible.

Make sure you have the ucode for the GPU available in your initrd if you are using one or if you compiled the radeon driver into the kernel, you'll need to include the ucode as well.
Comment 6 Alex Deucher 2012-01-27 07:24:17 UTC
Please dump the display registers using radeonreg (http://cgit.freedesktop.org/~airlied/radeontool/) in both the working and non-working cases.

in working case (as root)
./radeonreg regs radeon > working.regs

in broken case (as root)
./radeonreg regs radeon > broken.regs

And attach the outputs to this bug.

Alternatively, you can use radeontool to dump the regs:

radeontool regmatch '*' > working.regs

etc.
Comment 7 Chesti 2012-01-29 02:36:04 UTC
Created attachment 56278 [details]
radeontool regs while no kms and dual screen working
Comment 8 Chesti 2012-01-29 02:36:49 UTC
Created attachment 56279 [details]
radeontool regs while kms working and second display is not
Comment 9 Chesti 2012-01-29 02:39:55 UTC
Created attachment 56281 [details]
radeontool regmatch while no kms and both displays working
Comment 10 Chesti 2012-01-29 02:49:22 UTC
Created attachment 56283 [details]
radeontool regmatch while kms is working and second display is not

during time when i grabbed this data for kms configration and no kms i set xrandr to dual screen display, in both cases i could move mouse on the other screen but in kms case i dont see that because my second monitor is off
Comment 11 Alex Deucher 2012-01-30 07:07:55 UTC
Can you attach the output of xrandr --verbose with both kms and ums?
Comment 12 Alex Deucher 2012-01-30 07:32:25 UTC
There are two 1680x1050 modes in the EDID:

1. 1680x1050 @ 146.25 Mhz
[   117.660] (II) RADEON(0): #2: hsize: 1680  vsize 1050  refresh: 60  vid: 179
[   117.661] (II) RADEON(0): Modeline "1680x1050"x60.0  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync (65.3 kHz)

2. 1680x1050 @ 119.00 Mhz
[   117.660] (II) RADEON(0): clock: 119.0 MHz   Image Size:  474 x 296 mm
[   117.660] (II) RADEON(0): h_active: 1680  h_sync: 1728  h_sync_end 1760 h_blank_end 1840 h_border: 0
[   117.660] (II) RADEON(0): v_active: 1050  v_sync: 1053  v_sync_end 1059 v_blanking: 1080 v_border: 0
[   117.661] (II) RADEON(0): Modeline "1680x1050"x59.9  119.00  1680 1728 1760 1840  1050 1053 1059 1080 +hsync -vsync (64.7 kHz)

The 119Mhz mode is the monitor's preferred mode.  The problem seems to be the monitor doesn't seem to care for the 146.25Mhz mode while the 119Mhz mode works fine.  For some reason UMS doesn't add the 146.25Mhz mode (possibly the xserver doesn't add 1680x1050 modes in the standard timing block); with KMS, the kernel parses the EDID and adds the 146.25Mhz mode.

Does switching to a different mode on the problematic display fix it?
Comment 13 Chesti 2012-01-31 11:57:41 UTC
Created attachment 56405 [details] [review]
xrandr verbose for kms non standard 1024x768 mode - one display works only

xrandr verbose for kms non standard 1024x768 mode - one display works only - i tried that change of resolution can help with something i dont see change here
Comment 14 Chesti 2012-01-31 12:08:24 UTC
Created attachment 56406 [details] [review]
xrandr verbose for kms 1680x1050 normal resolution - one display works only
Comment 15 Chesti 2012-01-31 12:29:59 UTC
Created attachment 56409 [details] [review]
xrandr verbose for non kms 1680x1050 both display working
Comment 16 Chesti 2012-02-17 11:02:16 UTC
Any additional help i can give?
Comment 17 Chesti 2012-03-19 06:24:06 UTC
Ping?
Comment 18 Alex Deucher 2012-03-19 06:47:16 UTC
Does switching between the 1680x1050 modes on the problematic monitor help?

xrandr --output DVI-0 --mode 0x54
xrandr --output DVI-0 --mode 0x53

or

xrandr --output DVI-1 --mode 0x54
xrandr --output DVI-1 --mode 0x53
Comment 19 Chesti 2012-03-19 06:52:51 UTC
> There are two 1680x1050 modes in the EDID:
>
> 1. 1680x1050 @ 146.25 Mhz
> 2. 1680x1050 @ 119.00 Mhz

This modes are that what was mentioned before? This are both this modes(0x53,0x54)? As far i remember that changing it didn`t give any results but i`ll check again today.
Comment 20 Alex Deucher 2012-03-19 07:08:06 UTC
(In reply to comment #19)
> > There are two 1680x1050 modes in the EDID:
> >
> > 1. 1680x1050 @ 146.25 Mhz
> > 2. 1680x1050 @ 119.00 Mhz
> 
> This modes are that what was mentioned before? This are both this
> modes(0x53,0x54)? As far i remember that changing it didn`t give any results
> but i`ll check again today.

yes.  The only difference in the register dump was the mode timing.  KMS was using the 146.25 Mhz mode while UMS was using the 119.00 Mhz mode.  If switching doesn't help can you dump the registers with KMS for both the 146.25 Mhz mode and the 119.00 Mhz modes to make sure that the changes are actually getting to the kernel driver?
Comment 21 Chesti 2012-03-19 07:11:12 UTC
ok i`ll check this thanks, i attach comment what i get as soon as i will be at home
Comment 22 Chesti 2012-05-17 09:53:09 UTC
Created attachment 61751 [details]
regmatch results in 0x53 mode
Comment 23 Chesti 2012-05-17 09:53:43 UTC
Created attachment 61752 [details]
regmatch results in 0x54 mode
Comment 24 Chesti 2012-05-17 09:55:29 UTC
> > There are two 1680x1050 modes in the EDID:
> >
> > 1. 1680x1050 @ 146.25 Mhz
> > 2. 1680x1050 @ 119.00 Mhz

There are no difference between both modes.
In both only first monitor is active and second is in no signal state.
Comment 25 Adam Jackson 2018-06-12 19:06:59 UTC
Mass closure: This bug has been untouched for more than six years, and is not
obviously still valid. Please reopen this bug or file a new report if you continue to experience issues with current releases.

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.