How to get working dual head on Intel GM965/GL960 under Linux?

8,801

Solution 1

Here's Intel's own tutorial.

Finer points:

  • you'll probably first want to set up virtual screen size

            # This optional entry specifies the virtual screen resolution to be used.
            # If this entry is not present, the virtual screen resolution will be set to
            # accommodate all the valid video modes given in the Modes entry.
            # There is a known issue that DRI doesn't work on pre-965 if maximum is larger than 2048x2048.
            Virtual                 2048 2048
    
  • then you can try setting with xrandr that the "other" screen is RightOf of the primary screen

    xrandr --output VGA --left-of LVDS
    
  • finally you can statically reconfigure it all in xorg.conf. Refer to Intel's tutorial

This worked for me on my 915GM (a.k.a. GMA900).

Rant follows:

By the way, sticking with old Intel's drivers is not a good idea just because you like KDE3.5. They're undergoing a nice rewrite at the moment, with reduced performance, but also with a promise of better capabilities and performance in the future. I remember I had problems with dualhead back in 2008. This is just my personal opinion however.

Also, you may be interested in fact that latest GNOME (at least, latest in Debian) has much nicer support for dualhead displays.

Solution 2

From http://www.ubuntugeek.com/how-to-adjust-screen-resolution-on-ubuntu.html:

echo "xrandr --output DVI1 --auto --right-of LVDS1" >> ~/.xprofile && echo "#" >> ~/.xprofile && chmod u+x ~/.xprofile

[Unverified in 10.04LTS]

Share:
8,801
ganesh
Author by

ganesh

Updated on September 17, 2022

