Jump to content

Cannot Get Brightness to Work with AppleBacklightInjector


mnfesq
 Share

41 posts in this topic

Recommended Posts

I have been posting about my ongoing problems getting brightness to work in High Sierra using AppleBacklightInjector.kext.  I can get the slider bar to show in SysPrefs/Display and it also works using my brightness keys.  However, the slider doesn't do anything - there is no change in screen brightness.  This is not effected by sleep/wake.

 

I am using the AppleBacklightInjector.kext in L/E. The SSDT-PNLF.aml file is in CLOVER/ACPI/Patched. The kext patch for AppleBacklight.kext is in config.plist at KernelandKextPatches/KextsToPatch.  I have rebuilt the kernelcache dozens of times.  I believe I have followed the instructions for using this kext to the letter.

 

On another site, RehabMan has a thread about this subject and I tried to rejoin that site but, having been permanently banned from it, I was rejected even though I used a different name and email address.  I am hoping he or someone else with diagnostic skills can help me figure this one out.

 

On that "other" site, he commonly responded to requests for help with the following:  Read post #1, "Problem Reporting".

Make sure you provide *all* files and output requested.

 

I have done so in the attached archive.  I hope it will help him or someone else figure out why I cannot get brightness adjustments to work.

 

BTW, up until High Sierra, I used the Generic Brightness kext, the basic PNLF patch in my DSDT (interestingly, at _SB._SB, not at _SB.PCI0.GFX0), and the "Name (_HID, EisaId ("LCD1234"))" patch at GFX0.DD02.  I can still use this method in High Sierra and brightness adjustment works.  However, once video goes to sleep for any reason, upon wakeup, the OS crashes and reboots.  Once I remove the GenericBrightness.kext, the OS stops crashing when video wakes.

 

Please help.  I am just about out of ideas here.

 

mnfesq's Problem Reporting Files.zip

 

Thanks.

Link to comment
Share on other sites

I have been posting about my ongoing problems getting brightness to work in High Sierra using AppleBacklightInjector.kext.  I can get the slider bar to show in SysPrefs/Display and it also works using my brightness keys.  However, the slider doesn't do anything - there is no change in screen brightness.  This is not effected by sleep/wake.

 

I am using the AppleBacklightInjector.kext in L/E. The SSDT-PNLF.aml file is in CLOVER/ACPI/Patched. The kext patch for AppleBacklight.kext is in config.plist at KernelandKextPatches/KextsToPatch.  I have rebuilt the kernelcache dozens of times.  I believe I have followed the instructions for using this kext to the letter.

 

On another site, RehabMan has a thread about this subject and I tried to rejoin that site but, having been permanently banned from it, I was rejected even though I used a different name and email address.  I am hoping he or someone else with diagnostic skills can help me figure this one out.

 

On that "other" site, he commonly responded to requests for help with the following:  Read post #1, "Problem Reporting".

Make sure you provide *all* files and output requested.

 

I have done so in the attached archive.  I hope it will help him or someone else figure out why I cannot get brightness adjustments to work.

 

BTW, up until High Sierra, I used the Generic Brightness kext, the basic PNLF patch in my DSDT (interestingly, at _SB._SB, not at _SB.PCI0.GFX0), and the "Name (_HID, EisaId ("LCD1234"))" patch at GFX0.DD02.  I can still use this method in High Sierra and brightness adjustment works.  However, once video goes to sleep for any reason, upon wakeup, the OS crashes and reboots.  Once I remove the GenericBrightness.kext, the OS stops crashing when video wakes.

 

Please help.  I am just about out of ideas here.

 

attachicon.gifmnfesq's Problem Reporting Files.zip

 

Thanks.

Have you tried Drop OEM?

Seeing as your using a DSDT and have all your needed SSDT you should be able to drop OEM.

post-1083558-0-11329700-1508237965_thumb.png

 

Also unrelated IntelGraphicsFixup.kext is updated. https://sourceforge.net/projects/intelgraphicsfixup/

Lilu is updated. https://github.com/vit9696/Lilu/releases

FakeSMC is updated. https://sourceforge.net/projects/hwsensors3.hwsensors.p/files/?source=navbar

 

Why not use AppleALC + Lilu for audio instead of VoodooHDA + AppleHDADisabler?

Link to comment
Share on other sites

Have you tried Drop OEM?

Seeing as your using a DSDT and have all your needed SSDT you should be able to drop OEM.

attachicon.gifScreen Shot 2017-10-17 at 9.24.43 pm.png

 

