Samsung 900NF DDC problem

Vedran Rodic vrodic at gmail.com
Fri Jun 8 20:35:27 PDT 2007


Hi.

I guess Samsung monitors can be problematic :)

Xorg (latest git) doesn't find any modes for my monitor, it settles
for 1024x768 @60Hz (this the mode for the laptop panel on my X60 that
I'm attaching the monitor to).

get-edid gets my monitor DDC data, but with a clear warning:

The EDID data should not be trusted as the VBE call failed
EDID claims 255 more blocks left
EDID blocks left is wrong.
Your EDID is probably invalid.

get-edid|parse-edid however returns a perfectly valid monitor entry:

        # EDID version 1 revision 2
Section "Monitor"
        # Block type: 2:0 3:fd
        # Block type: 2:0 3:fc
        Identifier "S/M 900NF"
        VendorName "___"
        ModelName "S/M 900NF"
        # Block type: 2:0 3:fd
        HorizSync 30-110
        VertRefresh 50-160
        # Max dot clock (video bandwidth) 240 MHz
        # Block type: 2:0 3:fc
        # Block type: 2:0 3:ff
        # DPMS capabilities: Active off:yes  Suspend:yes  Standby:yes

        Mode    "1280x1024"     # vfreq 85.024Hz, hfreq 91.146kHz
                DotClock        157.500000
                HTimings        1280 1328 1488 1728
                VTimings        1024 1025 1028 1072
                Flags   "+HSync" "+VSync"
        EndMode
        # Block type: 2:0 3:fd
        # Block type: 2:0 3:fc
        # Block type: 2:0 3:ff
EndSection

Windows uses this edid without problems.

I've removed the DDC_checksum check from ./hw/xfree86/ddc/xf86DDC.c,
and now it works with Xorg like a charm. Obviously this "fix" is not
correct, but I'm wondering what to do:

1. Add a quirks mode to the DDC code, or
2. Check if the data in EDID is sane, and use even and checksum isn't correct.

What to do?

Thanks,
Vedran



More information about the xorg mailing list