Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have installed Ubuntu 14.04 on this Lenovo ThinkPad W540 laptop, and everything appears to be working ok by itself. Today I received my docking station to which I intended to hook up 2 external monitors (worked fine with a Dell on a Dell docking station in Linux Mint 14). One monitor is hooked up via DVI, the other is hooked up via DVI -> HDMI adapter.

I found Dock with dual external DVI monitors with Intel + Nvidia Optimus?, but this laptop has no BIOS setting to disable Optimus. Therefore I installed bumblebee + nVidia propietary drivers.

When I try to configure the Displays, only one of the external monitors and the built-in display show up, and whatever is displayed on that one external monitor is mirrored to the other.

I also attempted without bumblebee using only the discrete card, but that didn't work either. nvidia-settings couldn't detect ANY displays at all. (it doesn't detect the built-in either, leading me to believe something is really off, but I haven't been able to figure out what). Adding bumblebee and using the integrated card turned out to have higher performance with dual monitors.

Can anyone help?


> lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GK106GLM [Quadro K2100M] (rev ff)

> sudo dpkg -l | grep nvidia
ii  bumblebee-nvidia                                      3.2.1-90~trustyppa1                                 amd64        NVIDIA Optimus support using the proprietary NVIDIA driver
rc  nvidia-331                                            331.38-0ubuntu7                                     amd64        NVIDIA binary driver - version 331.38
ii  nvidia-331-updates                                    331.38-0ubuntu7                                     amd64        NVIDIA binary driver - version 331.38
rc  nvidia-libopencl1-331                                 331.38-0ubuntu7                                     amd64        NVIDIA OpenCL Driver and ICD Loader library
ii  nvidia-libopencl1-331-updates                         331.38-0ubuntu7                                     amd64        NVIDIA OpenCL Driver and ICD Loader library
rc  nvidia-opencl-icd-331                                 331.38-0ubuntu7                                     amd64        NVIDIA OpenCL ICD
ii  nvidia-opencl-icd-331-updates                         331.38-0ubuntu7                                     amd64        NVIDIA OpenCL ICD
ii  nvidia-prime                                          0.6.2                                               amd64        Tools to enable NVIDIA's Prime
ii  nvidia-settings                                       331.20-0ubuntu8                                     amd64        Tool for configuring the NVIDIA graphics driver

> sudo dpkg -l | grep bumblebee
ii  bumblebee                                             3.2.1-90~trustyppa1                                 amd64        NVIDIA Optimus support
ii  bumblebee-nvidia                                      3.2.1-90~trustyppa1                                 amd64        NVIDIA Optimus support using the proprietary NVIDIA driver
share|improve this question

2 Answers 2

up vote 6 down vote accepted

The Thinkpad w540 and T440 docking station uses an internal MST Hub to split the DisplayPort signal for multiple outputs. This is not supported in Linux yet. There are some working patches but the patches are not expected to see mainline release until Linux 3.16. The relevant freedesktop.org bug is #72795.

share|improve this answer
Thanks for the information, as little as I wanted to hear it. –  tavise May 28 '14 at 22:19
You could try connecting the two external displays through the Thunderbolt and mini DisplayPort ports. (Does it have a separate Thunderbolt port? Specs on Lenovo's site say so). Or through DisplayPort and VGA if not Thunderbolt. Or one monitor through the dock and the other on the mini DP port? (Never seen a w540, not sure what the exact options are, but you do not need to put all external monitors on a dock) –  bain May 28 '14 at 22:26
Connecting one through the dock and one through the mini DP port seems to work. Annoying, but working. –  tavise May 29 '14 at 14:40
Well I installed 3.16 and still the same issue.. –  Pithikos Oct 10 '14 at 10:54
@Pithikos The patches were merged in 3.17. User reports say it works: bugs.freedesktop.org/show_bug.cgi?id=72795#c56 –  bain Oct 16 '14 at 15:36

You could try the aforementioned kernel patch from airlied.

z06kris on the 01.org forum posted a how-to for Ubuntu 14.04, which works for me.

For reference, the aforementioned how-to:

NOTE: Just incase there's any 'n00bz' here, I'm going to give easy to follow instructions. Most regular users (everyone here) can bypass the nitty-gritty steps, and tailor it your own way.

Download/Install 'drm-i915-mst-support' kernel branch - Compile a copy of Dave's MST support branch.

    wget http://cgit.freedesktop.org/~airlied/linux/snapshot/linux-drm-i915-mst-s...
    tar xzvf linux-drm-i915-mst-support.tar.gz
    cd linux-drm-i915-mst-support
    sudo make-kpkg -j 4 --initrd --append-to-version=mstSupportKernel kernel-image kernel-headers
    Answer all the kernel configuration questions. You can probably hit enter for almost, if not all, of them. On my end, the

'i915' module support was added automatically. Once the build is complete, you should have two DEB packages in the parent directory of "linux-drm-i915-mst-support". Install those two kernel packages. sudo dpkg -i ../linuxmstSupportKernel.deb

​Download/Install xserver-xorg-video-intel_2.99.912
    wget http://ppa.launchpad.net/xorg-edgers/ppa/ubuntu/pool/main/x/xserver-xorg...
    sudo dpkg -i xserver-xorg-video-intel_2.99.912+git20140710.8587b2ff-0ubuntu0sarvatt~trusty_amd64.deb

At this point, you should be able to reboot and select "Advanced" from GRUB boot menu. Select and boot the new kernel that was compiled (e.g., 'mstSupportKernel'). You should be good to go now, and configure your displays as normal (System Settings > Display). Be sure to check that display "mirroring" isn't enabled though.

However, incase you have any issues (screens don't turn on, etc.), read the notes below.

Important Notes:

I tried many/multiple kernels but didn't have any luck until updating to 2.99.912 userspace as well.

share|improve this answer
Include essential part of link in the answer. –  enedil Jul 23 '14 at 13:56

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.