01-19-2009, 06:53 AM
|
|
|
Join Date: Jan 2009
Posts: 12
|
|
Clamshell sleep.
Most portable system don't sleep on closing the LID, I tried to find a DSDT fix for it but cannot find it. (google is my best friend.) so I wrote 1 to fix my own.
If you have a better or alternative method, please let me know. Thanks.
Device (LID0)
{
Name (_HID, EisaId ("PNP0C0D")) //LID detection
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0B,
0x04
})
}
Name (LIDS, One)
Method (_LID, 0, NotSerialized)
{
Store (^^PCI0.SBRG.EC0.SF13, LIDS) //LID register
XOr (LIDS, One, Local0)
IF (Local0) //if LID is closed
{
Notify (SLPB, 0x80) //Set system to sleep
}
Return (LIDS)
}
LID device should be easy to find, just need to add a line to notify the system to sleep.
On most system, (I think) depends on the OS to set the system to sleep bit OS X don't understand the notification sent by the LID device, so I did it in the hardware instead.
ASUS EEEPC 1000H - Atom N270 - 2GB RAM, 500GD HD.
OSX 10.5.6 (vanilla)
Gigabyte P35-DS3L, E2180, 2 GB RAM, 2 1 TB HD, GT8800 512M.
OSX 10.5.6 (vanilla)
|