← Back to team overview

hybrid-graphics-linux team mailing list archive

Re: Bumblebee for Hybrid SLI (Nvidia MCP79 / 9400M G / 9200M GS) on Dell Studio XPS 13 (1340)

 

Hi Peter, thanks again for the response.

Your laptop is not an Optimus laptop if you were wondering that.

 Yes, unfortunately my laptop purchase fell into the short-lived "Hybrid
SLI" period.


> Well, if there was an Intel iGPU taking it, there would be no use for the
> second nvidia card right?
>
Yes, so I was thinking it's a case of figuring out how to tell the
integrated GPU not to take the LCD. However, no matter what I specify in
the ConnectedMonitor option for each device, DFP-0 always shows up in the
Xorg log as being connected to the integrated GPU (9400M G). In addition,
the discrete GPU (9200M GS), only ever shows CRT-0 as a valid display
device -- it seems that DFP-0 is not even an option for some reason. You
can see this in the logs here:

[  1628.626] (--) NVIDIA(GPU-1): Valid display device(s) on GeForce 9200M
GS at PCI:2:0:0
[  1628.626] (--) NVIDIA(GPU-1):     CRT-0 (connected)
[  1628.626] (--) NVIDIA(GPU-1): CRT-0: 400.0 MHz maximum pixel clock

[  1627.534] (--) NVIDIA(0): Valid display device(s) on GeForce 9400M G at
PCI:3:0:0
[  1627.534] (--) NVIDIA(0):     CRT-0
[  1627.534] (--) NVIDIA(0):     Seiko/Epson (DFP-0) (connected)
[  1627.534] (--) NVIDIA(0):     DFP-1
[  1627.534] (--) NVIDIA(0):     DFP-2
[  1627.534] (--) NVIDIA(0): CRT-0: 300.0 MHz maximum pixel clock
[  1627.534] (--) NVIDIA(0): Seiko/Epson (DFP-0): 330.0 MHz maximum pixel
clock
[  1627.534] (--) NVIDIA(0): Seiko/Epson (DFP-0): Internal Dual Link LVDS
[  1627.534] (--) NVIDIA(0): DFP-1: 165.0 MHz maximum pixel clock
[  1627.534] (--) NVIDIA(0): DFP-1: Internal Single Link TMDS
[  1627.534] (--) NVIDIA(0): DFP-2: 480.0 MHz maximum pixel clock
[  1627.534] (--) NVIDIA(0): DFP-2: Internal DisplayPort

Thank you for the link to the ACPI specification. I didn't realize these
methods are standardized; I thought maybe they were specific to each
manufacturer.

"STA" reports a status (whether the device is on or off).

The method I'm looking at is actually "HSTA," which I can't find anywhere
in the ACPI spec. There is a separate "_STA" method, which I believe is the
one you're thinking of. HSTA just does a simple check and returns 1 or 0,
however, so I suppose it is still some sort of status method. Would
thinking that it could stand for "hybrid status" be too much of a leap? The
function looks like this (from
https://launchpadlibrarian.net/24358773/DSDT.dsl):

                Method (HSTA, 0, NotSerialized)
                {
                    If (And (GP38, 0x01))
                    {
                        Return (One)
                    }
                    Else
                    {
                        Return (Zero)
                    }
                }


Maybe https://wiki.archlinux.org/index.php/Dell_Studio_XPS_13

I have seen this, and it is one of the places that gave me the idea to try
setting the BusID. But, as I said, that did not work. I don't see anything
else on that page that is of use in addition to what I've tried -- was
there something that you noticed?

It seems like I need to find some way of making the dedicated GPU connect
to the LCD. Does anyone have any ideas? Maybe there's an ACPI method that
controls this connection? I'm not sure how to identify it if there is.

I've also tried to look for technical information on how HybridSLI, in
order to understand how it is actually supposed to work, but have not been
able to find anything. Does anyone know of any resources for this? I don't
suppose anyone has a contact at NVIDIA that would be willing to give some
suggestions...

FYI, here is a recent AskUbuntu question where I have answered with a
summary about the current status of dealing with this laptop and its
graphics, including disabling the discrete GPU, using Bumblebee, and trying
to use the discrete GPU:
http://askubuntu.com/questions/172609/how-to-disable-discrete-gpu-using-nvidia-drivers

Thanks for all the input so far. Trying to get the discrete GPU to drive
the LCD seems like the big hurdle at the moment.

Michael

On Wed, Sep 5, 2012 at 4:14 AM, Lekensteyn <lekensteyn@xxxxxxxxx> wrote:

> Hi Michael,
>
> On Tuesday 04 September 2012 23:37:46 Michael Rodríguez-Torrent wrote:
> > Looking at nvidia-settings, I can see that both graphics chips are
> > recognized. GPU 0 (integrated) has "X screens: Screen 0" and "Display
> > Devices: Seiko/Epson (DFP-0)" (which is the laptop screen, while GPU 1
> has
> > "X screens: None" and "Display Devices: CRT-0 (CRT-0)" (?)
> Looks logical to me. That CRT-0 is possibly not connected to anthing (I
> have
> the same unconnected CRT-0 here as many others do). Your laptop is not an
> Optimus laptop if you were wondering that.
>
> > So, the discrete card is always running and somehow gets configured with
> a
> > (bogus?) display, while the integrated card gets the laptop LCD.
> Well, if there was an Intel iGPU taking it, there would be no use for the
> second nvidia card right?
>
> > I found that a lot of people have posted about trying to set the BusID in
> > xorg.conf to that of the discrete card. I tried this as well but, like
> > them, found this resulted in the laptop screen going blank once X starts.
>
> > Is there a reason that the card wouldn't be driving the display?
> If the discrete GPU is not connected to a screen, surely you get a blank
> screen.
>
> > Is there something more I can do to tie them together?
> Maybe https://wiki.archlinux.org/index.php/Dell_Studio_XPS_13
>
> > I've also had a look at the ACPI tables (e.g.
> > https://launchpadlibrarian.net/24358773/DSDT.dsl), and I can see that
> the
> > calls to switch the discrete card on and off are obvious because of their
> > debug logging ("MXM on/off"). There are two other methods in the same
> > scope, "HSTA" and "_ROM," but I can't tell what they're for. How can I
> > decipher them? Just trial and error?
> "STA" reports a status (whether the device is on or off). _ROM is
> mentioned in
> the ACPI Spec (http://www.acpi.info/spec.htm) and returns the Video BIOS.
>
> > Maybe I need to somehow configure X to tell the nvidia driver to ignore
> the
> > integrated GPU device so that it configures the discrete device to use
> the
> > laptop LCD. Or is there some other reason that nvidia isn't letting me
> > assign that monitor to the discrete device?
> Again, try https://wiki.archlinux.org/index.php/Dell_Studio_XPS_13
>
> Regards,
> Peter
>

Follow ups

References