MKjanek32 Opublikowano 26 Czerwca 2017 Zgłoś Udostępnij Opublikowano 26 Czerwca 2017 Witam wszystkich po przerwie (trochę tego zeszło, prawie cały semestr...) - i od razu zamieszczam krótki poradnik.Otóż jak może wiecie, w wersji macOS Sierra 10.12.4 przestały działać dwa często stosowane na laptopach ze zintegrowanymi układami graficznymi Intela sposoby "popychania" regulacji podświetlenia ekranu - pierwszy wykorzystujący ACPIBacklight.kext, a drugi IntelBacklight.kext. Za to działa oczywiście w pełni natywna metoda, bazująca na systemowym sterowniku AppleBacklight.kext - tyle, że do jego prawidłowej pracy potrzebna jest odpowiednie skonfigurowanie systemu. I tym właśnie zajmiemy się w tym poradniku.1. Modyfikacja DSDT Pierwszą potrzebną rzeczą jest specjalna wersja poprawki PNLF w DSDT. Z klasyczną wersją wprawdzie regulacja też działa, ale w pełnym dostępnym zakresie dopiero po wybudzeniu z uśpienia - wcześniej ekran jest lekko przyciemniony, mimo ustawienia jasności na maksimum.Otwieramy więc w ulubionym edytorze nasze DSDT i zaczynamy od zmiany nazwy zintegrowanego układu graficznego (i wszystkich odwołań do niego) na IGPU. Sekcja integry znajduje się wewnątrz Device (PCI0) i posiada adres 0x00020000. W zależności od laptopa może się nazywać różnie, najczęściej Device (GFX0) albo Device (VID). Czasami (na przykład na moim ThinkPadzie) urządzenie VID może występować dwa razy: jedno dla zintegrowanej karty, drugie pod portem dla ewentualnej dedykowanej - nawet w modelu z samą zintegrowaną. Wtedy oczywiście wystarczy zmienić nazwę tylko tego pierwszego. Następnie wewnątrz sekcji IGPU (na przykład przed zamykającym nawiasem klamrowym) dodajemy taki fragment kodu: OperationRegion (RMPC, PCI_Config, 0x10, 4) Field (RMPC, AnyAcc, NoLock, Preserve) { BAR1,32, } Device (PNLF) { // normal PNLF declares (note some of this probably not necessary) Name (_ADR, Zero) Name (_HID, EisaId ("APP0002")) Name (_CID, "backlight") Name (_UID, 10) Name (_STA, 0x0B) //define hardware register access for brightness // you can see BAR1 value in RW-Everything under Bus00,02 Intel VGA controler PCI // Note: Not sure which one is right here... for now, going with BAR1 masked //OperationRegion (BRIT, SystemMemory, Subtract(^BAR1, 4), 0xe1184) OperationRegion (BRIT, SystemMemory, And(^BAR1, Not(0xF)), 0xe1184) Field (BRIT, AnyAcc, Lock, Preserve) { Offset(0x48250), LEV2, 32, LEVL, 32, Offset(0x70040), P0BL, 32, Offset(0xc8250), LEVW, 32, LEVX, 32, Offset(0xe1180), PCHL, 32, } // _INI deals with differences between native setting and desired Method (_INI, 0, NotSerialized) { Store(ShiftRight(LEVX,16), Local1) if (LNotEqual(0x710, Local1)) { Divide(Multiply(LEVL, 0x710), Local1,, Local0) //Store(P0BL, Local1) //While(LEqual (P0BL, Local1)) {} Store(Local0, LEVL) Store(0x7100000, LEVX) } } } UWAGA: jeżeli wcześniej dopisywaliśmy inną wersję poprawki PNLF, klasyczną lub dla ACPIBacklight.kext - należy ją oczywiście najpierw usunąćKompilujemy i wrzucamy plik DSDT.aml do odpowiedniego katalogu Clovera. 2. Binpatch AppleBacklight.kext w CloverzeW kolejnym kroku dodajemy do naszego config.plist w sekcji KernelAndKextPatches -> KextsToPatch następujący binpatch: <dict> <key>Comment</key> <string>change F%uT%04x to F%uTxxxx in AppleBacklightInjector.kext (credit RehabMan)</string> <key>Name</key> <string>com.apple.driver.AppleBacklight</string> <key>Find</key> <data>RiV1VCUwNHgA</data> <key>Replace</key> <data>RiV1VHh4eHgA</data> </dict> 3. AppleBacklightInjector.kextNa koniec pobieramy z załącznika i instalujemy AppleBacklightInjector.kext w katalogu Clovera z kextami lub w /S/L/E. Jeżeli mamy któryś z poprzednich kextów (ACPIBacklight.kext lub IntelBacklight.kext) - musimy go oczywiście usunąć.Restartujemy system - i regulacja podświetlenia powinna działać. Pomiędzy kolejnymi uruchomieniami systemu ustawienia podświetlenia są przechowywane NVRAM - więc jeżeli mają być pamiętane, odczyt i zapis do NVRAM musi działać u nas prawidłowo.W razie wątpliwości czy problemów, pomocne może okazać się przejrzenie wątku z oryginalnym tutorialem RehabMana, na wszelki wypadek podaję link:https://www.tonymacx86.com/threads/guide-laptop-backlight-control-using-applebacklightinjector-kext.218222/ AppleBacklightInjector.kext.zip Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
razor1995 Opublikowano 27 Czerwca 2017 Zgłoś Udostępnij Opublikowano 27 Czerwca 2017 Wyciągnąłem sobie DSDT z dumpu Clovera, ale przy kompilacji sypie błędami (nie da rady zrobić screena ). Mógłby ktoś sprawdzić ten DSDT? Patched: http://www76.zippyshare.com/v/NhpM2XWH/file.html Clean: http://www113.zippyshare.com/v/m0eNhu4j/file.html Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.