http://bugzilla.kernel.org/show_bug.cgi?id=12641





--- Comment #56 from Adam Pigg <a...@piggz.co.uk>  2009-10-02 19:38:46 ---
\o/

Ive rebooted about 10 times now and can regularly make it work/not work.

Its quite simple really (which is even more frustrating!:)

I checked back through the comments, and read posts on the ubuntu and archlinux
threads, and got pointed to the gentoo wiki on dsdt.  I know ive looked at this
in the past but figured i'd look again.

Then i read about linux ignoring _OSI(Linux), and learned of acpi_osi="".

I disassembled by dsdt, and found the what is at the end of the post.

i set acpi_osi="Linux" on the cmdline, and it now works perfectly.  With this
set i get this message from the kernel:
[    0.000000] ACPI: Added _OSI(Linux)
[    0.104794] ACPI: BIOS _OSI(Linux) query honored via cmdline

as opposed to ACPI: BIOS _OSI(Linux) query ignored.

Ive also tried other values such as "Windows 2001 SP2" and "Windows 2006 SP2",
but these dont work, all i see in the kernel log is that the query for Linux
was ignored.

Anyway, atm im happy, power events are now working.



=======================================================
Snipping from dsdt:

If (CondRefOf (_OSI, Local0))
                {
                    If (_OSI ("Linux"))
                    {
                        Store (0x03E8, OSYS)
                    }
                    Else
                    {
                        Store (0x07D0, OSYS)
                        If (_OSI ("Windows 2001"))
                        {
                            Store (0x07D1, OSYS)
                        }

                        If (_OSI ("Windows 2001 SP1"))
                        {
                            Store (0x07D1, OSYS)
                        }

                        If (_OSI ("Windows 2001 SP2"))
                        {
                            Store (0x07D2, OSYS)
                        }

                        If (_OSI ("Windows 2006"))
                        {
                            Store (0x07D6, OSYS)
                        }

                        If (LNotEqual (OSYS, 0x07D6))
                        {
                            If (_OSI ("Windows 2006 SP1"))
                            {
                                Store (0x07D6, OSYS)
                            }
                            Else
                            {
                                If (_OSI ("Windows 2006 SP2"))
                                {
                                    Store (0x07D6, OSYS)
                                }
                            }
                        }
                    }
                }
                Else
                {
                    Store (0x07D0, OSYS)
                }

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf
_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to