InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   10.X (http://infinitemac.com/forumdisplay.php?f=36)
-   -   DSDT editing needed to fix brightness/sleep HP DV3XXX (http://infinitemac.com/showthread.php?t=5605)

uninc 03-08-2010 10:55 PM

1 Attachment(s)
Quote:

Originally Posted by uman (Post 46017)
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.

the broken dsdt is b/c i dont know how to edit the BCL & BCM, so
i only have one dsdt that needs working on...
do you know what i am saying?

uman 03-10-2010 12:25 PM

Quote:

Originally Posted by uninc (Post 46032)
the broken dsdt is b/c i dont know how to edit the BCL & BCM, so i only have one dsdt that needs working on...
do you know what i am saying?

Yes, you said your edits didn't compile. But still it's useful to me to see the edits. I wasn't able to look at this yesterday, but should be able today. I had a strange result yesterday that may be useful for a clue as to why brightness controls are such an issue for Darwin.

I was editing my DSDT to take out parts that were specific for older parts of Windows. I also enabled for Darwin, anything that was specific to Windows 2006. When I rebooted, everything seemed pretty much the same, except I no longer had the brightness controls, which are mapped to the Fn-up, and fn-down arrows.

So I plan to analyze what changed, and then see if I can make them come back. I then may have something useful for you to try.

uman 03-12-2010 01:56 AM

I spent a couple of hours looking at your DSDT the acpi spec and my dsdt (mine is relatively clean, and tracks the mac pretty well). The bad news is that yours is a hideous monstrosity. It's massive-- more than double the size of a macbook dsdt, and several thousand lines more than mine. Plus it implements a WMID interface (see: http://www.wilsonmar.com/1wmiwbem.htm) and even as checks to make sure the BIOS isn't modified. It also seems to deliberately obfuscate some things-- I believe to lock down some aspects of HP laptops.

So while I did manage to understand some things about the brightness settings, I couldn't suggest anything for you to try, other than running it through a recent DSDT patcher and telling the patcher to emulate Windows Vista or Windows 7. Then you could try that version to see if it helps.

Alternatively, you can search Linux forms for the same issue and for the same laptop. They will likely have the same problem, however, your DSDT specifically checks for Linux. So you could also try "pretending" OS X is Linux in the DSDT and see if that helps.

uninc 03-13-2010 09:35 AM

well that is dissappointing . thanks for looking it over uman.

i tried a vista dsdt with the same result.

the bios is modified, removing the original whitelists. it is from the insanely thread referenced earlier.
there is someone who is using an asus bios for a hp dv3xxx; it was a solution that predated the modified bios. the asus specs are almost identical to my hp. what are the chances the dsdt may solve the sleep/lcd issues using that asus bios?

uman 03-13-2010 02:03 PM

Quote:

Originally Posted by uninc (Post 46200)
well that is dissappointing . thanks for looking it over uman.

i tried a vista dsdt with the same result.

the bios is modified, removing the original whitelists. it is from the insanely thread referenced earlier.
there is someone who is using an asus bios for a hp dv3xxx; it was a solution that predated the modified bios. the asus specs are almost identical to my hp. what are the chances the dsdt may solve the sleep/lcd issues using that asus bios?

I would get in touch with that person and find out what the issues were. I hesitate to advise you here because I don't want anything to happen to your system. And given that certain device registers are memory mapped via a DSDT, it may be possible that changes could be made that are difficult to recover from.

kizwan 03-29-2010 08:01 AM

Hi uman,

Can you post your dsdt? I'm trying to enable display dimming function on my acer, not for Mac OS X but for windows. Brightness hotkey is working perfectly in both OSes but display dimming when idle or when on battery is not available. I'm trying to achieve that in windows. I'm manage to go as far as showing "Adjust screen brightness" at battery indicator but brightness didn't change at all when changing the slider position. The slide also move when power cord attached or detached. I think it missing proper "Return" or "Notify" command in _BCM method.

kizwan

uman 03-29-2010 04:29 PM

1 Attachment(s)
Kiz,

Here they are. I've included the unmodified, original one, and my latest. I seem to remember, in Leopard, that my display would dim when I removed the power cord, but now it does not. However, note that I don't have battery working (VoodooBattery panics, and I am using NullCPUPowerManagement). I don't plan to fix the battery issue because my battery is shot anyway. I suspect that display dimming is tied up to proper PM functioning.

I suspect it would be trivial for me to get dimming to work, since it is clear that Darwin does respond to the _BCM method. Right now if I hit Fn-F8, which on the Gateway has a dim/bright sun icon, the display dims or brightens.

In the DSDT, you'll see that it's using the _Q11 query method.

I don't think the Gateway's LBCM method (which implements what _BCM calls) is implemented very cleanly. I liked the design in uninc's HP dsdt better, but I don't have much interest in fixing the gateway's one. So you might also want to look at the HP one of uninc.

kizwan 03-29-2010 05:59 PM

Thank you uman for the dsdt.

I see you apply fix for restart/shutdown. Before applying the fix, which one do you have problem, shutdown or restart or both? I have problem with restart & currently using openhaltrestart.kext to fix the issue.

I added PNLF (backlight) in my dsdt but it didn't do anything. The slider in System Preferences always set to maximum & I can't change it. It will always back to maximum position whenever I try to change it. Brightness/backlight doesn't change at all. It make sense since in IORegistryExplorer, min & max value is 0x00. But since Fn key to adjust brightness is working, I don't care much about this.

I have added uninc's DSDT for _BCL, _BCM & _BQC in my dsdt. Will know if dimming working or not in windows after flashing it to BIOS. :) This kinda difficult because it doesn't exist in my dsdt before. Looks like my acer doesn't use 0x86, 0x87 to control brightness.

As for battery, our machine don't have smart battery (we have control method battery). So trying to apply smart battery in dsdt (to get it detected in Mac OS X) will be waste of time. This what I learn when trying to do it. :p

I didn't apply PWRB in my dsdt because it seems mine will be "generated" by SLPB. So, in IORegistryExplorer it will list "power-button" instead PWRB. I think it works in Mac OS X because when pressing the power button, I will be presented with sleep, restart & shutdown button.

I see you identified a lot of acronym/variable used in your DSDT. Nice. :)

kizwan

valv 04-01-2010 01:27 PM

1 Attachment(s)
hi all,
last days I was playin' with dsdt adding pnlf device and I ended up with the Backlight kext getting loaded fine, I can even use Fn+scroll & Fn+pause to make the sun shine, but it seems there's no values to switch to/from. To be clear, on IORegistryExplorer I get this:
Attachment 1180
Does anybody over here know how to change these values?

uman 04-01-2010 03:34 PM

Your picture is too low-res, but no matter. I have PNLF, and AppleBacklightDisplay and the values check against a MacBook. The issue is that the brightness/sun is controlled thru AppleIntegratedFrameBuffer (you'll note that AppleBacklightDisplay loads under display in ioreg).

It's possible that some sort of patching of AppleIntegratedFrameBuffer might work. For example, the Asus guys reported a patch for 10.5 that disabled brightness control in AppleIntegratedFrameBuffer, which allowed them to control it via ACPI and the ASUS bios. See here: http://ipis-osx.wikidot.com/forum/t-...htness-control

uninc: this may work for you if you're NOT using SL. It might work for SL, but you'd have to figure out how: http://myhpmini.com/forum/viewtopic.php?t=1542

Quote:

Originally Posted by valv (Post 46919)
hi all,
last days I was playin' with dsdt adding pnlf device and I ended up with the Backlight kext getting loaded fine, I can even use Fn+scroll & Fn+pause to make the sun shine, but it seems there's no values to switch to/from. To be clear, on IORegistryExplorer I get this:
Does anybody over here know how to change these values?