Also unrelated IntelGraphicsFixup.kext is updated. https://sourceforge.net/projects/intelgraphicsfixup/

Lilu is updated. https://github.com/vit9696/Lilu/releases

FakeSMC is updated. https://sourceforge.net/projects/hwsensors3.hwsensors.p/files/?source=navbar

 

Why not use AppleALC + Lilu for audio instead of VoodooHDA + AppleHDADisabler?

 

Thanks for your reply.  Dropping OEM SSDT's didn't fix the brightness problem but I was able to boot without the OEM SSDT's.  In the past, before I patched my SSDT's and moved the important ones to the patched folder, video would not load without the OEM SSDT's and I couldn't boot to High Sierra.

 

Unrelated stuff -- Thanks for the links to the updates.  I had been using RehabMan's versions of IntelGraphicsFixup and Lilu.  No noticeable difference using the ones you linked.  As for FakeSMC, I use Kozlak's version, not Slice's.  The sensors are more accurate for my laptop and I like the Kozlak HWSensors app.  As for AppleALC, I have not yet found anyone who could make Beats Audio work using the Apple audio kexts.  My laptop has 6 speakers and VoodooHDA allows me to activate them all and use them together.

  • Like 1
Link to comment
Share on other sites

I have been posting about my ongoing problems getting brightness to work in High Sierra using AppleBacklightInjector.kext.  I can get the slider bar to show in SysPrefs/Display and it also works using my brightness keys.  However, the slider doesn't do anything - there is no change in screen brightness.  This is not effected by sleep/wake.

Your laptop probably doesn't use the IGPU PWM for backlight control, therefore it is not compatible with AppleBacklight.kext (would not be compatible with IntelBacklight.kext either).

Your only choice is ACPIBacklight.kext + Brightness by bergdesign (for controls on the menu bar, since native controls won't work).

Link to comment
Share on other sites

Your laptop probably doesn't use the IGPU PWM for backlight control, therefore it is not compatible with AppleBacklight.kext (would not be compatible with IntelBacklight.kext either).

Your only choice is ACPIBacklight.kext + Brightness by bergdesign (for controls on the menu bar, since native controls won't work).

 

I'm so glad that you concluded that it's my hardware and not my lack of ability to follow instructions.  Thanks for taking the time to look at this for me.  I'll keep looking for a solution.  I'll also see if I can figure out why GenericBrightness.kext works but crashes the OS when it wakes from video sleep.  Much obliged.

Link to comment
Share on other sites

I was able to solve my problem by using a version of the GenericBrightness.kext that I found here:

 

http://www.insanelymac.com/forum/topic/291610-new-genericbrightnesskext-with-hdmi-kp-solved/

 

I couldn't get High Sierra to boot up when this kext was installed in Clover/kexts/10.13.  It worked, however, when it was installed in L/E.

 

Now, High Sierra is fully functional for me.  :thumbsup_anim:

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

I was able to solve my problem by using a version of the GenericBrightness.kext that I found here:

 

http://www.insanelymac.com/forum/topic/291610-new-genericbrightnesskext-with-hdmi-kp-solved/

 

I couldn't get High Sierra to boot up when this kext was installed in Clover/kexts/10.13.  It worked, however, when it was installed in L/E.

 

Now, High Sierra is fully functional for me.  :thumbsup_anim:

Yes I see your comment to this post and I compile the source Xcode 9.0 and its work for me 

 

:drool:  :thumbsup_anim:  :thumbsup_anim:

 

sans_t19.png

 

Attaching the compilation kext

GenericBrightness.kext.zip

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

Yes, I just used a PNLF patch in IGPU in my DSDT.

Ok not me, Nothing, only the kext compile in Xcode's 9.0  :)

 

Edit**

Now I Update my Sierra 10.12.3 (Brightness work) Update to 10.12.6 to see if that working again  :yes:

 

Edit 2 ******

Its work  :thumbsup_anim:  :D

post-951341-0-61192300-1508529680_thumb.png

Link to comment
Share on other sites

So brightness adjustment for my laptop requires both a PNLF patch to make the slider appear in SystemPreferences/Display and the "Name (_HID, EisaId ("LCD1234"))" patch at IGPU.DD02.  Without the PNLF patch, I cannot get High Sierra to boot with the kext you compiled.

Link to comment
Share on other sites

So brightness adjustment for my laptop requires both a PNLF patch to make the slider appear in SystemPreferences/Display and the "Name (_HID, EisaId ("LCD1234"))" patch at IGPU.DD02.  Without the PNLF patch, I cannot get High Sierra to boot with the kext you compiled.

Anyway thats work   :)  this is the more important ;)