Comments

  • ganesh
    ganesh over 1 year

    I have a pretty old laptop - HP Compaq 6710b, with Intel GM965/GL960 (as lspci reports) graphics.

    In the laptop, I have 15.4", 1680x1050 LCD. I also have stand-alone monitor, LCD, 17", 1280x1024.

    I started to play with config to have external screen usable, but to no avail.

    Searched Ubuntuforums (I'm using kubuntu hardy, because I like KDE 3.5), google, and other places, but I can't seem to find a way to configure it in the way that would work.

    The most common result is that X don't start at all, and just log error about lack of Device section for BusID PCI:0:2:1, which definitely was there (it is not here now, as I stopped experimenting with X as I have to do some work :)

    At the moment my xorg.conf looks like this:

    Section "InputDevice"
            Identifier      "Generic Keyboard"
            Driver          "kbd"
            Option          "XkbRules"      "xorg"
            Option          "XkbModel"      "pc105"
            Option          "XkbLayout"     "pl"
    EndSection
    Section "InputDevice"
            Identifier      "Configured Mouse"
            Driver          "mouse"
            Option          "CorePointer"
    EndSection
    Section "InputDevice"
            Identifier      "Synaptics Touchpad"
            Driver          "synaptics"
            Option          "SendCoreEvents"        "true"
            Option          "Device"                "/dev/psaux"
            Option          "Protocol"              "auto-dev"
            Option          "HorizEdgeScroll"       "0"
    EndSection
    Section "InputDevice"
            Driver          "wacom"
            Identifier      "stylus"
            Option          "Device"        "/dev/input/wacom"
            Option          "Type"          "stylus"
    EndSection
    Section "InputDevice"
            Driver          "wacom"
            Identifier      "eraser"
            Option          "Device"        "/dev/input/wacom"
            Option          "Type"          "eraser"
    EndSection
    Section "InputDevice"
            Driver          "wacom"
            Identifier      "cursor"
            Option          "Device"        "/dev/input/wacom"
            Option          "Type"          "cursor"
    EndSection
    Section "Device"
            Identifier      "Configured Video Device"
    EndSection
    Section "Monitor"
            Identifier      "Configured Monitor"
    EndSection
    Section "Screen"
            Identifier      "Default Screen"
            Monitor         "Configured Monitor"
            Device          "Configured Video Device"
    EndSection
    Section "ServerLayout"
            Identifier      "Default Layout"
            Screen          "Default Screen"
            InputDevice     "Synaptics Touchpad"
            InputDevice     "stylus"        "SendCoreEvents"
            InputDevice     "cursor"        "SendCoreEvents"
            InputDevice     "eraser"        "SendCoreEvents"
    EndSection
    

    My lspci output for graphic card looks like this:

    => lspci  | grep -i graphics
    00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)
    00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)
    

    If I can provide any more info - please let me know, I'll happily comply.

    Basically the question is - what should I have in my xorg.conf (or any other place) to have both screens working, each in its native resolution, and of course - not in "clone" mode.

    After checking Intel Howto, I got this xorg.conf (input devices stripped, as it's not relevant):

    Section "Device"
            Identifier      "Configured Video Device"
            Driver          "intel"
            Option          "monitor-VGA" "mVGA"
            Option          "monitor-LVDS" "mLVDS"
    EndSection
    
    Section "Monitor"
            Identifier      "mVGA"
            Option "PreferredMode" "1280x1024"
            Option "LeftOf" "mLVDS"
    EndSection
    
    Section "Monitor"
            Identifier      "mLVDS"
            Option "PreferredMode" "1680x1050"
    EndSection
    
    Section "Screen"
            Identifier      "Default Screen"
            Monitor         "mLVDS"
            Device          "Configured Video Device"
            SubSection "Display"
                    Depth 24
                    Modes "1680x1050" "1280x1024"
                    Virtual 2960 1050
            EndSubSection
    EndSection
    
    Section "ServerLayout"
            Identifier      "Default Layout"
            Screen          "Default Screen"
            InputDevice     "Synaptics Touchpad"
            InputDevice     "stylus"        "SendCoreEvents"
            InputDevice     "cursor"        "SendCoreEvents"
            InputDevice     "eraser"        "SendCoreEvents"
    EndSection
    

    This works actually pretty good, but after X starts, it sets my external LCD to 1280x1024 - which is great, but for some reasons - sets internal LCD to 1280x800:

    $ xrandr -q
    Screen 0: minimum 320 x 200, current 2560 x 1024, maximum 2960 x 1050
    VGA connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
       1280x1024      60.0*+   75.0     71.9     59.9
       1152x864       75.0     74.8
       1024x768       75.1     70.1     60.0
       832x624        74.6
       800x600        72.2     75.0     60.3     56.2
       640x480        75.0     72.8     66.7     60.0
       720x400        70.1
    LVDS connected 1280x800+1280+0 (normal left inverted right x axis y axis) 331mm x 207mm
       1680x1050      60.6 +
       1280x800       60.0*
       1280x768       60.0
       1024x768       60.0
       800x600        60.3
       640x480        59.9
    TV disconnected (normal left inverted right x axis y axis)
    

    I can then issue:

    xrandr --output LVDS --mode 1680x1050
    

    And it makes my built-in LCD work in native mode, but solution that requires me to manually run a command every time i boot is not optimal. Any idea on how to persuade X to make internal LCD start in its native mode?

    • Admin
      Admin over 14 years
      Have you already tried the xrandr commands?
    • Admin
      Admin over 14 years
      I've seen their usage somewhere, tried 2 commands, and ended up with both screens showing 1280x1024, in clone mode.
  • Admin
    Admin over 14 years
    Thanks for info about tutorial. I'll check it. As for GNOME- sorry, but I can't stand it. Kde 4 is worse (for me), but both of them are way behind kde 3.5 (for me, this is definitely not true for everybody). I can upgrade parts/whole system to newer, as long as I will have kde 3.5 there.
  • Admin
    Admin over 14 years
    Got some success, but it's still not perfect - I updated the description in accordance.
  • Ivan Vučica
    Ivan Vučica over 14 years
    I'm probably babbling nonsense right now, but you could try changing Option "LeftOf" "mLVDS" into Option "RightOf" "mVGA" and appropriately move it into mLVDS's device section. Please post here if it doesn't or does work, and when I'm in Linux I'll look into my Xorg.conf and see what I did there.
  • archery1234
    archery1234 almost 11 years
    I remember having all sorts of issues with the same Intel chipset in older Ubuntu distros and kernels. If you're not a big fan of Gnome or KDE 4, have a look at Xubuntu or Lubuntu. They use the LXDE and XFCE desktops respectively. You can give the ext. monitor a whirl with a live version of either. They're both designed for older hardware (Lubuntu especially). Obviously not a direct solution, apologies.