#689266 grub-pc: graphics mode sends VGA signal out of range on ATI Rage 128 Pro Ultra TR

Package:
grub-pc
Source:
grub2
Description:
GRand Unified Bootloader, version 2 (PC/BIOS version)
Submitter:
Daniel Kahn Gillmor
Date:
2015-03-19 13:54:13 UTC
Severity:
important
#689266#5
Date:
2012-10-01 00:06:43 UTC
From:
To:
Control: notfound -1 1.99-23

On grub-pc 1.99-23, this machine boots with a graphical grub menu just
fine.

Upon upgrading to 2.00-7, the attached monitor (a Norwood Micro M17CBA
LCD flatpanel connected via VGA) shows "signal out of range".  if i
have set GRUB_GFXPAYLOAD_LINUX=keep in /etc/default/grub, this
persists until the display manager takes over, and puts the video in a
reasonable range.

A functional workaround is to set GRUB_TERMINAL=console in
/etc/default/grub, but most users probably won't know to do this, and
if they're used to a graphical boot sequence, they might wonder why
their monitor isn't showing anything for a while after boot.  They
might even think that the system upgrade failed entirely, which would
be bad.

Some diagnostic info that i think might be relevant (i'm happy to
gather more if it would be useful -- please let me know what you'd
like):

Once booted, i can see what the X server believes about the graphics
card/monitor combination:

/var/log/Xorg.0.log shows:

[    38.473] (II) R128(0): Supported established timings:
[    38.473] (II) R128(0): 720x400@70Hz
[    38.473] (II) R128(0): 640x480@60Hz
[    38.473] (II) R128(0): 640x480@72Hz
[    38.473] (II) R128(0): 640x480@75Hz
[    38.473] (II) R128(0): 800x600@56Hz
[    38.473] (II) R128(0): 800x600@60Hz
[    38.473] (II) R128(0): 800x600@72Hz
[    38.473] (II) R128(0): 800x600@75Hz
[    38.473] (II) R128(0): 1024x768@60Hz
[    38.473] (II) R128(0): 1024x768@70Hz
[    38.473] (II) R128(0): 1024x768@75Hz
[    38.473] (II) R128(0): 1280x1024@75Hz
[    38.473] (II) R128(0): Manufacturer's mask: 0
[    38.473] (II) R128(0): Supported standard timings:
[    38.473] (II) R128(0): #0: hsize: 1280  vsize 1024  refresh: 60  vid: 32897
[    38.473] (II) R128(0): Supported detailed timing:
[    38.473] (II) R128(0): clock: 108.0 MHz   Image Size:  338 x 270 mm
[    38.473] (II) R128(0): h_active: 1280  h_sync: 1328  h_sync_end 1440 h_blank_end 1688 h_border: 0
[    38.473] (II) R128(0): v_active: 1024  v_sync: 1025  v_sync_end 1028 v_blanking: 1066 v_border: 0
[    38.473] (II) R128(0):
[    38.473] (II) R128(0):
[    38.473] (II) R128(0): Monitor name:
[    38.473] (II) R128(0): EDID (in hex):
[    38.473] (II) R128(0): 	00ffffffffffff003aac010001000000
[    38.473] (II) R128(0): 	200c010308221b00ca0b329c5a4d8c26
[    38.474] (II) R128(0): 	204e57afcf0081800101010101010101
[    38.474] (II) R128(0): 	010101010101302a009851002a403070
[    38.474] (II) R128(0): 	1300520e1100001e000000fe000a2020
[    38.474] (II) R128(0): 	20202020202020202020000000fe000a
[    38.474] (II) R128(0): 	202020202020202020202020000000fc
[    38.474] (II) R128(0): 	000a20202020202020202020202000d6
[    38.474] (II) R128(0): EDID vendor "NUL", prod id 1
[    38.509] (II) R128(0): Printing DDC gathered Modelines:
[    38.509] (II) R128(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz eP)
[    38.509] (II) R128(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz e)
[    38.509] (II) R128(0): Modeline "800x600"x0.0   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync (35.2 kHz e)
[    38.509] (II) R128(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz e)
[    38.509] (II) R128(0): Modeline "640x480"x0.0   31.50  640 664 704 832  480 489 492 520 -hsync -vsync (37.9 kHz e)
[    38.509] (II) R128(0): Modeline "640x480"x0.0   25.18  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz e)
[    38.509] (II) R128(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz e)
[    38.509] (II) R128(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz e)
[    38.509] (II) R128(0): Modeline "1024x768"x0.0   78.75  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.0 kHz e)
[    38.509] (II) R128(0): Modeline "1024x768"x0.0   75.00  1024 1048 1184 1328  768 771 777 806 -hsync -vsync (56.5 kHz e)
[    38.509] (II) R128(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz e)
[    38.509] (II) R128(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz e)
[    38.509] (II) R128(0): Modeline "800x600"x0.0   50.00  800 856 976 1040  600 637 643 666 +hsync +vsync (48.1 kHz e)



