Hi guys,
I have been plagued with the poor EDID stuff on my toshiba from day one.  
Anyway.  I was looking through the docs and trying to get a better idea of why 
1024x768 was not valid.  The docs point you to running x as follows:

startx -- -verbose 6 -logverbose 6

this resulted in the EDID information in my Xorg log.  Here is the stuff
which was important:

-----snip-----
(--) NVIDIA(0): --- EDID for Nvidia Default Flat Panel (DFP-0) ---
(--) NVIDIA(0): EDID Version                 : 1.3
(--) NVIDIA(0): Manufacturer                 : NVD
(--) NVIDIA(0): Monitor Name                 : Nvidia Default Flat Panel
(--) NVIDIA(0): Product ID                   : 0
(--) NVIDIA(0): 32-bit Serial Number         : 0
(--) NVIDIA(0): Serial Number String         : 
(--) NVIDIA(0): Manufacture Date             : 2002, week 45
(--) NVIDIA(0): DPMS Capabilities            : Standby Suspend Active Off
(--) NVIDIA(0): Prefer first detailed timing : Yes
(--) NVIDIA(0): Supports GTF                 : No
(--) NVIDIA(0): Maximum Image Size           : 320mm x 260mm
(--) NVIDIA(0): Valid HSync Range            : 29 kHz - 49 kHz
(--) NVIDIA(0): Valid VRefresh Range         : 0 Hz - 60 Hz
(--) NVIDIA(0): EDID maximum pixel clock     : 70.0 MHz
(--) NVIDIA(0): 
(--) NVIDIA(0): Detailed Timings:
(--) NVIDIA(0):   969  x 768  @ 60 Hz
(--) NVIDIA(0):     Pixel Clock      : 65.00 MHz
(--) NVIDIA(0):     HRes, HSyncStart : 969, 1048
(--) NVIDIA(0):     HSyncEnd, HTotal : 1184, 1344
(--) NVIDIA(0):     VRes, VSyncStart : 768, 771
(--) NVIDIA(0):     VSyncEnd, VTotal : 777, 806
(--) NVIDIA(0):     H/V Polarity     : -/-
-----snip----

Now the thing I notices was that it was under the impression that the
DFP was 969 pixels.  This was a pain.  It's 1024.  The 1024 was being
reject as it was too big for the DFP.  It also explained why there was a
black line on the right at lower modes (the scale was to 969, missing
the last 55px off.  Here clearly was my EDID problem in evidence.

Now the solving - it's nasty but works for me.  The drive allows for
EDIDs to come from another file:

        Option "CustomEDID" "DFP-0:/etc/X11/edid.bin"

the place to get that EDID file is a dump from nvidia-settings.  Now to
hunt down 969 and set to 1024.   Hexedit for the binary file was used.
969 in Hex = 3C9, 1024 = 400.  So I had to change 3C9 to 400 and I was a
winner.  The edid data from the file is:

(--) NVIDIA(0): Raw EDID bytes:
(--) NVIDIA(0): 
(--) NVIDIA(0):   00 ff ff ff ff ff ff 00  3a c4 00 00 00 00 00 00
(--) NVIDIA(0):   2d 0c 01 03 80 20 1a 00  ea a8 e0 99 57 4b 92 25
(--) NVIDIA(0):   1c 50 54 00 00 00 01 01  01 01 01 01 01 01 01 01
(--) NVIDIA(0):   01 01 01 01 01 01 64 19  c9 77 31 00 26 30 4f 88
(--) NVIDIA(0):   36 00 42 ff 10 00 00 18  00 00 00 fc 00 4e 76 69
(--) NVIDIA(0):   64 69 61 20 44 65 66 61  75 6c 00 00 00 fc 00 74
(--) NVIDIA(0):   20 46 6c 61 74 20 50 61  6e 65 6c 00 00 00 00 fd
(--) NVIDIA(0):   00 00 3c 1d 31 07 00 00  20 20 20 20 20 00 00 06
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0):   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
(--) NVIDIA(0): 
(--) NVIDIA(0): --- End of EDID for Nvidia Default Flat Panel (DFP-0) ---

However the closest match to 3C9 was the C9 in the 4th line.  I upped
that a little to CC, and low and behold it increased the screen size in
the log to a few pixels more.  I upped it to FF and I was at 1023px.  00
back to 640..  booo.  so close.

I had to find that 3.  i messed around with all sorts and diffed the
logs to see what data changed.  Then I finally found which 3 it was.
Just a couple of digits along, not sure why the 77 was skiped, but
chaging that to a 4 and it worked!  I now have a working X and am about
to sort beryl.

So that line now was changed:

(--) NVIDIA(0):   01 01 01 01 01 01 64 19  __c9__ 77 __3__1 00 26 30 4f 88
(--) NVIDIA(0):   01 01 01 01 01 01 64 19  __00__ 77 __4__1 00 26 30 4f 88

Sorry that this is a real long post.  It's just that it's not really a
fix that people can sort unless they know where to look.  Perhaps this
will fix all peoples issues, but I suspect that it may only work for
people with the same specs as me.  My machine is a toshiba satelite 704,
with 1024x768 screen.  I really hope this helps people resolve this
issue, and again sorry for the long post, but Its amazing I managed to
fix it!

I have attached my working edid.bin file for people to try if they're
feeling brave, perhaps it works in all cases...

Thanks

** Attachment added: "Modified EDID.bin dump to correct EDID size data."
   http://launchpadlibrarian.net/8262433/edid-loz.bin

-- 
[nvidia-glx] Resolutions lost on upgrade from Edgy to Feisty 
[nvidia-glx-legacy][nvidia-glx-new]
https://bugs.launchpad.net/bugs/91292
You received this bug notification because you are a member of Ubuntu
Bugs, which is the bug contact for Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to