Bug 19803 - [HD3870] Blank screen when GDM starts
Summary: [HD3870] Blank screen when GDM starts
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: 7.3 (2007.09)
Hardware: Other Linux (All)
: high normal
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-29 02:15 UTC by Bryce Harrington
Modified: 2009-02-16 17:23 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Xorg.0.log (126.45 KB, patch)
2009-01-29 02:18 UTC, Bryce Harrington
no flags Details | Splinter Review
regdump_good.txt (17.84 KB, text/plain)
2009-01-29 02:19 UTC, Bryce Harrington
no flags Details
regdump_broke.txt (17.85 KB, text/plain)
2009-01-29 02:19 UTC, Bryce Harrington
no flags Details
Wrong colors when changing resolution with gnome-display-properties (957.76 KB, image/jpeg)
2009-01-30 08:06 UTC, Rune K. Svendsen
no flags Details
output of "./avivotool regs all" with working vesa driver (181.61 KB, text/plain)
2009-01-30 09:01 UTC, Rune K. Svendsen
no flags Details
output of "./avivotool regs all" with non-working ati-driver (181.60 KB, text/plain)
2009-01-30 09:03 UTC, Rune K. Svendsen
no flags Details
Output of "./avivotool regs all" while running at working resolution 2048x1536 (181.61 KB, text/plain)
2009-02-01 05:35 UTC, Rune K. Svendsen
no flags Details
Output of "./avivotool regs all" while running at non-working resolution 1024x768 (181.62 KB, text/plain)
2009-02-01 05:36 UTC, Rune K. Svendsen
no flags Details
Output of "xrandr --verbose" using the non-working resolution 1024x768 (14.35 KB, text/plain)
2009-02-01 05:39 UTC, Rune K. Svendsen
no flags Details
register drump with avivotool running the working resolution (2048x1536) (181.62 KB, text/plain)
2009-02-03 07:57 UTC, Rune K. Svendsen
no flags Details
register drump with avivotool running the non-working resolution (blank screen) (1600x1200@85Hz) (181.61 KB, text/plain)
2009-02-03 07:59 UTC, Rune K. Svendsen
no flags Details

Description Bryce Harrington 2009-01-29 02:15:11 UTC
Forwarding this bug from a Ubuntu reporter:
https://bugs.edge.launchpad.net/ubuntu/+source/xserver-xorg-video-ati/+bug/272877

[Problem]
Blank screen during X boot on Radeon HD 3870 in Intrepid (-ati: 1:6.9.0+git20081003.f9826a56-0ubuntu2, xserver 1.5.2)

[Original Report]
When running the Intrepid Alpha 6 Live CD I just get a blank/black screen when GDM starts. I am able to get to a console by pressing Alt+F1, and if I change the driver to "vesa" in xorg.conf and restart GDM, it starts fine and I can log in.

[lspci]
00:00.0 Host bridge [0600]: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller [8086:29c0] (rev 02)
     Subsystem: ABIT Computer Corp. Device [147b:1083]
01:00.0 VGA compatible controller [0300]: ATI Technologies Inc Radeon HD 3870 [1002:9501]
     Subsystem: PC Partner Limited Device [174b:e620]
Comment 1 Bryce Harrington 2009-01-29 02:18:32 UTC
Created attachment 22342 [details] [review]
Xorg.0.log
Comment 2 Bryce Harrington 2009-01-29 02:19:06 UTC
Created attachment 22343 [details]
regdump_good.txt
Comment 3 Bryce Harrington 2009-01-29 02:19:22 UTC
Created attachment 22344 [details]
regdump_broke.txt
Comment 4 Alex Deucher 2009-01-29 06:17:58 UTC
Do any modes besides 2048x1536 work?  Also, the display regs have changes on r5xx and newer hardware so the radeontool output isn't relevant on your chip.  Dave's radeontool package has another utility called avivotool:
./avivotool regs all
You might also want to try the ati driver from git master as I've just reworked that atom modesetting significantly.
Comment 5 Rune K. Svendsen 2009-01-30 08:06:35 UTC
Created attachment 22381 [details]
Wrong colors when changing resolution with gnome-display-properties

