Alexandre Abraham's website

Resolution problem with Samsung SyncMaster T220 under Linux

The problem

I recently had problems to set up my screen at work. In fact, it is a 22" screen but configuration tools told me that native resolution was 1024x768, which ended up with large icons and blurred fonts.

The problem lies in the EDID (kind of monitor firmware) in some T220 series. The best way to solve your problem is to send back your screen to Samsung so that they can flash and update your firmware, which can be tedious.

You will find on the web many ways to force it into the xorg.conf but this requires to set up some shallow options of your graphics card. On my side, I managed to get additional resolutions but not the real native one (1680x1050).

The solution

The solution is in fact pretty simple: give the right EDID to your graphics card. You can download here the EDID.

The next steps depend on your graphics card brand (no guarantee).

NVidia card

First, determine the name of your screen by typing in your shell:

$ nvidia-xconfig --query-gpu-info

Number of GPUs: 1

GPU #0:
  Name      : Quadro 600
  PCI BusID : PCI:5:0:0

  Number of Display Devices: 1

  Display Device 0 (DFP-0):
      EDID Name             : HP LA2405
      Minimum HorizSync     : 24.000 kHz
      Maximum HorizSync     : 76.000 kHz
      Minimum VertRefresh   : 50 Hz
      Maximum VertRefresh   : 63 Hz
      Maximum PixelClock    : 170.000 MHz
      Maximum Width         : 1920 pixels
      Maximum Height        : 1200 pixels
      Preferred Width       : 1920 pixels
      Preferred Height      : 1200 pixels
      Preferred VertRefresh : 60 Hz
      Physical Width        : 520 mm
      Physical Height       : 320 mm

The name here is DFP-0. Then, as root, update your xorg.conf and add into the Device section (Modify DFP-0 by the device identifier of your card):

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

ATI card with proprietary drivers (thanks to Roberto Fraile)

Determine the name of your screen by taking a look at Xorg log file:

$ grep /var/log/Xorg.0.log Output

[    40.921] (II) fglrx(0): Output DFP1 using monitor section
[    40.921] (II) fglrx(0): Output DFP2 has no monitor section
[    40.921] (II) fglrx(0): Output DFP3 has no monitor section
[    40.921] (II) fglrx(0): Output DFP4 has no monitor section
[    40.921] (II) fglrx(0): Output CRT1 has no monitor section
[    40.921] (II) fglrx(0): Output CRT2 has no monitor section
[    40.923] (II) fglrx(0): Output DFP1 disconnected
[    40.923] (II) fglrx(0): Output DFP2 disconnected
[    40.923] (II) fglrx(0): Output DFP3 disconnected
[    40.923] (II) fglrx(0): Output DFP4 disconnected
[    40.923] (II) fglrx(0): Output CRT1 connected
[    40.923] (II) fglrx(0): Output CRT2 disconnected
[    40.923] (II) fglrx(0): Output CRT1 using initial mode 1024x768

The name here is CRT1. Now, copy the EDID in the folder /etc/ati and give it the name of the screen:

$ sudo cp syncmastert220.edid /etc/ati/CRT1.edid


Please mail me if you find out how to make it work with another setting.

Back to blog