You are not logged in.

#1 2011-08-24 18:09:30

Dschoordsch
Member
Registered: 2010-07-12
Posts: 6

thinkpad T420 three monitors linux/nvidia optimus

Hello,

I have a thinkpad T420 with a nvidia nvs4200 optimus. It has two video ports, one vga and one displayport. With optimus and windows 7 it should be able to display an two external and the internal display, in sum on three monitors.
In the bios I can switch between integrated, discrete, optimus. With discrete I am able to use two monitors. With optimus enabled, the Intel can't see the displayport.

Now the interesting thing. I installed bumblebee and it works. For curiosity I set it up to use the monitor "DP1", et voila, after running the bumblebee deamon and something with optirun I can see the bumblebee X server on the third monitor connected to the displayport. I can run something on it with "DISPLAY=:8.0 gvim" or even "DISPLAY=:8.0 nvidia-settings". Btw. it uses the same mouse as the first X server.

Now, any ideas how I could setup it for something useful?

EDIT:

Ok, with Xdmx it is possible to span a desktop using all three monitors, but with disabled glx, that means no composite, 3d etc.
Setup to test it, assuming a running bumblebee installation:

pacman -S xterm xorg-server-xdmx
echo "exec /usr/bin/optirun /usr/bin/xterm" > ~/.xinitrc
sudo /etc/rc.d/bumblebee start
startx -- :7

-in xterm run

startx /usr/bin/xfce4-session -- /usr/bin/Xdmx -display :7 -display :8 +xinerama -noglxproxy

Until someone has an idea how to enable glx, this setup is hardly useful.

Gruß, Georg

Last edited by Dschoordsch (2011-08-25 09:27:21)

Offline

#2 2011-09-16 11:23:23

eean
Member
Registered: 2005-06-11
Posts: 5

Re: thinkpad T420 three monitors linux/nvidia optimus

Yea I gave up on 3 monitors with my Thinkpad W510 (so not optimus). The docking station has two DVI ports, so with the built-in monitor that makes three. For some reason "TwinView" only works with two monitors, who could've guessed?!

Right now I have it working with the two external monitors. I tried to get the internal monitor in a separate X (what nvidia-settings calls the more typical X dual monitor setup) but that hasn't worked, in the error-log :
[  4675.495] (WW) NVIDIA(1): There are only 2 heads available, trimming display device list
[  4675.495] (WW) NVIDIA(1):     from "DFP-0" to "".
...I think essentially the 'twinview' Screen monopolizes all the displays and leaves nothing left for the second screen, even though the TwinView screen doesn't use the "DFP-0" monitor.

Offline

#3 2011-09-16 19:45:07

Dschoordsch
Member
Registered: 2010-07-12
Posts: 6

Re: thinkpad T420 three monitors linux/nvidia optimus

You missed my point. Your problem is, that the nvidia card can only manage two displays, because it has only two heads. But if you use optimus enabled, then you have two cards, the cpu integrated intel and the nvidia. In this mode, on my thinkpad the intel is wired to use the internal LVDS1 and external VGA1. I can't use the display port output DP1 in this mode with the intel driver. But the nvidia seems to be wired to the DP1 and possibly to the second digital output port on the dock, because lenovo says it is possible to use up to four displays, three of them external. So running an X on the nvidia with output set to DP1 gives me a third display, but in another X process than the two intel driven screens, therefore I can't span one single desktop over all three monitors, but have two totally seperated ones.

Gruß, Georg

Offline

#4 2011-09-20 21:19:38

fhirschmann
Member
Registered: 2009-01-26
Posts: 5

Re: thinkpad T420 three monitors linux/nvidia optimus

I managed to get 3 monitors working on my T420 with a Lenovo Mini Dock Series 3 Plus. Have a look at my xorg.conf below. Please note that with my T420, the DVI ports on the dock are (probably) hardwired to the nvidia card. The VGA might possibly be, as you said, hardwired to the intel card, whereas the DisplayPort might be hardwired to the nvidia card. So you'd need to power two screens (VGA + internal display) using the intel card and one screen (DP) using the nvidia.

 "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "LG0" 0 0
    Screen      1  "LG1" RightOf "LG0"
    Screen      2  "INT" LeftOf "LG0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
    Option         "Xinerama" "1"
