Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

This problem started when I was on 10.04(September-October) and continued after a fresh install of 10.10.

My problem is that my screen goes black for seconds and comes back with 1024x768 and an "Unknown Monitor" when I try to change it back.

-The kernel is the 2.6.37 RC2. -My Graphics card is an ATI SAPPHIRE X1550 PCI-E with the latest drivers from X-update PPA

sudo dmesg

gives:

[   87.088780] radeon 0000:01:00.0: VGA-1: EDID block 0 invalid.
[   87.088785] [drm:radeon_vga_detect] *ERROR* VGA-1: probed a monitor but no|invalid EDID
[   87.141587] [drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 126
[   87.141592] [drm:drm_edid_block_valid] *ERROR* Raw EDID:
[   87.141595] <3>ee 8b c5 a4 5a 48 9b 25 1a 50 54 bf ef 00 81 80  ....ZH.%.PT.....
[   87.141599] <3>10 10 01 03 68 22 1b 78 ee 8b c5 a4 5a 48 9b 25  ....h".x....ZH.%
[   87.141602] <3>1a 50 54 bf ef 00 81 80 71 4f 01 01 01 01 01 01  .PT.....qO......
[   87.141605] <3>01 01 01 01 01 01 30 2a 00 98 51 00 2a 40 30 70  ......0*..Q.*@0p
[   87.141609] <3>13 00 52 0e 11 00 00 1e 00 00 00 fd 00 38 4c 1e  ..R..........8L.
[   87.141612] <3>52 0e 00 0a 20 20 20 20 20 20 00 00 00 fc 00 43  R...      .....C
[   87.141615] <3>4d 43 20 31 37 0a 20 20 20 20 20 20 00 00 00 ff  MC 17.      ....
[   87.141619] <3>00 30 0a 20 20 20 20 20 20 20 20 20 20 20 00 9d  .0.           ..
[   87.141621] 
[   87.192666] [drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 126
[   87.192670] [drm:drm_edid_block_valid] *ERROR* Raw EDID:
[   87.192673] <3>ee 8b c5 a4 5a 48 9b 25 1a 50 54 bf ef 00 81 80  ....ZH.%.PT.....
[   87.192677] <3>10 10 01 03 68 22 1b 78 ee 8b c5 a4 5a 48 9b 25  ....h".x....ZH.%
[   87.192680] <3>1a 50 54 bf ef 00 81 80 71 4f 01 01 01 01 01 01  .PT.....qO......
[   87.192683] <3>01 01 01 01 01 01 30 2a 00 98 51 00 2a 40 30 70  ......0*..Q.*@0p
[   87.192686] <3>13 00 52 0e 11 00 00 1e 00 00 00 fd 00 38 4c 1e  ..R..........8L.
[   87.192690] <3>52 0e 00 0a 20 20 20 20 20 20 00 00 00 fc 00 43  R...      .....C
[   87.192693] <3>4d 43 20 31 37 0a 20 20 20 20 20 20 00 00 00 ff  MC 17.      ....
[   87.192696] <3>00 30 0a 20 20 20 20 20 20 20 20 20 20 20 00 9d  .0.           ..
[   87.192698] 
[   87.243677] [drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 126
[   87.243682] [drm:drm_edid_block_valid] *ERROR* Raw EDID:
[   87.243685] <3>ee 8b c5 a4 5a 48 9b 25 1a 50 54 bf ef 00 81 80  ....ZH.%.PT.....
[   87.243689] <3>10 10 01 03 68 22 1b 78 ee 8b c5 a4 5a 48 9b 25  ....h".x....ZH.%
[   87.243692] <3>1a 50 54 bf ef 00 81 80 71 4f 01 01 01 01 01 01  .PT.....qO......
[   87.243695] <3>01 01 01 01 01 01 30 2a 00 98 51 00 2a 40 30 70  ......0*..Q.*@0p
[   87.243698] <3>13 00 52 0e 11 00 00 1e 00 00 00 fd 00 38 4c 1e  ..R..........8L.
[   87.243702] <3>52 0e 00 0a 20 20 20 20 20 20 00 00 00 fc 00 43  R...      .....C
[   87.243705] <3>4d 43 20 31 37 0a 20 20 20 20 20 20 00 00 00 ff  MC 17.      ....
[   87.243708] <3>00 30 0a 20 20 20 20 20 20 20 20 20 20 20 00 9d  .0.           ..
[   87.243711] 
[   87.294695] [drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 126
[   87.294699] [drm:drm_edid_block_valid] *ERROR* Raw EDID:
[   87.294702] <3>ee 8b c5 a4 5a 48 9b 25 1a 50 54 bf ef 00 81 80  ....ZH.%.PT.....
[   87.294706] <3>10 10 01 03 68 22 1b 78 ee 8b c5 a4 5a 48 9b 25  ....h".x....ZH.%
[   87.294709] <3>1a 50 54 bf ef 00 81 80 71 4f 01 01 01 01 01 01  .PT.....qO......
[   87.294712] <3>01 01 01 01 01 01 30 2a 00 98 51 00 2a 40 30 70  ......0*..Q.*@0p
[   87.294715] <3>13 00 52 0e 11 00 00 1e 00 00 00 fd 00 38 4c 1e  ..R..........8L.
[   87.294719] <3>52 0e 00 0a 20 20 20 20 20 20 00 00 00 fc 00 43  R...      .....C
[   87.294722] <3>4d 43 20 31 37 0a 20 20 20 20 20 20 00 00 00 ff  MC 17.      ....
[   87.294725] <3>00 30 0a 20 20 20 20 20 20 20 20 20 20 20 00 9d  .0.           ..
[   87.294727] 
[   87.294732] radeon 0000:01:00.0: VGA-1: EDID block 0 invalid.

the ONLY fix available for me is to completely turning off the computer and unplugging it from the power source.

Finally, my computer works fine with other non-Linux OSes.

EDIT1:

It seems that I'm not the only one with this problem, others have it too.

EDIT2:

Why it is trying to read from VGA-1, there's no VGA-1.

EDIT3:

Well, it seems that it was a driver issue, this doesn't happen anymore with r300g, and when it does happen it just correct itself after I launch the 'monitor settings'

It still happens, however, with the r600 driver on a different computer.

share|improve this question
    
What monitor do you have? How is it connected to the PC? –  Bobby Nov 21 '10 at 20:55
    
It says "Fujitsu-Siemens" on the outside, but it has a Chi Mei panel(CMC17). it is connected via the VGA port. –  Reda Lazri Nov 22 '10 at 8:17
add comment

3 Answers

The EDID is a little blob of data the monitor sends¹ over the video cable to the video card. It contains data about the monitor - manufacturer, horizontal & vertical dimensions, and, most importantly, a list of display modes that it supports. The video driver uses this list of modes to determine what resolutions your monitor supports.

Your dmesg log shows errors in the EDID parsing code. Since the EDID data in your dmesg log is stable - it's printing out the same data with the same checksum each time - it looks like your monitor is sending incorrect data.

You might have been using different drivers in Ubuntu 9.10, and you probably weren't using the kernel modesetting drivers then. These kernel drivers handle EDIDs differently to the older userspace X drivers. It's possible that you could work around this problem by using userspace modesetting instead of kernel modesetting. Instructions for how to do that are here.

It's not currently possible to add quirk for your monitor correcting the EDID data, even if you had correct data; this is something that is being worked on in Natty, which will become Ubuntu 11.04.

¹: via DDC, for the technically minded

share|improve this answer
    
Thanks, I will try this solution and see. –  Reda Lazri Nov 22 '10 at 8:40
    
While this solution disables the KMS, the results aren't satisfactory.(text Plymouth, no auto-login...). –  Reda Lazri Nov 23 '10 at 14:14
    
Does it fix the resolution problem? Text plymouth is expected, as you've disabled KMS. Auto-login shouldn't be affected, so there's probably something else happening. –  RAOF Nov 25 '10 at 23:26
add comment

It looks like there is a weird problem with your monitor, it's giving back incorrect garbage instead of a list of resolutions in the EDID EPROM information (this is the table of supported resolutions stored in the monitor). I don't think this is an issue with the driver, it might be a power issue with the monitor and a sign it might be failing.

It might also be a loose connection, the vga cable might be coming out.

Consider testing with a different monitor to see if the problem persists.

share|improve this answer
    
Since the checksum appears to be stable it looks like the monitor's EDID is just wrong, rather than a cable / power issue. –  RAOF Nov 21 '10 at 23:58
    
The problem is that it is trying to read from the wrong port, I just discovered that, the correct port is VGA-0, of course it will get garbage from asking VGA-1 for EDID. –  Reda Lazri Nov 23 '10 at 14:10
add comment
up vote 0 down vote accepted

This was a bug! it is still present in r600 drivers.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.