I'm running with the following hardware:

dkg@tiny-monster:/tmp$ lspci
00:00.0 Host bridge: Intel Corporation 82845 845 [Brookdale] Chipset Host Bridge (rev 03)
00:01.0 PCI bridge: Intel Corporation 82845 845 [Brookdale] Chipset AGP Bridge (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 12)
00:1f.0 ISA bridge: Intel Corporation 82801BA ISA Bridge (LPC) (rev 12)
00:1f.1 IDE interface: Intel Corporation 82801BA IDE U100 Controller (rev 12)
00:1f.2 USB controller: Intel Corporation 82801BA/BAM USB Controller #1 (rev 12)
00:1f.4 USB controller: Intel Corporation 82801BA/BAM USB Controller #1 (rev 12)
00:1f.5 Multimedia audio controller: Intel Corporation 82801BA/BAM AC'97 Audio Controller (rev 12)
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Rage 128 Pro Ultra TR
02:08.0 Ethernet controller: Intel Corporation 82801BA/BAM/CA/CAM Ethernet Controller (rev 03)
dkg@tiny-monster:/tmp$

#689266#10
Date:
2012-10-29 03:05:51 UTC
From:
To:
I can not run cd-install disk with debian 6.0.6 and debian 7.0 testing on Rage 128 Pro 32M SDR video agp card
#689266#15
Date:
2014-09-30 15:12:27 UTC
From:
To:
I have the exact same symptoms with an ATI Rage XL card.
#689266#20
Date:
2015-01-23 10:58:35 UTC
From:
To:
I did a dist-upgrade from wheezy->jessie

On reboot, my monitor displayed the error about signal out of range
90khz/60hz

The previous grub was fine.

This gives a bad impression of the upgrade so I've raised the severity
of the issue.  People with existing systems should not see something
like this so early in the boot into jessie.

#689266#29
Date:
2015-02-25 20:38:18 UTC
From:
To:
The biggest change between grub 1.99 and 2.00 that I think could be an
issue is taht it started reading EDID data from the monitor and using
that to try and select the mode to use.  So if 1.99 worked with the
default mode, and 2.00 no longer does, quite likely there is something
wrong with reading EDID data on the old ATI cards or at least the way
grub does it that makes it try to use an invalid mode.

If the 90khz/60hz is in fact correct, that would be a resolution of 1440
vertical at 60Hz refresh.  Certainly a resolution that exists on some
screens, but doesn't seem to be one supported by that particular monitor.

I am surprised I see no indication that anyone has ever reported this
bug to the grub developers.  Perhaps they would know how to debug it.

#689266#34
Date:
2015-03-19 07:52:02 UTC
From:
To:
Control: tags -1 important

Hi,

As much as I would appreciate this being solved in Jessie, I have now
documented Daniel's (i.e. dkg's) work around in the release-notes under
"Issues to be aware of for Jessie".  Note that the website might be 4-6
hours before it generates the new version, so you might not see it yet
in the live version.

Should you find/device a patch for it in time for Jessie, I am happy to
review it from an RT PoV.

Thanks,
~Niels

#689266#41
Date:
2015-03-19 13:52:59 UTC
From:
To:
Well I have no way to test or try anything, I was just looking through the
code changes to see if there was anything that looked as a possibility.

Having a workaround for the few affected cards is certainly needed.
Not having a graphical boot menu is not the end of the world after all.