Link to comment
Share on other sites

@mnfesq, chris1111

 

with the kext you provided , I also get a kernel panic and restart  with the  kext in clover/kext/10.13 but with kext in L/E, I am also able to have a working brightness slider and proper sleep.

 

But I have a different issue, every time I boot the brightness is set to maximum and I have to manually reset to the level I want, so please suggest how I can I make the decided brightness level set for all boots.

I am on legacy bios with clover installed to ESP with drive formatted with apfs.

 

Regards.

Link to comment
Share on other sites

@mnfesq, chris1111

 

with the kext you provided , I also get a kernel panic and restart  with the  kext in clover/kext/10.13 but with kext in L/E, I am also able to have a working brightness slider and proper sleep.

 

But I have a different issue, every time I boot the brightness is set to maximum and I have to manually reset to the level I want, so please suggest how I can I make the decided brightness level set for all boots.

I am on legacy bios with clover installed to ESP with drive formatted with apfs.

 

Regards.

This can be helps you ?

 

http://www.insanelymac.com/forum/topic/304530-clover-change-explanations/?p=2490314

Link to comment
Share on other sites

@mnfesq, chris1111

 

with the kext you provided , I also get a kernel panic and restart  with the  kext in clover/kext/10.13 but with kext in L/E, I am also able to have a working brightness slider and proper sleep.

 

But I have a different issue, every time I boot the brightness is set to maximum and I have to manually reset to the level I want, so please suggest how I can I make the decided brightness level set for all boots.

I am on legacy bios with clover installed to ESP with drive formatted with apfs.

 

Regards.

 

I think it has to do with the settings for your PNLF device.  Please post your PNLF device in your DSDT and I can see if there is a way to have it set to your desired level every time on reboot.

  • Like 1
Link to comment
Share on other sites

I think it has to do with the settings for your PNLF device.  Please post your PNLF device in your DSDT and I can see if there is a way to have it set to your desired level every time on reboot.

Thanks. mnfesq,

 

here's my PNLF

BCL and BCM methods are also there,

Also attached is the whole dsdt ,please take look if the data from PNLF is incomplete.

 

Hope you can fix it. 

Thanks

Device (PNLF)
        {
            Name (_HID, EisaId ("APP0002"))  // _HID: Hardware ID
            Name (_CID, "backlight")  // _CID: Compatible ID
            Name (_UID, 0x0A)  // _UID: Unique ID
            Name (_STA, 0x0B)  // _STA: Status
        }

        Method (ITOS, 1, NotSerialized)
        {
            Store (Buffer (0x06)
                {
                    "     "
                }, Local0)
            Store (Buffer (0x11)
                {
                    "0123456789ABCDEF"
                }, Local7)
            Store (0x05, Local1)
            Store (Zero, Local2)
            While (Local1)
            {
                Decrement (Local1)
                And (ShiftRight (Arg0, ShiftLeft (Local1, 0x02)), 0x0F, Local4)
                GBFE (Local7, Local4, RefOf (Local5))
                PBFE (Local0, Local2, Local5)
                Increment (Local2)
            }

            Store (Zero, Index (Local0, Local2))
            Return (Local0)
        }
    }

****************************************************************************************************************


AND THE BCM, BCL METHODS ARE LIKE SO.


