Contribute
Register

[Guide] Laptop backlight control using AppleBacklightFixup.kext

i don't see any changes that would be helpful as i have already tested that scenario yesterday and it did not work

The files in the repo are different yesterday vs. today.
What you tested yesterday not relevant to current procedures/files.

the EDID is the native EDID and without it i lose qe/ci

That's fine... just saying that I can't tell if display-id was patched or not...
I expect with current files/procedures as per post #1, no need to patch EDID.
And no need to provide a custom injector kext...
 
The files in the repo are different yesterday vs. today.
What you tested yesterday not relevant to current procedures/files.

That's fine... just saying that I can't tell if display-id was patched or not...
I expect with current files/procedures as per post #1, no need to patch EDID.
And no need to provide a custom injector kext...

i can tell you the outcome before even testing it is going to use F11TXXXXM instead. if you disable F11TXXXXM you will get a different profile and so on until reach F11TXXXX
 
i can tell you the outcome before even testing it is going to use F11TXXXXM instead.

Yes. I know.
And it may work (or you may be stuck at low brightness if the profile doesn't match your hardware). That particular scenario definitely works on this Kaby Lake system.

I expect that selecting any T profile will work (the generic patch patches all, and all T profiles are present in the injector).
The real question is why you (and others) had a problem with the original patch + kext, which only patched FxxTxxxx *and* only provided FxxTxxxx... (kernel cache issue?)

Update: The profile selected tends to affect... may be hardware/graphics specific! I just tried the FxxTxxxx profile matching on my HD3000 system, and it didn't work correctly... Then I eliminated the FxxTxxxxM profile from the kext... new selected profile is then FxxTxxxxL, which works ok with HD3000.
Update2: Now not so sure... I put the FxxTxxxxM profile back in, then rebooted, expecting to get same failure observed earlier, but it did not materialize. Suspect the previous fail was due to kernel cache issue... or ??? Will do a few more reboots and rebuild caches to see if it is now stable.
Update3: The AppleMaxBacklight value is definitely screwy (seems to be random). May be just temporary instability after making a change. Need to do more reboots to test...
Update4: The FxxTxxxxM profile causes randomness. I switched to plain FxxTxxxx and no more random on my Ivy laptop. Also switched the _UID values to match existing profile usage... will stick with this for a while.

Now more experiments required to discover which profiles are associated with which PWMMax values... You can tell which PWMMax a given profile is associated with by looking at AppleMaxBrightness at PNLF@0 in ioreg after you boot with a configuration that would choose that profile.
 
Last edited:
Yes. I know.
And it may work (or you may be stuck at low brightness if the profile doesn't match your hardware). That particular scenario definitely works on this Kaby Lake system.

I expect that selecting any T profile will work (the generic patch patches all, and all T profiles are present in the injector).
The real question is why you (and others) had a problem with the original patch + kext, which only patched FxxTxxxx *and* only provided FxxTxxxx... (kernel cache issue?)

Update: The profile selected tends to affect... may be hardware/graphics specific! I just tried the FxxTxxxx profile matching on my HD3000 system, and it didn't work correctly... Then I eliminated the FxxTxxxxM profile from the kext... new selected profile is then FxxTxxxxL, which works ok with HD3000.
Update2: Now not so sure... I put the FxxTxxxxM profile back in, then rebooted, expecting to get same failure observed earlier, but it did not materialize. Suspect the previous fail was due to kernel cache issue... or ??? Will do a few more reboots and rebuild caches to see if it is now stable.
Update3: The AppleMaxBacklight value is definitely screwy (seems to be random). May be just temporary instability after making a change. Need to do more reboots to test...

Now more experiments required to discover which profiles are associated with which PWMMax values... You can tell which PWMMax a given profile is associated with by looking at AppleMaxBrightness at PNLF@0 in ioreg after you boot with a configuration that would choose that profile.

all i know of FxxTxxxxM is that some imacs use it, all the values are between 0x0 and 0x400 and the profile is bigger

i still trying figure out why I can't use the patch. getting working brightness was more of priority

i tried the T,P, generic XXXX kext patch and it won't load the profile unless i specify the panel. my bios is unlocked im going take a look there
 
Last edited:
all i know of FxxTxxxxM is that some imacs use it, all the values are between 0x0 and 0x400 and the profile is bigger

The confusing part about FxxTxxxxM was that it worked initially for me. But on subsequent reboots, I realized there was a random problem. Sometimes it worked, sometimes not (AppleMaxBacklight would get initialized incorrectly when it didn't work, but was 0x710 when it did work). Actually, it worked surprisingly often for something random...

So as of Update4 in #273, I've made two changes:
- removed all profiles except FxxTxxxx from the injector
- switched to _UID=14/15/16, which is more consistent with existing usage as per PWMMax values

i still trying figure out why I can't use the patch. getting working brightness was more of priority

i tried the T,P, generic XXXX kext patch and it won't load the profile unless i specify the panel. my bios is unlocked im going take a look there

Not sure of the purpose of the attachment... It is zero bytes... (must use ZIP for kexts).
I'd suggest you try with current files... (updated just a few minutes ago).
Note that you should not use your injector kext with the patch (patch is tied to the content in my injector kext).

Updates were to the AppleBacklightInjector.kext and SSDT-PNLF.dsl.
Eventually, I'll do a little cleanup of things, if this set works out ok.
So far, I've tested the current setup on my Ivy ProBook and a KabyLake ProBook...
 
Your ioreg still shows GFX0.
You did not provide patchmatic output as per "Problem Reporting".
Strange that you're still booting from USB (as per your Clover bootlog extracted from ioreg).

Sorry, I have upload again.
Yes, Sierra is installed on USB drive just for test. My laptop drive run El Capitan. After test, I will update to Sierra.
 

Attachments

  • Compressed file.zip
    3.6 MB · Views: 94
Sorry, I have upload again.
Yes, Sierra is installed on USB drive just for test. My laptop drive run El Capitan. After test, I will update to Sierra.

Your files (SSDT-PNLF, AppleBacklightInjector.kext, and the config.plist patch) are not up-to-date with respect to post #1 and the current content in the github repos.
Update and try again.
 
updated to the new setup AppleBacklight.kext won't appear in kernel cache so the patch can be applied.

or maybe %04x already has value and can't be patched?

or maybe clover patch the injector for the specific display?

sorry about the attitude earlier its about 2 weeks since i had any coffee. definitely can't function like that.
 
Last edited:
updated to the new setup AppleBacklight.kext won't appear in kernel cache so the patch can be applied.

or maybe %04x already has value and can't be patched?

or maybe clover patch the injector for the specific display?

sorry about the attitude earlier its about 2 weeks since i had any coffee. definitely can't function like that.

On a new setup, you will always have to boot first to load AppleBacklight.kext, then rebuild cache, then reboot. It is an artifact of Clover kext patching (cannot patch kexts that load outside of cache).

Read post #1, "Problem Reporting".
 
Your files (SSDT-PNLF, AppleBacklightInjector.kext, and the config.plist patch) are not up-to-date with respect to post #1 and the current content in the github repos.
Update and try again.
I have update the files, now there is slider in display. But can not change brightness when slide it.
 

Attachments

  • Compressed file.zip
    3.6 MB · Views: 83
Back
Top