![]() |
#1
|
|||
|
|||
DSDT editing needed to fix brightness/sleep HP DV3XXX
I was poking around in the dsdt.aml trying to find what the sleep error and the brightness errors could be for the DV3XXX, and I stumbled upon this interesting info earlier:
projectosx.com/forum/index.php?showtopic=461 specifically post #4. It explains what code is used for controlling the brightness > (BCL) and (BCM). I was comparing our dsdt to others like the Dell 1340 in the above thread and HP 6XXX series here: http://www.insanelymac.com/forum/lof...p/t135410.html Compare the (_BCL) ASL Code differences below. i see a major difference in that their _BCL and _BCM are serialized and the DV3XXX is not. Also, because of this difference the DV3XXX is missing a crucial string of code after "Method (_BCL... Not Serialized)" to the end of the string below. Does anyone have any idea as to how to read code or better, fix this issue? I believe it is the same problem as our sleep, as 0x80 is code for sleep and 0x02 is code for wake, and the two are always referenced under BCL and BCM. HP DV3XXX series dsdt: Code:
Device (LCD) { Name (_ADR, 0x0110) Name (_DCS, 0x1F) Name (_DGS, Zero) Method (_DSS, 1, NotSerialized) { And (GDGS, 0x12, GDGS) If (And (Arg0, One)) { Or (GDGS, One, GDGS) } } Name (BCL1, Package (0x0D) { 0x64, 0x28, Zero, 0x0A, 0x14, 0x1E, 0x28, 0x32, 0x3C, 0x46, 0x50, 0x5A, 0x64 }) Method (_BCL, 0, NotSerialized) { Return (BCL1) } Method (_BQC, 0, NotSerialized) { Add (BRTL, 0x02, Local0) Return (DerefOf (Index (BCL1, Local0))) } Method (_BCM, 1, NotSerialized) { Store (0x02, Local0) While (LNotEqual (Arg0, DerefOf (Index (BCL1, Local0)))) { Increment (Local0) } Subtract (Local0, 0x02, BRTL) } } Code:
Device (C1AD) { Method (_ADR, 0, Serialized) { Return (C163 (Zero)) } Method (_DCS, 0, NotSerialized) { Return (C15B (Zero)) } Method (_DGS, 0, NotSerialized) { Return (C15C (Zero)) } Method (_DSS, 1, NotSerialized) { C167 (Zero, Arg0) } Name (C1AE, Package (0x0D) { 0x64, 0x33, 0x1E, 0x25, 0x2C, 0x33, 0x3A, 0x41, 0x48, 0x4F, 0x56, 0x5D, 0x64 }) Name (C1AF, Zero) Method (_BCL, 0, Serialized) { If (LAnd (LEqual (C1AF, Zero), And (C06B, 0x10))) { Store (C06D, Local0) Store (Zero, Local1) While (LLess (Local1, 0x0B)) { Store (DerefOf (Index (Local0, Local1)), Local2) Multiply (Local2, 0x64, Local3) Divide (Add (Local3, 0x7F), 0xFF, Local4, Local2) Store (Local2, Index (C1AE, Add (Local1, 0x02))) Increment (Local1) } Store (DerefOf (Index (C1AE, 0x05)), Index (C1AE, One)) Store (Local2, Index (C1AE, Zero)) Store (One, C1AF) } Return (C1AE) } Name (C1B0, 0x64) Method (_BCM, 1, Serialized) { Store (Zero, Local0) If (LGreater (\C009 (), 0x05)) { Or (C05A, 0x40, C05A) Store (One, Local0) } Store (Arg0, C1B0) Store (Match (C1AE, MGE, Arg0, MTR, Zero, 0x02), Local1) If (LEqual (Local1, Ones)) { Subtract (SizeOf (C1AE), One, Local1) } Subtract (Local1, 0x02, Local1) If (Local0) { Store (Local1, C071) If (LEqual (C168 (), Zero)) { C1B1 (0xEA74, 0x04, Local1, Zero, Zero) } Signal (C1AB) } } Method (_BQC, 0, Serialized) { Store (C1B0, Local0) Return (Local0) } } Asus A8N SLI DX . AMD 64X2 +4600 OC 2.69Ghz . Zotac 9800GT 1GB Eco . 4GB DDR 400Mhz OCZ Platinum . HP DV3510nr . Intel C2D P7350 2Ghz . nVidia 9300M GS 512Mb . 4Gb DDR2 800Mhz |
#2
|
|||
|
|||
uninc,
I don't think that's the solution. For example, my DSDT has this (and I have no issue with brightness, either from sleep, or from the keyboard): Code:
Method (_BCL, 0, NotSerialized) { Return (\_SB.PCI0.LBCL) } Method (_BCM, 1, NotSerialized) { \_SB.PCI0.LBCM (Arg0) } If the PS2 keyboard dimming, you could try adding the following to the PS2K device: Code:
Method (_DSM, 4, NotSerialized) { Store (Package () { // We are telling the system that we have FN keys "AAPL,has-embedded-fn-keys", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } -- MacBook Pro - have allergy to nickel in the aluminum casing. So my kid gets an expensive toy! ![]() Gateway MX 8738 - Retail, vanilla Snow Leopard 10.6.2 (thanks kizwan!) with Chameleon RC4, modified DSDT. Upgraded to Core 2 CPU (easy to do). Upgraded to 640GB drive. Everything but SD card working. Minor niggles. GMA950 with QE/CI and *no* artifacts. ![]() iMac (luxo/lamp) G4 with Tiger. Last edited by uman; 02-27-2010 at 01:58 AM. |
#3
|
|||
|
|||
thanks for the reply uman, i dont have a solution. i have a problem.
your post is very helpful, i think you are right about looking in the wrong place. i dont think the ps2 fix is the issue; however i am going to try it as i dont have that key in the dsdt. i will report back... Asus A8N SLI DX . AMD 64X2 +4600 OC 2.69Ghz . Zotac 9800GT 1GB Eco . 4GB DDR 400Mhz OCZ Platinum . HP DV3510nr . Intel C2D P7350 2Ghz . nVidia 9300M GS 512Mb . 4Gb DDR2 800Mhz |
#4
|
|||
|
|||
uninc,
I'm am still not sure what your issue is. Is it: 1. When returning from sleep, your display doesn't wake up, or the screen is very dim? If so, there's a DSDT fix for that. 2. You can't control the brightness from the keyboard? 3. The keyboard does control the brightness, but the OS X "sun" icon doesn't display? (I have that problem-- when controlling sound from my keyboard, I see the speaker icon, but not when controlling brightness. Re PS2: If you don't have a PS2K device in your DSDT, then you probably have a USB keyboard and mouse which is good! So I wouldn't add the PS2K device into your DSDT. (The sure way to tell whether you have PS2 keyboard or mouse is if during install, you needed VoodooPS2Controller.kext, or ApplePS2SomethingOrOther.kext.) I find that the people who are doing the most advanced DSDT work are the Gigabyte mobo folks. Unfortunately there are pages upon pages of cruft to wade through on insanely, not to mention the ACPI Programmers guide, and the datasheets for your motherboard chipset. Even here, the Gigabyte topics are lengthy. But good on them-- they have the passion. Try using google search to help cut down on the cruft: site:www.insanelymac.com HP DV3510nr DSDT brightness turned up some of your posts, but also: http://www.insanelymac.com/forum/ind...&#entry1095891 You could also try this: http://www.splasm.com/products/productbrightness.html Hmm, your laptop has an nvidia display right? Can you check if AppleIntegratedFrameBuffer is loaded (use kextstat in terminal). Apparently that kext takes control of brightness (LCD backlight). There's a patch that gets it to relinquish control (see the comment by Timo: http://blog.stuart.shelton.me/archives/209) Can you post your unmodified (original) DSDT? I'd need to see if your LCD panel has a _DSS method defined to control brightness. Macbooks (and my Gateway) don't. The _DSS method is where you see some people suggesting fixes where they use 0x86, 0x87, 0x89 to cycle, increase, decrease or zero brightness. But that doesn't work unless your hardware is defined that way. The ACPI spec has details on that. I can't promise that I can examine your DSDT right away (and I made need a gentle nudge as I might forget), since I am installing SL over the next day or two. But I'll try to look into it later this wee or early next week. I'm curious how this wholething works because I'd like to get the litle sun icon to show up on my gateway! Cheers. -- MacBook Pro - have allergy to nickel in the aluminum casing. So my kid gets an expensive toy! ![]() Gateway MX 8738 - Retail, vanilla Snow Leopard 10.6.2 (thanks kizwan!) with Chameleon RC4, modified DSDT. Upgraded to Core 2 CPU (easy to do). Upgraded to 640GB drive. Everything but SD card working. Minor niggles. GMA950 with QE/CI and *no* artifacts. ![]() iMac (luxo/lamp) G4 with Tiger. |
#5
|
|||
|
|||
my battery died on me while the EFI partition was mounted - the EFI was f'd. i had to take out the drive and repair from another mac. so, i haven't tried any of your suggestions yet uman, although i am grateful.
the dv3XXX does use PS2 input, and in the dsdt i believe it is called Code:
Device (KBC) to help you understand, sleep does not work at all (contrary to the threads you reference on insanely). I have been active in those for some time now, but they are dead. sleep does not work. if i push sleep, the monitor shuts off, and ps2 shuts off - thats it. i have to hard restart. brightness does not work. i am using shades right now - it kills my battery. every other hotkey works (volume, media keys, sleep, print etc...). i checked kextstat and AppleIntegratedFrameBuffer is not loaded. the dv3XXX is very vanilla, very tasty. its running SL excellent in 64 except for brightness and sleep. i can FEEL it can be fixed via dsdt here is the original dsdt, unfortunately it is long. ill also attach it: EDIT : i can only attach it - "the text...is too long" good luck with your install. and thank you for the links i will go over them in hopes of discovery Asus A8N SLI DX . AMD 64X2 +4600 OC 2.69Ghz . Zotac 9800GT 1GB Eco . 4GB DDR 400Mhz OCZ Platinum . HP DV3510nr . Intel C2D P7350 2Ghz . nVidia 9300M GS 512Mb . 4Gb DDR2 800Mhz Last edited by uninc; 03-03-2010 at 10:38 AM. |
#6
|
|||
|
|||
I'm having a hell of a time with my install. No joy today. And my Gateway is very vanilla (my DSDT compares amazingly with a MacBook DSDT).
No luck with prasys' method #1 - USB stick. Tried his second one using Conti's hack. No joy. I then tried to install thru Leopard onto the external drive (which will be my new hard drive once finished). It dies with a bless error. So now I'm installing from a MacBook Pro to the external drive. After that, I'm not sure. I think I can just install Chameleon. -- MacBook Pro - have allergy to nickel in the aluminum casing. So my kid gets an expensive toy! ![]() Gateway MX 8738 - Retail, vanilla Snow Leopard 10.6.2 (thanks kizwan!) with Chameleon RC4, modified DSDT. Upgraded to Core 2 CPU (easy to do). Upgraded to 640GB drive. Everything but SD card working. Minor niggles. GMA950 with QE/CI and *no* artifacts. ![]() iMac (luxo/lamp) G4 with Tiger. |
#7
|
|||
|
|||
i thought you were allergic to macbooks?!
those are strange failures. have you read this thread? - there is a link to install guide here. http://www.insanelymac.com/forum/lof...:/t187471.html are you dual booting? keep in mind gma950 is only 32 bit and chameleon rc3/4 automatically boots 64. so i tried adding the PS2 dimming to dsdt and it compiled fine, but it did not solve the problem. and i see that there is a _DSS method in my dsdt, do you have a link that explains adding the cycle commands? Asus A8N SLI DX . AMD 64X2 +4600 OC 2.69Ghz . Zotac 9800GT 1GB Eco . 4GB DDR 400Mhz OCZ Platinum . HP DV3510nr . Intel C2D P7350 2Ghz . nVidia 9300M GS 512Mb . 4Gb DDR2 800Mhz |
#8
|
||||||
|
||||||
I can tolerate using them for about 1/2 hr, then I lose sensitivity in my fingertips and my palms itch.
Quote:
Quote:
Quote:
Code:
| +-o KBC <class IOACPIPlatformDevice, registered, matched, active, busy 0, retain 8> | | +-o ps2controller <class AppleACPIPS2Nub, registered, matched, active, busy 0, retain 8> | | +-o ApplePS2Controller <class ApplePS2Controller, !registered, !matched, active, busy 0, retain 9> | | +-o ApplePS2KeyboardDevice <class ApplePS2KeyboardDevice, registered, matched, active, busy 0, retain 7> | | | +-o ApplePS2Keyboard <class ApplePS2Keyboard, registered, matched, active, busy 0, retain 9> Quote:
Quote:
Quote:
-- MacBook Pro - have allergy to nickel in the aluminum casing. So my kid gets an expensive toy! ![]() Gateway MX 8738 - Retail, vanilla Snow Leopard 10.6.2 (thanks kizwan!) with Chameleon RC4, modified DSDT. Upgraded to Core 2 CPU (easy to do). Upgraded to 640GB drive. Everything but SD card working. Minor niggles. GMA950 with QE/CI and *no* artifacts. ![]() iMac (luxo/lamp) G4 with Tiger. |
#9
|
|||
|
|||
uman, glad you succeeded with SL.
i have replaced KBC with PS2K and compiled w/o error-there is no visible difference yet. ive been reading the ACPIspec sheet, but don't really know where to start in understanding my own dsdt. indeed it prol'y needs to be looked at in order to edit the brightness and sleep issues. i have tried adding the values you referenced in the ACPIspec but can't compile w/o errors. i don't really know how or where to edit. can you help? Code:
Device (LCD) { Name (_ADR, 0x0110) Name (_DCS, 0x1F) Name (_DGS, Zero) Method (_DSS, 1, NotSerialized) { And (GDGS, 0x12, GDGS) If (And (Arg0, One)) { Or (GDGS, One, GDGS) } } Name (BCL1, Package (0x0D) { 0x64, 0x28, Zero, 0x0A, 0x14, 0x1E, 0x28, 0x32, 0x3C, 0x46, 0x50, 0x5A, 0x64 }) Method (_BCL, 0, NotSerialized) { Return (BCL1) } Method (_BQC, 0, NotSerialized) { Add (BRTL, 0x02, Local0) Return (DerefOf (Index (BCL1, Local0))) } Method (_BCM, 1, NotSerialized) { Store (0x02, Local0) While (LNotEqual (Arg0, DerefOf (Index (BCL1, Local0)))) { Increment (Local0) } Subtract (Local0, 0x02, BRTL) } } Asus A8N SLI DX . AMD 64X2 +4600 OC 2.69Ghz . Zotac 9800GT 1GB Eco . 4GB DDR 400Mhz OCZ Platinum . HP DV3510nr . Intel C2D P7350 2Ghz . nVidia 9300M GS 512Mb . 4Gb DDR2 800Mhz |
#10
|
|||
|
|||
Please post the two dsdts: the one that compiles okay with PS2K, and the broken one. I should be able to take a look midday.
💡 Deploy cloud instances seamlessly on DigitalOcean. Free credits ($100) for InfMac readers. -- MacBook Pro - have allergy to nickel in the aluminum casing. So my kid gets an expensive toy! ![]() Gateway MX 8738 - Retail, vanilla Snow Leopard 10.6.2 (thanks kizwan!) with Chameleon RC4, modified DSDT. Upgraded to Core 2 CPU (easy to do). Upgraded to 640GB drive. Everything but SD card working. Minor niggles. GMA950 with QE/CI and *no* artifacts. ![]() iMac (luxo/lamp) G4 with Tiger. |