← Back to team overview

hybrid-graphics-linux team mailing list archive

Re: Shutdown problen on Lenovo V560 with G310M

 

The BIOS stores some values, DGOS and OMPR just after calling the _OFF
method:
    Scope (_SB.PCI0.P0P2.PEGP)
    {
        Name (DGOS, Zero)
        Method (_PS0, 0, NotSerialized)
        {
            If (DGOS)
            {
                _ON ()
                Store (Zero, DGOS)
            }
        }

        Method (_PS3, 0, NotSerialized)
        {
            Store (0x03, P80H)
            If (LEqual (OMPR, 0x03))
            {
                Store (0x04, P80H)
                _OFF ()
                Store (One, DGOS)
                Store (0x02, OMPR)
            }
        }
    }

My guess is that this is what is causing the troubles when only calling the
_OFF method. See this other mail which looks like could also solve the
problem for the Lenovo V560:

https://lists.launchpad.net/hybrid-graphics-linux/msg00322.html

Vilella:
>         Method (_PS3, 0, NotSerialized)
>         {
>             If (LEqual (OMPR, 0x03))
>             {
>                 If (LEqual (DGOS, Zero))
>                 {
>                     \_SB.PCI0.P0P2.NVID._OFF ()
>                     Store (One, DGOS)
>                 }
>
>                 Store (0x02, OMPR)
>             }
>         }

If simply calling _PS3 doesn't work, try commenting out the "If
(LEqual (OMPR, 0x03))" line and corresponding brackets, and loading
the new DSDT into the kernel.  This is exactly what I had to do with
my Asus to make the _PS3 call work.

Adolfo



On Thu, Nov 25, 2010 at 6:32 PM, Vadim Gusev <ubuntolog@xxxxxxxxx> wrote:

> Hi everyone. First of all i want to thank developers for doing great job
> by fixing nvidia's "no hybrid graphics on Linux" policy.
> I was able to turn my card off, but after doing this i cant shutdown or
> reboot, sometimes even REISUB doesn't help. Turning card on before
> shutdown doesn't help either.
> Some info here:
>
> INVALID
> Lenovo V560
> 00:02.0 VGA compatible controller [0300]: Intel Corporation Core
> Processor Integrated Graphics Controller [8086:0046] (rev 02) (prog-if
> 00 [VGA controller])
> 02:00.0 VGA compatible controller [0300]: nVidia Corporation GT218
> [GeForce 310M] [10de:0a70] (rev ff) (prog-if ff)
>
>
> ./test_off.sh
> Trying \_SB.PCI0.P0P1.VGA._OFF: failed
> Trying \_SB.PCI0.P0P2.VGA._OFF: failed
> Trying \_SB_.PCI0.OVGA.ATPX: failed
> Trying \_SB_.PCI0.OVGA.XTPX: failed
> Trying \_SB.PCI0.P0P2.PEGP._OFF: works!
>
> _______________________________________________
> Mailing list: https://launchpad.net/~hybrid-graphics-linux<https://launchpad.net/%7Ehybrid-graphics-linux>
> Post to     : hybrid-graphics-linux@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~hybrid-graphics-linux<https://launchpad.net/%7Ehybrid-graphics-linux>
> More help   : https://help.launchpad.net/ListHelp
>
>

Follow ups

References