When changing resolution with gnome-display-properties this is how it looks. Restarting GDM fixes this.
Comment 6 Rune K. Svendsen 2009-01-30 08:10:41 UTC
(In reply to comment #4)
> Do any modes besides 2048x1536 work?  Also, the display regs have changes on
> r5xx and newer hardware so the radeontool output isn't relevant on your chip. 
> Dave's radeontool package has another utility called avivotool:
> ./avivotool regs all
> You might also want to try the ati driver from git master as I've just reworked
> that atom modesetting significantly.
> 

Hello Alex

When using the ati-driver neither the default mode nor 1600x1200 work, I haven't tried other modes than those two.
Trying to change the resolution using Ubuntu's built-in graphical tool (gnome-display-properties) doesn't work. When I choose a different resolution and press Apply I get corrupted colors (I've attached a picture that shows how it looks). Getting to a console and restarting gdm fixes this issue with corrupted colors. I'm not sure if it's relevant but I figured it could be.

You'll have to guide me on how to compile avivotool from source. I've tried getting the source with git but it contains no README file or anything so I'm a bit lost.

I'm also not sure what or how to compile, as you say, "ati driver from git master". But if you can tell me how to or just give me a link that explains it I'll definitely try it.
Comment 7 Alex Deucher 2009-01-30 08:15:14 UTC
(In reply to comment #6)
> You'll have to guide me on how to compile avivotool from source. I've tried
> getting the source with git but it contains no README file or anything so I'm a
> bit lost.
> 

just run 'make'.  you'll need the libpciaccess-dev package installed.

> I'm also not sure what or how to compile, as you say, "ati driver from git
> master". But if you can tell me how to or just give me a link that explains it
> I'll definitely try it.
> 

http://www.botchco.com/agd5f/?page_id=2
Comment 8 Rune K. Svendsen 2009-01-30 09:01:44 UTC
Created attachment 22382 [details]
output of "./avivotool regs all" with working vesa driver

Output from running the command "./avivotool regs all" as root.
Comment 9 Rune K. Svendsen 2009-01-30 09:03:10 UTC
Created attachment 22383 [details]
output of "./avivotool regs all" with non-working ati-driver
Comment 10 Rune K. Svendsen 2009-01-30 09:11:05 UTC
(In reply to comment #7)
> just run 'make'.  you'll need the libpciaccess-dev package installed.

Aah, that package I was missing. Now it works. I've attached the output from avivotool when using the working (vesa) driver and when using the non-working (ati) driver.

 
> http://www.botchco.com/agd5f/?page_id=2
 

When I compile the newest drivers and restart GDM it works in the highest resolution  (2048x1536@60Hz). I then tried to change the resolution to 1600x1200@85Hz and the symptom described in the bug returned (screen is blank and standby LED goes on (changes from light green to orange)).

Now, when using the ati driver, I don't know how to get back to the 2048x1536 resolution so I can test which other resolutions work. When I restart GDM I keep getting a blank screen with the ati-driver.

I would rather not restart my computer as I'm running a Live CD and I'd need to compile all that I've compiled all over again.

I've tried adding the following line to the "Screen" section in my xorg.conf but it doesn't help:

        DefaultDepth    24
        SubSection "Display"
                Depth           8
                Modes           "2048x1536"
        EndSubSection
        SubSection "Display"
                Depth           16
                Modes           "2048x1536"
        EndSubSection
        SubSection "Display"
                Depth           24
		Modes		"2048x1536"
        EndSubSection(In reply to comment #7)

Comment 11 Bryce Harrington 2009-01-30 13:21:37 UTC
Btw, I pulled a git snapshot of Dave's radeontool package into Ubuntu Jaunty so users should have access to both 'radeontool' and 'avivotool' with that, no building from git needed.

  http://packages.ubuntu.com/jaunty/radeontool

In fact I suspect users on Intrepid and Hardy could probably install the jaunty deb and it may work just fine there too.

I've also added some documentation for this class of bug, with directions on running radeontool and avivotool:

  https://wiki.ubuntu.com/X/Troubleshooting/BlankScreen

Alex, it would be appreciated if you could review this so we can be certain we're giving users accurate directions on troubleshooting this class of bug, so when you see the bug reports they'll be more likely to already have all the info you need.

Comment 12 Alex Deucher 2009-01-31 15:49:29 UTC
That looks great Bryce.  Thanks for putting it together!
Comment 13 Alex Deucher 2009-01-31 15:56:49 UTC
(In reply to comment #10)
> When I compile the newest drivers and restart GDM it works in the highest
> resolution  (2048x1536@60Hz). I then tried to change the resolution to
> 1600x1200@85Hz and the symptom described in the bug returned (screen is blank
> and standby LED goes on (changes from light green to orange)).
> 
> Now, when using the ati driver, I don't know how to get back to the 2048x1536
> resolution so I can test which other resolutions work. When I restart GDM I
> keep getting a blank screen with the ati-driver.
> 
> I would rather not restart my computer as I'm running a Live CD and I'd need to
> compile all that I've compiled all over again.

http://wiki.debian.org/XStrikeForce/HowToRandR12
Comment 14 Rune K. Svendsen 2009-02-01 05:33:14 UTC
(In reply to comment #13)
> 
> http://wiki.debian.org/XStrikeForce/HowToRandR12
> 

After reading that wiki page I tried the following:

Boot an Ubuntu Intrepid Live CD. When the monitor goes blank get to a console by pressing Ctrl+Alt+F1.

Copy the driver radeon_drv.so that I compiled from the git source to where the older radeon_drv.so that is included in Intrepid is located. After doing this GDM starts correctly with the resolution 2048x1536.
While using the functioning radeon driver in this working resolution I run the command "./avivotool regs all" as root and I'm attaching the output of this as the file "regdump_avivotool_good_2048x1536.txt".

After doing this I tried changing the resolution to 1024x768 by running the following command:

   $ xrandr -display :0.0 --output DVI-0 --mode 1024x768

This causes the monitor to go blank and I get to a console by pressing Ctrl+Alt+F1.

From this console I run the command "./avivotool regs all" again to get a dump of the registers running a non-working resolution. I'm attaching the output of this as the file "regdump_avivotool_broke_1024x768.txt".

Now I wish to get back to the working resolution (2048x1536) so I run the exact same command as the above xrandr-command only changing the "mode" option to 2048x1536:

   $ xrandr -display :0.0 --output DVI-0 --mode 2048x1536
   xrandr: Configure crtc 0 failed

I then try running that command again specifying the refresh rate as well, it generates the same output:

   $ xrandr -display :0.0 --output DVI-0 --mode 2048x1536 --rate 60
   xrandr: Configure crtc 0 failed

After running these two commands I ran the command "xrandr --verbose", it still reports the resolution as being 1024x768. I'm attaching the output of this command as "xrand-verbose.txt".

I hope you can get some usablwe information from this, I wasn't quite sure what else to include.


Regards,

Rune
Comment 15 Rune K. Svendsen 2009-02-01 05:35:24 UTC
Created attachment 22436 [details]
Output of "./avivotool regs all" while running at working resolution 2048x1536

Output of "./avivotool regs all" while running at the working resolution 2048x1536 using the "radeon" driver compiled from the git source on 2009-01-30.
Comment 16 Rune K. Svendsen 2009-02-01 05:36:53 UTC
Created attachment 22437 [details]
 Output of "./avivotool regs all" while running at non-working resolution 1024x768

Output of "./avivotool regs all" while running at the non-working resolution 1024x768 using the "radeon" driver compiled from the git source on 2009-01-30.
Comment 17 Rune K. Svendsen 2009-02-01 05:39:34 UTC
Created attachment 22438 [details]
Output of "xrandr --verbose" using the non-working resolution 1024x768

Output of "xrandr --verbose" using the non-working resolution 1024x768 (after trying to change the resolution to 2048x1536 using xrandr which gives the error: "xrandr: Configure crtc 0 failed".
Comment 18 Alex Deucher 2009-02-01 10:58:24 UTC
(In reply to comment #14)

> From this console I run the command "./avivotool regs all" again to get a dump
> of the registers running a non-working resolution. I'm attaching the output of
> this as the file "regdump_avivotool_broke_1024x768.txt".

You can't dump the regs from the console because you are dumping the video state from the video card in console mode rather than in the hi-res mode.
Comment 19 Rune K. Svendsen 2009-02-01 11:22:00 UTC
(In reply to comment #18)
> (In reply to comment #14)
> 
> > From this console I run the command "./avivotool regs all" again to get a dump
> > of the registers running a non-working resolution. I'm attaching the output of
> > this as the file "regdump_avivotool_broke_1024x768.txt".
> 
> You can't dump the regs from the console because you are dumping the video
> state from the video card in console mode rather than in the hi-res mode.
> 

I see. Is there any way to dump the data from the non-working hi-res mode then?
And is there any other info you think could be important in order to solve this?
Comment 20 Rune K. Svendsen 2009-02-03 07:56:56 UTC
I think I was able to get a dump of the registers while the blank screen was being displayed.

I made a script that contains the following:

   #! /bin/sh
   
   ./avivotool regs all > avivotool_regdump_good.txt
   xrandr -display :0.0 --output DVI-0 --mode 1600x1200 --rate 85
   sleep 10
   ./avivotool regs all > avivotool_regdump_broke.txt

I then got GDM running using the radeon-driver I compiled on 2009-01-30 with the working resolution (2048x1536).

I then executed the script and after waiting a bit I got to a console and I could see that the two dump files had been created. I'm attaching them here, I hope they're useful.
Comment 21 Rune K. Svendsen 2009-02-03 07:57:47 UTC
Created attachment 22524 [details]
register drump with avivotool running the working resolution (2048x1536)
Comment 22 Rune K. Svendsen 2009-02-03 07:59:00 UTC
Created attachment 22525 [details]
register drump with avivotool running the non-working resolution (blank screen) (1600x1200@85Hz)
Comment 23 Rune K. Svendsen 2009-02-03 23:33:26 UTC
^
The non-working resolution was 1600x1200@85Hz (not 60 Hz), in case it matters.
Comment 24 Rune K. Svendsen 2009-02-14 04:37:40 UTC
I'm writing a little update here because I just tried compiling the drivers from the newest git source again and now it works!

The only thing that doesn't work is OpenGL, but I'm not sure if it's supposed to, is it supposed to work? If it isn't, then this bug has been solved.

Here's what it says in my Xorg-log file when it loads glx, it seems to be working:


(II) Loading /usr/lib/xorg/modules/extensions//libglx.so
(II) Module glx: vendor="X.Org Foundation"
        compiled for 7.4.0, module version = 1.0.0
        ABI class: X.Org Server Extension, version 1.1
(**) AIGLX enabled
(II) Loading extension GLX


but here's the output of glxinfo:

rune@runescomp:~$ glxinfo
name of display: :0.0
X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  156 (GLX)
  Minor opcode of failed request:  19 (X_GLXQueryServerString)
  Serial number of failed request:  10
  Current serial number in output stream:  10
Comment 25 Rune K. Svendsen 2009-02-14 04:47:34 UTC
Also, xv isn't working. mplayer won't play anything using the xv video output driver and this is the output of xvinfo:

rune@runescomp:~$ xvinfo
X-Video Extension version 2.2
screen #0
 no adaptors present

I would be thrilled to get Xv working (because of the tear-free video). Using fglrx forces me to use the gl output driver which is very slow.
Comment 26 Alex Deucher 2009-02-16 08:48:03 UTC
(In reply to comment #25)
> Also, xv isn't working. mplayer won't play anything using the xv video output
> driver and this is the output of xvinfo:

Xv and EXA are only available on the r6xx-r7xx-support branch and will be merged eventually, however this is beyond the scope of this bug.  If it works well for you now, please close this bug.
Comment 27 Rune K. Svendsen 2009-02-16 13:13:07 UTC
(In reply to comment #26)
> (In reply to comment #25)
> > Also, xv isn't working. mplayer won't play anything using the xv video output
> > driver and this is the output of xvinfo:
> 
> Xv and EXA are only available on the r6xx-r7xx-support branch and will be
> merged eventually, however this is beyond the scope of this bug.  If it works
> well for you now, please close this bug.
> 

OK, I wasn't aware of that. I'm marking the bug as fixed. Thank you for your time.
Comment 28 Bryce Harrington 2009-02-16 17:23:06 UTC
Could someone point to the patch that resolved the issue, so we can include it in Ubuntu?  Otherwise we'll have to wait until the next -ati release/snapshot is merged into Ubuntu.


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.