This procedure will enable, via DSDT edits and a free app (FunctionFlip) you to not need ClamShellDisplay or any other kext, and to get lid close working including backlight OK on wakeup, plus also use of Fn1/Fn2 etc as brightness control. Also use of other Fn buttons for volume etc.
I have an S9e, but I see no reason why it will not work on other machines, provided you:
a) Can sleep OK by use of SleepEnabler or other solutions such as Meklort's new vanilla speedstep kexts.
b) Have good DSDT for GFX, or use one of the Chameleon spins that has "GraphicsEnabler" for GMA950
The credit for this solution goes to Prasys, 18Seven, slice & tea from other forums.
If I can find time and the right words I guess I should write this up in an easy-to-follow procedure.
(This para is out of date, leaving in for history).
Finally managed to figure out where to make the DSDT edit to get sleep to work on lid close.
I have S9e, but I presume S10/e have very similar DSDT, so hope this helps others, as Lenovo DSDT looks nothing like the examples I've seen on most forums where the LID sleep fix is shown! See below:
EDIT 3/9..Ignore this code below. See update #2 at end of this post.
- Code: Select all
Device (LID)
{
Name (_HID, EisaId ("PNP0C0D"))
Name (LSTS, Zero)
Method (_LID, 0, NotSerialized)
{
If (ECON)
{
TRAP (0x49)
Sleep (0x64)
}
Else
{
Store (One, LSTS)
Store (One, LIDS)
}
If (LEqual (LIDS, Zero))
{
Store (Zero, ^^PCI0.GFX0.LBB)
Notify (SLPB, 0x80) //Added to make sleep on Lid close work
Return (Zero)
}
Else
{
Store (CM2B, ^^PCI0.GFX0.LBB)
Return (One)
}
}
}
OperationRegion (EXCO, SystemIO, 0x72, 0x02)
... etc etc etc
Now no need for ClamshellDisplay in /S/L/E
UPDATE 3/9: Trying to get this working more "nicely": using PNLF in DSDT will make for correct LID sleep (w/o the above messy hack and provided GFX is injected correctly also) and also give backlight control to the OS, rather than BIOS control on Fn-up/down. But so far not found a solution to getting backlight control working nicely on hardkeys (only in Display Preference Pane) when PNLF is used.
UPDATE 3/9 #2: Got it working w/o the ugly hack above. Can now use F1/F2 to control backlight. See:
http://prasys.co.cc/2009/12/getting-fn-toggle-key-to-work-on-hackbooks/
http://www.projectosx.com/forum/index.php?showtopic=779
UPDATE 3/31: This approach works for 10.6.3
(although you might need to use some 10.6.2 as I still do today, I've not tested with 10.6.3 frambuffer, GMA etc yet as I have all the GFX related stuff still from 10.6.2 in /E/E and Extensions.mkext so that I have a 100% vanilla /S/L/E running at 10.6.3. Will check/update later).
UPDATE 4/1: Tested OK when upgrading dependancy kexts (framebuffer/GMA/audio etc) that I have in /E/E.