EndSection

Section "Files"
    ModulePath      "/usr/lib/xorg/modules"
    FontPath        "/usr/share/fonts/X11/misc"
    FontPath        "/usr/share/fonts/X11/cyrillic"
    FontPath        "/usr/share/fonts/X11/100dpi/:unscaled"
    FontPath        "/usr/share/fonts/X11/75dpi/:unscaled"
    FontPath        "/usr/share/fonts/X11/Type1"
    FontPath        "/usr/share/fonts/X11/100dpi"
    FontPath        "/usr/share/fonts/X11/75dpi"
    FontPath        "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
    FontPath        "built-ins"
EndSection

Section "Module"
    Load           "record"
    Load           "extmod"
    Load           "dbe"
    Load           "glx"
    Load           "dri2"
    Load           "dri"
EndSection

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/input/mice"
    Option         "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
    Identifier     "LG0"
    VendorName     "LG"
    ModelName      "LG Electronics L227W"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 75.0
EndSection

Section "Monitor"
    Identifier     "LG1"
    VendorName     "LG"
    ModelName      "LG Electronics L227W"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 75.0
EndSection

Section "Monitor"
    Identifier     "INT"
    VendorName     "Unknown"
    ModelName      "Internal"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 75.0
EndSection

Section "Device"
    Identifier     "intel0"
    Driver         "intel"
    Option         "XvMC" "true"
    Option         "UseEvents" "true"
    Option         "AccelMethod" "UXA"
    BusID          "PCI:0:2:0"
EndSection

Section "Device"
    Identifier     "nvidia0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "NVS 4200M"
    BusID          "PCI:1:0:0"
    Screen         0
EndSection

Section "Device"
    Identifier     "nvidia1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "NVS 4200M"
    BusID          "PCI:1:0:0"
    Screen         1
EndSection

Section "Screen"
    Identifier     "LG0"
    Device         "nvidia0"
    Monitor        "LG0"
    DefaultDepth    24
    Option         "TwinView" "0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "LG1"
    Device         "nvidia1"
    Monitor        "LG1"
    DefaultDepth    24
    Option         "TwinView" "0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "INT"
    Device         "intel"
    Monitor        "INT"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Last edited by fhirschmann (2011-09-20 21:46:31)

Offline

#5 2011-09-29 12:25:00

Dschoordsch
Member
Registered: 2010-07-12
Posts: 6

Re: thinkpad T420 three monitors linux/nvidia optimus

How did you install the nvidia driver? From the bumblebee package, or did you use the original one? Does 3d acceleration work?

Gruß, Georg

Offline

#6 2011-09-29 15:39:42

fhirschmann
Member
Registered: 2009-01-26
Posts: 5

Re: thinkpad T420 three monitors linux/nvidia optimus

I used aptitude on Debian Sid to install the nvidia and intel drivers. 3d acceleration (and vdpau) works, and I'm not using bumblebee at all. However, I need to switch the libGL links using update-alternatives depending on which card I want 3d acceleration on. I'm not quite sure if arch provides such a framework or simply overwrites the libraries depending on which driver you installed.

Offline

#7 2011-10-05 10:15:07

Dschoordsch
Member
Registered: 2010-07-12
Posts: 6

Re: thinkpad T420 three monitors linux/nvidia optimus

So you can't use a compositing window manager like compiz?

In archlinux libglx will be overwritten if both packages intel-dri and nvidia-utils are installed, but this is just a packaging problem. It should somehow be possible to render everything with nvidia and display with intel using the bumblebee setup.

Gruß, Georg

Offline

#8 2011-10-05 23:32:58

fhirschmann
Member
Registered: 2009-01-26
Posts: 5

Re: thinkpad T420 three monitors linux/nvidia optimus

I'm not using a compositing window manager (xmonad), but it shouldn't be possible to use one using my setup since there is no hardware acceleration on one of the three screens. Maybe you can convince the xserver to use different glx libraries depending on the screen. Unfortunately, I have not yet found an option to do just that. If you manage to render on the nvidia card and output on the intel card, please do let me know.

