Linux – How to use the TV as a second display over HDMI on Linux at its native resolution

graphicslinuxmonitors

My TV is a Philips 19PFL4322. It's native resolution is 1440×900 . My laptop's graphics card is a ATI Radeon HD 3650, using the open source radeon driver on X.org server 1.10.

If I connect them via VGA in Linux, or via anything in Windows, it displays correctly at that resolution.

If I connect it via HDMI in Linux, it defaults to a 1024×768 resolution, and GUI tools will only allow me to set it up to 1360×768, all of which look pretty bad on it.

If I force the issue by generating a modeline using cvt 1400 900 and then setting that as the mode using xrandr, I get no output on that monitor.

When connnected via VGA, Linux correctly identifies it as a Philips 19" TV. When connected via HDMI, it misidentifies it as an 18" TV.

How can I get the monitor to display correctly on Linux using HDMI?

EDIT: xrandr output. VGA-0 and HDMI-0 are both my TV, LVDS is my laptop display, 1280×960 which is listed under HDMI-0 is not a valid output for my TV. 1440×900 which isn't listed is a valid output.

Screen 0: minimum 320 x 200, current 2880 x 900, maximum 8192 x 8192
VGA-0 connected 1440x900+1440+0 (normal left inverted right x axis y axis) 410mm x 257mm
   1440x900       59.9*+
   1360x768       59.8  
   1280x720       60.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
LVDS connected 1440x900+0+0 (normal left inverted right x axis y axis) 367mm x 23000mm
   1440x900       60.8*+
   1280x854       59.9  
   1280x800       59.8  
   1280x720       59.9  
   1152x768       59.8  
   1024x768       59.9  
   800x600        59.9  
   848x480        59.7  
   720x480        59.7  
   640x480        59.4  
HDMI-0 connected (normal left inverted right x axis y axis)
   1920x1080i     25.0 +
   1280x960       60.0  
   1360x768       59.8  
   1280x768       59.9  
   1280x720       60.0  
   1024x768       75.1     70.1     60.0  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  

Best Answer

You could try the closed source ATI driver (that is what I eventually did :-( ) But there I had to increase the Virtual resolution in order to get the big screen working.

Section "Screen"
        Identifier "aticonfig-Screen[0]-0"
        Device     "aticonfig-Device[0]-0"
        Monitor    "aticonfig-Monitor[0]-0"
        DefaultDepth     24
        SubSection "Display"
                Viewport   0 0
                Virtual 3046 1200
                Depth     24
        EndSubSection
EndSection

I wanted to have sync to vblank on my HDMI output and I couldn't find any way to do this with the open source drivers. That's why I eventually went to the tainted ones.

Related Question