Method (_BCL, 0, NotSerialized)  // _BCL: Brightness Control Levels
                    {
                        If (IGDS)
                        {
                            Return (BCLT)
                        }
                        Else
                        {
                            Return (BCLT)
                        }
                    }

                    Method (_BCM, 1, NotSerialized)  // _BCM: Brightness Control Method
                    {
                        If (ECON)
                        {
                            SBCM (Arg0)
                        }
                    }

                    Method (_BQC, 0, NotSerialized)  // _BQC: Brightness Query Current
                    {
                        If (ECON)
                        {
                            Return (GBQC ())
                        }
                        Else
                        {
                            Return (GBQC ())
                        }
                    }

                    Method (GBQC, 0, NotSerialized)
                    {
                        Store (Zero, Local0)
                        Store (^^^LPCB.EC0.BRTL, Local1)
                        While (LLess (Local0, 0x0B))
                        {
                            If (IGDS)
                            {
                                If (LEqual (LCDD, 0x22ECAF06))
                                {
                                    Store (DerefOf (Index (BCL8, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x1680AF0D))
                                {
                                    Store (DerefOf (Index (BCL9, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x021BE430))
                                {
                                    Store (DerefOf (Index (BCLB, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x026AE430))
                                {
                                    Store (DerefOf (Index (BCLC, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x3651A34C))
                                {
                                    Store (DerefOf (Index (BCLD, Local0)), Local2)
                                }
                                Else
                                {
                                    Store (DerefOf (Index (BCLD, Local0)), Local2)
                                }
                            }
                            ElseIf (LEqual (LCDD, 0x22ECAF06))
                            {
                                Store (DerefOf (Index (BCL1, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x1680AF0D))
                            {
                                Store (DerefOf (Index (BCL2, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x021BE430))
                            {
                                Store (DerefOf (Index (BCL3, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x109EAF06))
                            {
                                Store (DerefOf (Index (BCL4, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x0226E430))
                            {
                                Store (DerefOf (Index (BCL5, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x1711AF0D))
                            {
                                Store (DerefOf (Index (BCL6, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x3651A34C))
                            {
                                Store (DerefOf (Index (BCLA, Local0)), ^^^LPCB.EC0.BRTL)
                            }
                            ElseIf (LEqual (LCDD, 0x026AE430))
                            {
                                Store (DerefOf (Index (BCLE, Local0)), ^^^LPCB.EC0.BRTL)
                            }
                            Else
                            {
                                Store (DerefOf (Index (BCL7, Local0)), Local2)
                            }

                            If (LEqual (Local1, Local2))
                            {
                                Add (Local0, 0x02, Local2)
                                If (IGDS)
                                {
                                    Store (DerefOf (Index (BCLT, Local2)), Local3)
                                }
                                Else
                                {
                                    Store (DerefOf (Index (BCLT, Local2)), Local3)
                                }

                                Store (0x0B, Local0)
                            }

                            Increment (Local0)
                        }

                        Return (Local3)
                    }

                    Method (SBCM, 1, NotSerialized)
                    {
                        Store (Zero, Local0)
                        While (LLess (Local0, 0x0B))
                        {
                            Add (Local0, 0x02, Local1)
                            If (IGDS)
                            {
                                Store (DerefOf (Index (BCLT, Local1)), Local2)
                            }
                            Else
                            {
                                Store (DerefOf (Index (BCLT, Local1)), Local2)
                            }

                            If (LEqual (Arg0, Local2))
                            {
                                If (IGDS)
                                {
                                    If (LEqual (LCDD, 0x22ECAF06))
                                    {
                                        Store (DerefOf (Index (BCL8, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x1680AF0D))
                                    {
                                        Store (DerefOf (Index (BCL9, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x021BE430))
                                    {
                                        Store (DerefOf (Index (BCLB, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x026AE430))
                                    {
                                        Store (DerefOf (Index (BCLC, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x3651A34C))
                                    {
                                        Store (DerefOf (Index (BCLD, Local0)), DPBL)
                                    }
                                    Else
                                    {
                                        Store (DerefOf (Index (BCLD, Local0)), DPBL)
                                    }

                                    Store (DPBL, ^^^LPCB.EC0.BRTL)
                                    AINT (One, DPBL)
                                }
                                ElseIf (LEqual (LCDD, 0x22ECAF06))
                                {
                                    Store (DerefOf (Index (BCL1, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x1680AF0D))
                                {
                                    Store (DerefOf (Index (BCL2, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x021BE430))
                                {
                                    Store (DerefOf (Index (BCL3, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x109EAF06))
                                {
                                    Store (DerefOf (Index (BCL4, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x0226E430))
                                {
                                    Store (DerefOf (Index (BCL5, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x1711AF0D))
                                {
                                    Store (DerefOf (Index (BCL6, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x3651A34C))
                                {
                                    Store (DerefOf (Index (BCLA, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x026AE430))
                                {
                                    Store (DerefOf (Index (BCLE, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                Else
                                {
                                    Store (DerefOf (Index (BCL7, Local0)), ^^^LPCB.EC0.BRTL)
                                }

                                Store (0x0B, Local0)
                            }

                            Increment (Local0)
                        }
                    }
                }






MACQDSDT.zip

  • Like 1
Link to comment
Share on other sites

 

Thanks. mnfesq,

 

here's my PNLF

BCL and BCM methods are also there,

Also attached is the whole dsdt ,please take look if the data from PNLF is incomplete.

 

Hope you can fix it. 

Thanks

Device (PNLF)
        {
            Name (_HID, EisaId ("APP0002"))  // _HID: Hardware ID
            Name (_CID, "backlight")  // _CID: Compatible ID
            Name (_UID, 0x0A)  // _UID: Unique ID
            Name (_STA, 0x0B)  // _STA: Status
        }

        Method (ITOS, 1, NotSerialized)
        {
            Store (Buffer (0x06)
                {
                    "     "
                }, Local0)
            Store (Buffer (0x11)
                {
                    "0123456789ABCDEF"
                }, Local7)
            Store (0x05, Local1)
            Store (Zero, Local2)
            While (Local1)
            {
                Decrement (Local1)
                And (ShiftRight (Arg0, ShiftLeft (Local1, 0x02)), 0x0F, Local4)
                GBFE (Local7, Local4, RefOf (Local5))
                PBFE (Local0, Local2, Local5)
                Increment (Local2)
            }

            Store (Zero, Index (Local0, Local2))
            Return (Local0)
        }
    }

****************************************************************************************************************


AND THE BCM, BCL METHODS ARE LIKE SO.


Method (_BCL, 0, NotSerialized)  // _BCL: Brightness Control Levels
                    {
                        If (IGDS)
                        {
                            Return (BCLT)
                        }
                        Else
                        {
                            Return (BCLT)
                        }
                    }

                    Method (_BCM, 1, NotSerialized)  // _BCM: Brightness Control Method
                    {
                        If (ECON)
                        {
                            SBCM (Arg0)
                        }
                    }

                    Method (_BQC, 0, NotSerialized)  // _BQC: Brightness Query Current
                    {
                        If (ECON)
                        {
                            Return (GBQC ())
                        }
                        Else
                        {
                            Return (GBQC ())
                        }
                    }

                    Method (GBQC, 0, NotSerialized)
                    {
                        Store (Zero, Local0)
                        Store (^^^LPCB.EC0.BRTL, Local1)
                        While (LLess (Local0, 0x0B))
                        {
                            If (IGDS)
                            {
                                If (LEqual (LCDD, 0x22ECAF06))
                                {
                                    Store (DerefOf (Index (BCL8, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x1680AF0D))
                                {
                                    Store (DerefOf (Index (BCL9, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x021BE430))
                                {
                                    Store (DerefOf (Index (BCLB, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x026AE430))
                                {
                                    Store (DerefOf (Index (BCLC, Local0)), Local2)
                                }
                                ElseIf (LEqual (LCDD, 0x3651A34C))
                                {
                                    Store (DerefOf (Index (BCLD, Local0)), Local2)
                                }
                                Else
                                {
                                    Store (DerefOf (Index (BCLD, Local0)), Local2)
                                }
                            }
                            ElseIf (LEqual (LCDD, 0x22ECAF06))
                            {
                                Store (DerefOf (Index (BCL1, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x1680AF0D))
                            {
                                Store (DerefOf (Index (BCL2, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x021BE430))
                            {
                                Store (DerefOf (Index (BCL3, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x109EAF06))
                            {
                                Store (DerefOf (Index (BCL4, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x0226E430))
                            {
                                Store (DerefOf (Index (BCL5, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x1711AF0D))
                            {
                                Store (DerefOf (Index (BCL6, Local0)), Local2)
                            }
                            ElseIf (LEqual (LCDD, 0x3651A34C))
                            {
                                Store (DerefOf (Index (BCLA, Local0)), ^^^LPCB.EC0.BRTL)
                            }
                            ElseIf (LEqual (LCDD, 0x026AE430))
                            {
                                Store (DerefOf (Index (BCLE, Local0)), ^^^LPCB.EC0.BRTL)
                            }
                            Else
                            {
                                Store (DerefOf (Index (BCL7, Local0)), Local2)
                            }

                            If (LEqual (Local1, Local2))
                            {
                                Add (Local0, 0x02, Local2)
                                If (IGDS)
                                {
                                    Store (DerefOf (Index (BCLT, Local2)), Local3)
                                }
                                Else
                                {
                                    Store (DerefOf (Index (BCLT, Local2)), Local3)
                                }

                                Store (0x0B, Local0)
                            }

                            Increment (Local0)
                        }

                        Return (Local3)
                    }

                    Method (SBCM, 1, NotSerialized)
                    {
                        Store (Zero, Local0)
                        While (LLess (Local0, 0x0B))
                        {
                            Add (Local0, 0x02, Local1)
                            If (IGDS)
                            {
                                Store (DerefOf (Index (BCLT, Local1)), Local2)
                            }
                            Else
                            {
                                Store (DerefOf (Index (BCLT, Local1)), Local2)
                            }

                            If (LEqual (Arg0, Local2))
                            {
                                If (IGDS)
                                {
                                    If (LEqual (LCDD, 0x22ECAF06))
                                    {
                                        Store (DerefOf (Index (BCL8, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x1680AF0D))
                                    {
                                        Store (DerefOf (Index (BCL9, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x021BE430))
                                    {
                                        Store (DerefOf (Index (BCLB, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x026AE430))
                                    {
                                        Store (DerefOf (Index (BCLC, Local0)), DPBL)
                                    }
                                    ElseIf (LEqual (LCDD, 0x3651A34C))
                                    {
                                        Store (DerefOf (Index (BCLD, Local0)), DPBL)
                                    }
                                    Else
                                    {
                                        Store (DerefOf (Index (BCLD, Local0)), DPBL)
                                    }

                                    Store (DPBL, ^^^LPCB.EC0.BRTL)
                                    AINT (One, DPBL)
                                }
                                ElseIf (LEqual (LCDD, 0x22ECAF06))
                                {
                                    Store (DerefOf (Index (BCL1, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x1680AF0D))
                                {
                                    Store (DerefOf (Index (BCL2, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x021BE430))
                                {
                                    Store (DerefOf (Index (BCL3, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x109EAF06))
                                {
                                    Store (DerefOf (Index (BCL4, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x0226E430))
                                {
                                    Store (DerefOf (Index (BCL5, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x1711AF0D))
                                {
                                    Store (DerefOf (Index (BCL6, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x3651A34C))
                                {
                                    Store (DerefOf (Index (BCLA, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                ElseIf (LEqual (LCDD, 0x026AE430))
                                {
                                    Store (DerefOf (Index (BCLE, Local0)), ^^^LPCB.EC0.BRTL)
                                }
                                Else
                                {
                                    Store (DerefOf (Index (BCL7, Local0)), ^^^LPCB.EC0.BRTL)
                                }

                                Store (0x0B, Local0)
                            }

                            Increment (Local0)
                        }
                    }
                }





 

 

I don't know if I fixed anything but I used RehabMan's brightness patch and modified it for your DSDT.  It adds brightness controls and backlight settings that your PNLF device didn't have.  If PNLF doesn't control brightness and just enables the slider bar in System Preferences/Display, then this won't do anything.  Let me know if it changes anything.  (If it doesn't, it may be that your laptop controls brightness in EC (your's is called EC0).  We can look at that next if this doesn't do anything.  Lastly, this may be something controlled by the Nvidia driver and I have absolutely no experience with modern Nvidia drivers.  (The last time I ran OSX on a desktop with an Nvidia GPU, I was installing Snow Leopard.)

 

DSDT-MACQ.aml.zip

Link to comment
Share on other sites

@mnfesq

 

Sorry to report that this changes nothing, yeah the slider is already there but does nothing.

Also with the use of kext in L/E,  I can change levels of brightness with slider, so full control, but with every reboot it gets set to maximum brightness.

My acpibaclight.kext was working till 10.11.6, but with Sierra I lost control of brightness, the slider was always there.

May be something to do with introduction of night light feature.

Thanks for the effort though, If you can try something else please do.

 

Regards

Link to comment
Share on other sites

  • 2 weeks later...

I have found that the GenericBrightness.kext which is attached to one of the posts above (the one complied by Chris1111) causes my laptop to fail to boot up when installing updates.  Once I removed it from L/E, I could boot up again.  Lately, I have been keeping the kext on my desktop and loading it manually after the laptop boots up.  It will then work fine both before and after wake from sleep.  

  • Like 1
Link to comment
Share on other sites

I have found that the GenericBrightness.kext which is attached to one of the posts above (the one complied by Chris1111) causes my laptop to fail to boot up when installing updates.  Once I removed it from L/E, I could boot up again.  Lately, I have been keeping the kext on my desktop and loading it manually after the laptop boots up.  It will then work fine both before and after wake from sleep.  

Hi!

Do you have black screen after wake from sleep?

Link to comment
Share on other sites

  • 2 weeks later...

With out the kext GenericBrightness.kext and Applying rehabman patch IGPU HD 3000 /4000

 

Thats working well here   :D MacBook Pro 9.1

 

captu104.png

 

 

sans_t25.jpg

which one did u patch dsdt or ssdt pnlf?want to try,anyway i got working birghtness using genericbrightness.kext

Link to comment
Share on other sites

 Share

×
×
  • Create New...