Offline

#9 2011-10-06 13:42:26

fhirschmann
Member
Registered: 2009-01-26
Posts: 5

Re: thinkpad T420 three monitors linux/nvidia optimus

I managed to get glx working on all screens. However, the downside is that there will not be any xinerama(-like) support since I'm using two xservers.

You basically need two configuration files -- one for the intel card and one for the nvidia card. The intel configuration should contain the following (depending on your distribution):

Section "Files"
	ModulePath   "/usr/lib/xorg/modules/extensions"
	ModulePath   "/usr/lib/xorg/modules"
	FontPath     "built-ins"
EndSection

whereas the nvidia configuration needs to include

Section "Files"
	ModulePath   "/usr/lib/nvidia"
	ModulePath   "/usr/lib/xorg/modules"
	FontPath     "built-ins"
EndSection

Then you can basically start off with either x configuration and start a second xserver using

export LD_LIBRARY_PATH=/usr/lib/mesa-diverted
X -sharevts -novtswitch -config xorg.conf.theother :1

I used this technique to have a multiseat x environment, meaning that I'll use the thinkpad keyboard and touchpad for the intel screen and an external usb keyboard/mouse attached to the dock for the nvidia screens (which are tied together using twinview, a xinerama-like feature by nvidia).

If you don't have or want a second mouse/keyboard pair, you could use something like synergy (http://synergy-foss.org/), which will give you a xinerama like experience (however, you cannot move windows between the xservers of course)

Offline

#10 2012-05-07 15:48:07

mirci
Member
Registered: 2010-09-25
Posts: 7

Re: thinkpad T420 three monitors linux/nvidia optimus

Sorry for bumping this sort of old thread, but I guess it's appropriate place.

Consider below Lenovo T420 configurations.

1) T420, i5 + Intel HD3000
2) T420, i7 + Intel HD3000, Nvidia NVS4200M

With option 1) every output on laptop or docking station is managed by intel card, so I can connect 2 external monitors as dual head setup, (LVDS is turned off, as the graphic card is dual head there can be only 2 active outputs at a time).

A) With option 2) and BIOS settings "integrated" - does it mean that the Nvidia card is completely disabled and I have setup like with the option 1) ?
B) With option 2) and BIOS settings "discrete" - does it mean that the Nvidia card is wired to all outputs ?
C) With option 2) and BIOS settings "optimus" - in this case the outputs are probably split up somehow (like indicated in the previous posts) so that in total 4 outputs can be driven at the same time.

The thing is I'm considering buying T420 laptop and I'm trying to figure out if it is worth to go with the 2) but want to make sure that in case of troubles to setup 2 external monitors I can "revert" to using the A) setting, use just intel card and xrandr.

Any help on clarification is appreciated wink

Last edited by mirci (2012-05-07 15:51:38)

Offline

#11 2012-05-07 16:43:27

Dschoordsch
Member
Registered: 2010-07-12
Posts: 6

Re: thinkpad T420 three monitors linux/nvidia optimus

Yes, you are right. When only one GPU is used (discrete or integrated) you can only use two monitors. Setting integrated seems to turn off nvidia completely, it can't be found with lspci, so I guess it doesn't use any power.
When you use optimus it is possible to use three monitors including the LVDS out of the box. With docking station 4 monitors should be possible, the possible combinations are listed on the lenovo page somewhere.
You can use intel with xrandr if optimus is enabled, too, if you just don't plug a monitor in the display port. I have the nvidia monitor section permanently, so I can just restart Xorg if I attach a monitor to the display port.

Gruß, Georg

Offline

#12 2012-05-10 05:39:16

mirci
Member
Registered: 2010-09-25
Posts: 7

Re: thinkpad T420 three monitors linux/nvidia optimus

Thanks, for clarification.

My last concern is about the Intel HD3000 card and it's ability to drive 2 external monitors at the same time on full resolution.
Consider two monitors (1920x1200) that is 3840x1200 virtual screen.
Do you happen to know if the Intel HD3000 can handle it?

Thanks

Offline

Board footer

Powered by FluxBB