Bug 38364 - Ignoring invalid EDID block 1 do entire edid is invalid and not just block 1
Summary: Ignoring invalid EDID block 1 do entire edid is invalid and not just block 1
Status: RESOLVED INVALID
Alias: None
Product: DRI
Classification: Unclassified
Component: General (show other bugs)
Version: XOrg git
Hardware: x86-64 (AMD64) All
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-16 03:43 UTC by zaverel
Modified: 2019-10-14 13:20 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description zaverel 2011-06-16 03:43:54 UTC
Hello ,

All is fine except i can't change resolution on my second monitor vga
,tv in fact, (reported as DVI-I-2 ) anymore with my 9400gt.


Now , i'm on :

linux-2.6.39-gentoo-r1
xorg-server-1.10.2
xf86-video-nouveau-0.0.16_pre20110323
libdrm-2.4.25

Errors in dmesg  are:

nouveau 0000:02:00.0: DVI-I-2: Ignoring invalid EDID block 1.
[drm:drm_edid_block_valid] *ERROR* Raw EDID:
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
<3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................




whatever i valid with xrandr is not really do on my tv
although xrandr say it's good , my tv always report 1202x670 50hz

I tried with and without xorg.conf

My last kernel working is linux-2.6.36-gentoo-r6.



If, i tweak drm_edid.c from kernel-2.6.39-gentoo-r1 like this:

--- drm_edid.c	2011-06-10 22:37:36.605848000 +0200
+++ linux/drivers/gpu/drm/drm_edid.c	2011-06-13 13:04:43.136786102 +0200
@@ -292,7 +292,7 @@
 				  block + (valid_extensions + 1) * EDID_LENGTH,
 				  j, EDID_LENGTH))
 				goto out;
-			if (drm_edid_block_valid(block + (valid_extensions + 1) * EDID_LENGTH)) {
+			if (drm_edid_block_valid(block + (valid_extensions + 0) * EDID_LENGTH)) {
 				valid_extensions++;
 				break;
 			}

  that work good  like before but i'm not sure that is safe.

More info in 
http://lists.freedesktop.org/archives/nouveau/2011-June/008548.html

I can post logs here too , just tell me.

See you
Comment 1 Martin Peres 2019-10-14 13:20:03 UTC
Hi,

Freedesktop's Bugzilla instance is EOLed and open bugs are about to be migrated to http://gitlab.freedesktop.org.

To avoid migrating out of date bugs, I am now closing all the bugs that did not see any activity in the past year. If the issue is still happening, please create a new bug in the relevant project at https://gitlab.freedesktop.org/drm (use misc by default).

Sorry about the noise!


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.