Find the answer to your Linux question:
Page 1 of 2 1 2 LastLast
Results 1 to 10 of 11
I'm installing Debian on a Lenovo W530 which has a docking station with two external monitors attached, these are driven off the internal Nvidia card. I'm trying to setup the ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Jan 2013
    Posts
    7

    Need Lenovo W530 multiple monitor config


    I'm installing Debian on a Lenovo W530 which has a docking station with two external monitors attached, these are driven off the internal Nvidia card. I'm trying to setup the xorg.conf to drive the laptop screen and the two monitors but can't work it out

    I doubt it but does anyone have a working config for this setup? If not, does anyone have any good, easy to understand, references on how to setup multiple monitors on X? I've had this working in the past with a desktop and multiple video cards so know a bit about what I'm doing but not enough to work it out by hand.

    Even better, are there any apps which will work it all out for me?

  2. #2
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, or in a galaxy far, far away.
    Posts
    11,158
    Most current Lenovo systems have two video adapters - an integrated Intel GPU, and the nVidia one. In the BIOS there is a setting to enable one, the other, or both GPU's. Linux is currently incapable of dealing with both the internal Intel GPU and the nVidia one, so you have to disable the Intel one in the BIOS. Unfortunately, that limits you to two output displays... FWIW, I have a Lenovo work laptop and have tried everything I can think of to work around this problem. I have heard rumors that there are people working on resolving this, but I'm not holding my breath!

    If you DO come up with a solution, please let me know!
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

  3. #3
    Just Joined!
    Join Date
    Jan 2013
    Posts
    7
    In Windows I'm currently running the laptop screen and two monitors through DVI ports on the doc. I've also got a third monitor running off a DisplayLink USB card but I've got the config to get that working so not worried about that.

    A friend told me to ditch the xorg.conf and use xrandr so going to give that a try tonight.

  4. #4
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, or in a galaxy far, far away.
    Posts
    11,158
    Assuming you are running a current version of Debian, that may work. I know that Windows has drivers to run both the Intel and nVidia GPUs at the same time (the Intel is running the laptop display, and nVidia the external DVI ones most likely), but the versions of Linux I have tried aren't so well configured, but then I usually run some version of Red Hat Enterprise, and that is still at kernel 2.6.32 vs. 3.10 or later...
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

  5. #5
    Just Joined!
    Join Date
    Jan 2013
    Posts
    7
    I'm running Debian testing so pretty much up-to-date. Will see tonight.

  6. #6
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, or in a galaxy far, far away.
    Posts
    11,158
    Do let us know how that works. I for one would be interested if it does - consider yourself on the "b"leading edge!
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

  7. #7
    Just Joined!
    Join Date
    Jan 2013
    Posts
    7
    Last night I managed to get the two nvidia monitors working. I got the DisplayLink monitor working. I got the laptop monitor working.

    None of those at the same time but all in the same session so I've proved that I've got all the right drivers installed and now just need to merge xorg.conf files.

    Unfortunately I hibernated the machine and when I restored it this morning it was refusing the display on the nvidia monitors. I guess that is something to do with the kernel module not coming out of hibernate correctly but didn't have time to debug before I had to swap back to work drive. Will keep plugging away at it, feels like I'm very close as all individual components have now worked, just got to get them all working together.

    I'll report back and I'm also planning to do a write up on my site when done. Not sure how much but I'll at least publish the working config file as I've not found any others out there.

  8. #8
    Linux User Steven_G's Avatar
    Join Date
    Jun 2012
    Location
    Western US
    Posts
    313
    I repair this exact setup at work about a dozen times a day on doze after an OS upgrade. I know a fair bit about *nix graphics too. I was one the early adopters of hybrid on *nix and had to do a lot by hand to get it working. I have no direct experience with this setup on *nix. But I'll offer some educated guesses that may help you look in the right direction.

    First things first: You've got you're architecture turned around a bit. The docking station does not "run off of the Nvidia chip". It accepts that video output from the port it is plugged in to (HDMI, USB, etc) and then "accelerates" / port replicates the video with an onboard graphics accelerator / co-processor.

    One of the biggest hang ups with this tech when it appeared for doze was that there was no driver for the docking station's onboard graphics accelerator / co-processor.

    Since you state no info on your docking station the best I can do for now is some rough guesses: Some of the newer docks are RHEL compliant. If this is an older dock you maybe SOL to get it to work 100% the way you want and may have to get super hackety with it just to get some kind of cludgey / crappy work around going. If the RHEL cert for the newer docks are kernel based then it should make life easier for you. You'll just have to upgrade to the correct kernel. On the other hand, if it is RHEL proprietary software that makes it work for them then you may be able to dig around on the CentOS repos, find a re-compiled version of it and run it on .deb through alien, or just compile it from scratch for .deb.

    Next thing, ubuntu (my distro) hibernate is all fouled up and causes tons of headaches. Ubuntu is based on .deb. This fix may not be dead on, but should put you close enough to figure it out:

    Code:
    gksudo gedit  /usr/share/polkit-1/actions/org.freedesktop.upower.policy
    There are two sections in this file, the first for suspend and the second for hibernate. Near the end of each section will be a line with:

    Code:
     <allow_active>yes</allow_active>
    Change this entry from “yes” to “no” to disable hibernate/suspend.

    Code:
     <allow_active>no</allow_active>
    Each to their own and all that jazz, but I can tell you from experience that in addition to everything that everybody else gripes about with these two functions they will also make custom garphics a complete nightmare. In my book it was worth the trade off of not being lazy and just managing power manually to have stuff work the way I want.

    Next thing, graphics: On some machines you can disable the IGPU in BIOS and run just the DGPU, but not on every machine. And even that carries headaches of its own. For example, you may have to make that switch in BIOS every time you want to go portable because on a lot of machines the DGPU cannot render directly to the built in screen, it has to be ported through the IGPU.

    I would look in to using bumblebee with the proprietary nvidia driver. It ended up making my life a lot easier. I have an XPS 15. The hybrid mode is locked in the BIOS so I could not turn it off. I tried like crazy, for several months, to manually export the xsession through the DPGU's HDMI port to the secondary monitor and never got it to work right because at the time (not sure about now) there was no direct support in *nix for hybrid / HDMI; neither sound nor video.

    However, I also have a mini-port display port on this machine. The mini-port pulls from the IGPU, not from the DGPU. So I dropped ~$30 US on a really good mini-port to HDMI adapter and installed bumblebee. This allowed me to use the hybrid graphics the way it is "supposed" to be used by porting the heavy rendering to the DGPU to be rendered and ported back to the IGPU to be displayed; which I then pull from the IGPU via its mini-port through a mini-port to HDMI adapter to an external HDMI monitor. (Note in UB 12.04 I had to install some experimental / dev software to get HDMI sound output working, even through the mini-port.)

    Last but not least: You do not say what DE you're using. I home rolled my own UB remix from CLI up with an XFCE4 DE. To get all of the kinks worked out where powersaver / screensaver / custom graphics all meet I had to make maybe 5 or 6 configuration changes thoughout my system and write 3 startup scripts to get it all to play nice; like some xset stuff to get DPMS to work the way I wanted, etc. But now it works like a charm and you would never know it's something I hacked together, it looks pro/OOB.

    Hopefully this will give you some things to look at on your end. Good luck.
    Last edited by Steven_G; 11-08-2013 at 04:06 PM. Reason: Typos

  9. #9
    Just Joined!
    Join Date
    Jan 2013
    Posts
    7
    Quote Originally Posted by Steven_G View Post
    I repair this exact setup at work about a dozen times a day on doze after an OS upgrade. I know a fair bit about *nix graphics too. I was one the early adopters of hybrid on *nix and had to do a lot by hand to get it working. I have no direct experience with this setup on *nix. But I'll offer some educated guesses that may help you look in the right direction.

    First things first: You've got you're architecture turned around a bit. The docking station does not "run off of the Nvidia chip". It accepts that video output from the port it is plugged in to (HDMI, USB, etc) and then "accelerates" / port replicates the video with an onboard graphics accelerator / co-processor.
    OK, to rephrase, the two ports I'm plugging into on the docking station I want to run from Nvidia card, I don't think the will run off the built in Intel card.


    One of the biggest hang ups with this tech when it appeared for doze was that there was no driver for the docking station's onboard graphics accelerator / co-processor.

    Since you state no info on your docking station the best I can do for now is some rough guesses: Some of the newer docks are RHEL compliant. If this is an older dock you maybe SOL to get it to work 100% the way you want and may have to get super hackety with it just to get some kind of cludgey / crappy work around going. If the RHEL cert for the newer docks are kernel based then it should make life easier for you. You'll just have to upgrade to the correct kernel. On the other hand, if it is RHEL proprietary software that makes it work for them then you may be able to dig around on the CentOS repos, find a re-compiled version of it and run it on .deb through alien, or just compile it from scratch for .deb.
    It is the standard Lenovo docking station which is sold with the W530


    Next thing, ubuntu (my distro) hibernate is all fouled up and causes tons of headaches. Ubuntu is based on .deb. This fix may not be dead on, but should put you close enough to figure it out:

    Code:
    gksudo gedit  /usr/share/polkit-1/actions/org.freedesktop.upower.policy
    There are two sections in this file, the first for suspend and the second for hibernate. Near the end of each section will be a line with:

    Code:
     <allow_active>yes</allow_active>
    Change this entry from “yes” to “no” to disable hibernate/suspend.

    Code:
     <allow_active>no</allow_active>
    Each to their own and all that jazz, but I can tell you from experience that in addition to everything that everybody else gripes about with these two functions they will also make custom garphics a complete nightmare. In my book it was worth the trade off of not being lazy and just managing power manually to have stuff work the way I want.
    What does this do? I was planning to just unload the reload the module after a hibernate/sleep


    Next thing, graphics: On some machines you can disable the IGPU in BIOS and run just the DGPU, but not on every machine. And even that carries headaches of its own. For example, you may have to make that switch in BIOS every time you want to go portable because on a lot of machines the DGPU cannot render directly to the built in screen, it has to be ported through the IGPU.

    I would look in to using bumblebee with the proprietary nvidia driver. It ended up making my life a lot easier. I have an XPS 15. The hybrid mode is locked in the BIOS so I could not turn it off. I tried like crazy, for several months, to manually export the xsession through the DPGU's HDMI port to the secondary monitor and never got it to work right because at the time (not sure about now) there was no direct support in *nix for hybrid / HDMI; neither sound nor video.

    However, I also have a mini-port display port on this machine. The mini-port pulls from the IGPU, not from the DGPU. So I dropped ~$30 US on a really good mini-port to HDMI adapter and installed bumblebee. This allowed me to use the hybrib graphics the way it is "supposed" to be used by porting the heavy render to the DGPU to be rendered and ported back to the IGPU to be displayed; which I then pull from the IGPU via its min-port through a mini-port to HDMI adapter to an external HDMI monitor. (Note in UB 12.04 I had to install some experimental / dev software to get HDMI sound output working, even through the mini-port.)

    Last but not least: You do not say what DE you're using. I home rolled my own UB remix from CLI up with an XFCE4 DE. To get all of the kinks worked out where powersaver / screensaver / custom grapahics all meet I had to make maybe 5 or 6 configuration changes thoughout my system and write 3 startup scripts to get it all to play nice; like some xset stuff to get DPMS to work the way I wanted, etc. But now it works like a charm and you would never know it's something I hacked together, it looks pro/OOB.

    Hopefully this will give you some things to look at on your end. Good luck.
    I'm on dedicated full time and it works fine for both built in screen and monitors. Once I have it working I might switch to letting it chose and try to get bumblebee working but for now the loss of a bit of battery life while on the road isn't a hardship. Getting all 4 screens working on my desk is the most important thing.

    I'm running Fluxbox but doubt that matters for getting the video split over multiple screens as that is controlled by X rather than the desktop environment/window manager isn't it?

    I'm also a developer so spend most of my time in vim and not a game player so rarely do anything that would make even the most basic graphics chip sweat.

  10. #10
    Linux User Steven_G's Avatar
    Join Date
    Jun 2012
    Location
    Western US
    Posts
    313
    Quote Originally Posted by digininja View Post
    OK, to rephrase, the two ports I'm plugging into on the docking station I want to run from Nvidia card, I don't think the will run off the built in Intel card.
    Not necessarily true. I haven't dug in to the deep hardware specs on your machine. You need to. These systems with both IGPUs and DPGUs are all over the place in both physical and software layout. For example on my machine: The Intel IGPU does most all of the rendering, except for the "heavy" rendering and all of the displaying. At least that was the best way to get it to work under *nix when I built this 1.5 years ago. Now on doze the Nvidia driver has HDMI output, in *nix it did not. (I'm not sure if that has changed.) So I used bumblebee, not for powersaving, but to set up the internal transparent proxy to port the heavy rendering to the DGPU to be rendered and then port it back to the IGPU to be displayed. When I set my system up there was no direct support in the Nvidia drivers for HDMI output under *nix for either video or sound, so I could not correctly pull the video signal directly off of the DPGU through its HDMI port; which is why I went with the adapter and bumblebee. This allowed me to physically pull a signal for display off of the IGPU that had been rendered on the DGPU; which was actually a whole lot easier than trying to pull the signal straight off of the DGPU.



    It is the standard Lenovo docking station which is sold with the W530
    It should have a model # on it, a few Googles should tell you what you need to know in that area.



    What does this do? I was planning to just unload the reload the module after a hibernate/sleep
    Permanently takes away authoriztion to run from the power manger so that it can't run at all. It's a nice one stop on / off switch for most all power manager headaches; instead of chasing your tail through the system and trying to change dozens of settings and poking at your kernel on every boot. The only time you'll have to reset it is when the dev's make a change to the policy kit and it over-writes your custom setting.


    I'm on dedicated full time and it works fine for both built in screen and monitors. Once I have it working I might switch to letting it chose and try to get bumblebee working but for now the loss of a bit of battery life while on the road isn't a hardship. Getting all 4 screens working on my desk is the most important thing.
    As stated above: I'm not suggesting that BB be installed to save power. I completely shut off *all* power management. Rather BB will reroute which port the DPGU's video signal can be phyically pulled from. With the way my machine is set up and driver tech of about 1.5 years ago it was actually easier for me to reroute the signal than it was to try and pull it directly off of the DPGU/HDMI. Then I installed a few GUI tools to make switching between stationary / external monitor to portable built-in monitor happen in just a few clicks.

    I'm running Fluxbox but doubt that matters for getting the video split over multiple screens as that is controlled by X rather than the desktop environment/window manager isn't it?
    Yes and no. Ther are some small things that vary from DE to DE and how they implement x and power management and screensavers. I wasn't reffering directly to splitting the xsession in the narrow sense of getting it to just make pictures on more than one screen; I was talking more about the gestalt of the thing, i.e when I walk away for a bit my screen does not go blank before I want it to due to power setting from the xsession, etc.

    I'm also a developer so spend most of my time in vim and not a game player so rarely do anything that would make even the most basic graphics chip sweat.
    I'm not a dev or a gamer. I'm just repairmen who builds crazy stuff. And you be suprised how quickly a few VMs all runnng at the same can tax your video.

Page 1 of 2 1 2 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •