oswaldini Opublikowano 21 Marca 2010 Zgłoś Udostępnij Opublikowano 21 Marca 2010 Podstawowe modyfikacje DSDT v1.0 - Pierwsza publikacjav1.1 - Drobne poprawki, spis tematów, wydzielenie wstępuv1.2 - Poprawka dla TM Fix'av1.3 - Dodana poprawka do Aliasów CPU SPIS TEMATÓW O MODYFIKACJI DSDT:[Cześć 1] Wydobycie DSDT z naszego sprzętu[Cześć 2] Podstawowe modyfikacje DSDT[Cześć 3] Sekcja audio w DSDT[Cześć 4] Modyfikacja sekcji USB[Cześć 5] Dopisywanie grafiki do DSDT[Cześć 6] Fixy dla notebooków/netbooków oraz PC[Cześć 7] Kosmeytka DSDT + Uciszanie kompilatora[Cześć 8] Sprawdzenie działania Power Managmentu (SpeedStep) Usuwanie Aliasów CPU:Oryginalna sekcja CPU: Scope (_PR) { Processor (P001, 0x01, 0x00000810, 0x06) {} Alias (P001, CPU1) Processor (P002, 0x02, 0x00000000, 0x00) {} Alias (P002, CPU2) Processor (P003, 0x03, 0x00000000, 0x00) {} Alias (P003, CPU3) Processor (P004, 0x04, 0x00000000, 0x00) {} Alias (P004, CPU4) } Usuwamy każdą linijkę ze słowem Alias Alias (P00x, CPUx) Zmodyfikowana sekcja: Scope (_PR) { Processor (P001, 0x01, 0x00000810, 0x06) {} Processor (P002, 0x02, 0x00000000, 0x00) {} Processor (P003, 0x03, 0x00000000, 0x00) {} Processor (P004, 0x04, 0x00000000, 0x00) {} } Method DTGP:Wymagane jest dołożenie jej, aby wszystkie inne fixy korzystające z niej mogły działać.Wygląda tak: Method (DTGP, 5, NotSerialized) { If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B })) { If (LEqual (Arg1, One)) { If (LEqual (Arg2, Zero)) { Store (Buffer (One) { 0x03 }, Arg4) Return (One) } If (LEqual (Arg2, One)) { Return (One) } } } Store (Buffer (One) { 0x00 }, Arg4) Return (Zero) } i należy ją umieścić zaraz po pierwszym nawiasie otwierającym "{"Po umieszczeniu powinna sekcja wyglądać mniej więcej tak: * OEM Revision 0x00000000 (0) * Compiler ID "INTL" * Compiler Version 0x20080926 (537397542) */ DefinitionBlock ("dsdt.aml", "DSDT", 1, "A0543", "A0543000", 0x00000000) { Method (DTGP, 5, NotSerialized) { If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B })) { If (LEqual (Arg1, One)) { If (LEqual (Arg2, Zero)) { Store (Buffer (One) { 0x03 }, Arg4) Return (One) } If (LEqual (Arg2, One)) { Return (One) } } } Store (Buffer (One) { 0x00 }, Arg4) Return (Zero) } Scope (_PR) { Processor (CPU1, 0x01, 0x00000810, 0x06) HPET, RTC fix i ustabilizowanie działania USB i FW:Oryginalna sekcja HPET: Device (HPET) { Name (_HID, EisaId ("PNP0103")) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFED00000, // Address Base 0x00000400, // Address Length _Y09) }) OperationRegion (HPTC, SystemMemory, HTBA, 0x04) Field (HPTC, ByteAcc, NoLock, Preserve) { HPTS, 2, , 5, HPTE, 1, Offset (0x04) } Method (_STA, 0, NotSerialized) { If (LEqual (OSFL (), Zero)) { If (HPTE) { Return (0x0F) } } Else { If (HPTE) { Return (0x0B) } } Return (Zero) } Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y09._BAS, HPT) Multiply (HPTS, 0x1000, Local0) Add (Local0, 0xFED00000, HPT) Return (CRS) } } Dodajemy: IRQNoFlags () {0} IRQNoFlags () {8} Zmodyfikowana: Device (HPET) { Name (_HID, EisaId ("PNP0103")) Name (CRS, ResourceTemplate () { IRQNoFlags () {0} IRQNoFlags () {8} Memory32Fixed (ReadOnly, 0xFED00000, // Address Base 0x00000400, // Address Length _Y09) }) OperationRegion (HPTC, SystemMemory, HTBA, 0x04) Field (HPTC, ByteAcc, NoLock, Preserve) { HPTS, 2, , 5, HPTE, 1, Offset (0x04) } Method (_STA, 0, NotSerialized) { If (LEqual (OSFL (), Zero)) { If (HPTE) { Return (0x0F) } } Else { If (HPTE) { Return (0x0B) } } Return (Zero) } Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y09._BAS, HPT) Multiply (HPTS, 0x1000, Local0) Add (Local0, 0xFED00000, HPT) Return (CRS) } } Oryginalna sekcja RTC0 (można ją znaleźć również pod nazwą RTC): Device (RTC0) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x02, // Length ) IRQNoFlags () {8} }) } Usuwamy: IRQNoFlags () {8} Zmodyfikowana sekcja RTC0: Device (RTC0) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x02, // Length ) }) } Oryginalna sekcja TMR (można ją znaleźć również pod nazwą TIMR): Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x00, // Alignment 0x04, // Length ) IRQNoFlags () {0} }) } Usuwamy: IRQNoFlags () {0} Dodajemy: IO (Decode16, 0x0050, // Range Minimum 0x0050, // Range Maximum 0x10, // Alignment 0x04, // Length ) Oraz modyfikujemy w pierwszej sekcji IO wartość Alignment (z 0x00 na 0x01)Zmodyfikowana sekcja TMR: Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x01, // Alignment 0x04, // Length ) IO (Decode16, 0x0050, // Range Minimum 0x0050, // Range Maximum 0x10, // Alignment 0x04, // Length ) }) } Oryginalna sekcja PIC (można ją znaleźć również pod nazwą IPIC): Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x00, // Alignment 0x02, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x00, // Alignment 0x02, // Length ) IRQNoFlags () {2} }) } Usuwamy: IRQNoFlags () {2} Zmodyfikowana sekcja PIC: Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x00, // Alignment 0x02, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x00, // Alignment 0x02, // Length ) }) } Spotkałem się z nieusuwaniem IRQ dla notebooków/netbooków w celu możliwości ściemniania/rozjaśniania matrycy TM Fix:Fix ten umożliwia działanie Time Machine bez konieczności stosowania jakichkolwiek dodatkowych łatek, a także pozbycia się z konsoli błędów: UUID Error: 35. Musimy przed zrobieniem fixa zlokalizować w IORegistryExplorer pod jaki port podpieta jest karta sieciowa. Aby to zrobić włączamy IORega w okienku wyszukiwania wpisujemy ethernet, jak widać na zdjęciu LAN podpiety jest na porcie BR26@1C,6 oraz BR27@1C,7. Przechodzimy do pliku DSDT i wyszukujemy kolejne sekcje do modyfikacji: Device (BR26) oraz Device (BR27)http://hamac.pl/download.htm?id=2090Przykład kiedy w komputerze jest jedna karta sieciowa LAN:Oryginalna sekcja BR26 - złącze pod które jest podłączony LAN Device (BR26) { Name (_ADR, 0x001C0006) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR26) } Return (PR26) } } Dodajemy po: Name (_ADR, 0x001C0006): Device (LAN) { Name (_ADR, Zero) Method (_DSM, 4, NotSerialized) { Store (Package (0x04) { "built-in", Buffer (One) { 0x01 }, "name", Buffer (0x24) { "Realtek RTL8111/8168B PCI-E Gigabit" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Zmodyfikowana sekcja BR26: Device (BR26) { Name (_ADR, 0x001C0006) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR26) } Return (PR26) } Device (LAN) { Name (_ADR, Zero) Method (_DSM, 4, NotSerialized) { Store (Package (0x04) { "built-in", Buffer (One) { 0x01 }, "name", Buffer (0x24) { "Realtek RTL8111/8168B PCI-E Gigabit" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } } Nazwę Realtek RTL8111/8168B PCI-E Gigabit - możemy zmienić na własną, wtedy będziemy musieli usunąć 0x24 z sekcji Buffer, czyli po edycji powinna wyglądać tak: Buffer () . Po przekompilowaniu wartość zostanie nadana sama - czy to w DSDTSE czy w iASLMePrzykład kiedy w komputerze jest więcej niż jedna karta sieciowa LAN:Przykład wygląda prawie identycznie z małymi wyjątkami. Lokalizujemy wszystkie porty kart sieciowych w IORegu i w nich dodajemy zmodyfikowaną sekcje. W sekcji: Device (LANx) x zmieniamy na numer karty sieciowej poczynając od 0. Sekcja dodawana ma tez jeszcze jedną pozycję "location", w niej numer startowy to "1" czyli o 1 więcej niż x (x+1)Oryginalna sekcja: Device (BR26) { Name (_ADR, 0x001C0006) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR26) } Return (PR26) } } Device (BR27) { Name (_ADR, 0x001C0007) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR27) } Return (PR27) } } Pod każdy port dodajemy poniższą sekcje zaraz po Name (_ADR, 0x00XY000Z) gdzie XY,Z jest odpowienim nr z IORega: Device (LANx) { Name (_ADR, Zero) Method (_DSM, 4, NotSerialized) { Store (Package (0x06) { "built-in", Buffer (One) { 0x01 }, "location", Buffer (0x02) { "x+1" }, "name", Buffer (0x24) { "Realtek RTL8111/8168B PCI-E Gigabit" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Zmodyfikowana sekcja: Device (BR26) { Name (_ADR, 0x001C0006) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR26) } Return (PR26) } Device (LAN0) { Name (_ADR, Zero) Method (_DSM, 4, NotSerialized) { Store (Package (0x06) { "built-in", Buffer (One) { 0x01 }, "location", Buffer (0x02) { "1" }, "name", Buffer (0x24) { "Realtek RTL8111/8168B PCI-E Gigabit" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } } Device (BR27) { Name (_ADR, 0x001C0007) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR27) } Return (PR27) } Device (LAN1) { Name (_ADR, Zero) Method (_DSM, 4, NotSerialized) { Store (Package (0x06) { "built-in", Buffer (One) { 0x01 }, "location", Buffer (0x02) { "2" }, "name", Buffer (0x24) { "Realtek RTL8111/8168B PCI-E Gigabit" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } } Analogicznie postępujemy dla nazwy karty sieciowej. Dla większej ilości kart sieciowych LAN schemat jest ten sam. Uruchomienie LPC:Fix ten jest potrzebny często aby uruchomić prawidłowe działanie vanillowego zarządzania energią. Na płytach asus'a LPC najczęściej się kryje pod nazwą SBRG. W laptopach mozna ja znaleźć pod nazwą LPCB/LPC, a w płytach Gigabyte pod nazwą PX40. Dodatkowo po uruchomieniu LPC pokazuje się opcja "wznów automatycznie po awarii zasilania" w panelu "Oszczędny komputer" AKTUALIZACJA ŁATKI LPC DLA 10.9 I NOWSZYCH: http://hamac.pl/topic/7491-w-jaki-sposób-załadować-applelpc-p5q-pro/?p=73214 Oryginalny początek sekcji SBRG (lub LPCB/LPC/PX40): Device (SBRG) { Name (_ADR, 0x001F0000) Method (SPTS, 1, NotSerialized) { Store (One, PS1S) Store (One, PS1E) Dodajemy: Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0xb9, 0x27, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } Wstawiona modyfikacja: Device (SBRG) { Name (_ADR, 0x001F0000) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0xb9, 0x27, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } Method (SPTS, 1, NotSerialized) { Store (One, PS1S) Store (One, PS1E) Device-id zmieniamy pod swój sprzęt lub pod sprzęt który mamy zamiar udawać. Pamiętamy, że wpisujemy id od tyłu! Np dla ICH10 3A18 (zera wiodące są zawsze pomijane!) 0x18, 0x3A, 0x00, 0x00 . DevID możemy znaleźć w temacie: http://hamac.pl/topics25/intel-ichx-mcp79-i-spolka-vt1054.htm Źródła informacji: http://hamac.pl/topics27/fixy-dsdt-dla-asus-p5w-dh-deluxe-vt857.htm Wielkie podziękowania dla 314TeR'a bo to w zasadzie on przedstawił wszystkie modyfikacje. Na nich się wszystkiego uczyłem. Praca admina została przeze mnie zebrana w całość i opublikowana w tym poradniku, z mojej strony poprawki są kosmetyczne. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
rzooff Opublikowano 18 Kwietnia 2010 Zgłoś Udostępnij Opublikowano 18 Kwietnia 2010 Miałem to już dawno dopisać, ale ciągle zapominam Usuwanie Aliasów CPU:[...]Usuwamy każdą linijkę ze słowem Alias Najczęściej tak właśnie to wygląda ale nie zawsze. Np. w Toshibie z mojego podpisu, oryginalny wpis w sekcji _PR: Processor (P001, 0x01, 0x00000810, 0x06) {} Alias (P001, CPU1) Processor (P002, 0x02, 0x00000810, 0x06) {} Alias (P002, CPU2) W dalszej części DSDT mamy odwołania nie do P001 i P002, tylko właśnie do CPU1 i CPU2, np: Notify (\_PR.CPU1, 0x80) Więc zwykłe usunięcie Aliasów zaowocuje w tym przypadku pojawieniem się całego tłumu błędów przy kompilacji. Warto więc nie robić tego tak automatycznie, tylko sprawdzić czy do którego wpisu mamy dalej odwołania. I w razie potrzeby, po usunięciu aliasów, trzeba go zmienić w głównej linijce. W tym przypadku wpisałem tam CPU1 zamiast P001 i tak samo CPU2, zamiast P002: Processor (CPU1, 0x01, 0x00000810, 0x06) {} Processor (CPU2, 0x02, 0x00000810, 0x06) {} Ewentualnie można zrobić odwrotnie, czyli zostawić P001 i w dalszej części kodu pozmieniać wszystkie CPU1 na P001 itd. A skoro już coś napisałem, to jeszcze kilka słów ogólnie... Praca admina została przeze mnie zebrana w całość i opublikowana w tym poradniku, z mojej strony poprawki są kosmetyczne. To zebranie wszystkiego do kupy to wcale nie tak mało. Odwaliłeś naprawdę kawał dobrej i ciężkiej roboty. Dzięki! Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
rzooff Opublikowano 22 Czerwca 2010 Zgłoś Udostępnij Opublikowano 22 Czerwca 2010 Jeszcze jedno uzupełnienie - coprawda jest to gdzieś na forum, ale warto dodać do kompletu. RTC fix W przypadku Biosów Awarda należy jeszcze poprawić w sekcji RTC wartość "Length" na 0x02. Zapobiega to problemowi resetowania ustawień Biosu bo każdym uruchomieniu Snow Leopard'a. Przykład takiej "błędnej sekcji: Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x01, // Alignment 0x08, // Length ) }) } I po porawce: Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x01, // Alignment 0x02, // Length ) }) } Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
witucha0 Opublikowano 22 Czerwca 2010 Zgłoś Udostępnij Opublikowano 22 Czerwca 2010 Jest on dokładnie tu:http://hamac.pl/topics15/snow-leopard-cmos-bios-reset-fix-vt573.htm Zdarza się również tak (np u mnie) że nasza sekcja RTC wygląda tak: Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (ATT0, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) Name (ATT1, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) Nie panikujemy, tylko zmieniamy wartość górnego kodu // Length z 0x04 na 0x02. Ten dolny zostawiamy bez zmian. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
iStig Opublikowano 29 Grudnia 2011 Zgłoś Udostępnij Opublikowano 29 Grudnia 2011 stary temat, ale mozna uaktualnic: co do zmian zwiazanych z IRQ - nie trzeba nic modyfikowac, jesli nie mamy problemow z konfliktami przerywan. Podane wyzej wartosci nie sa jedyne - w przypadku konfliktow mozna w ioreg... znalezc nie uzywane i takie nadac w odpowiednich sekcjach. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
314TeR Opublikowano 29 Grudnia 2011 Zgłoś Udostępnij Opublikowano 29 Grudnia 2011 Owszem nie trzeba ale raczej dotyczy to nowszych płyt i w większości płyt pod SB. Nieco starsze, np wszystkie znane mi na P55 wymagają jeszcze poprawy IRQ, nie wspominając o starszych na P45, P35 itp itd... Same IRQ nie tyle dodaje się do HPET i usuwa z TMR i RTC, co sprawdza jakie są IRQ w TMR i RTC i takowe przenosi się do HPET. np w DELL'ach zdarza się zestaw 2, 8 zamiast najczęściej spotykanego 0, 8. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
iStig Opublikowano 29 Grudnia 2011 Zgłoś Udostępnij Opublikowano 29 Grudnia 2011 dosc tajemniczy temat - malo jest w sieci konkretnych informacji dlaczego ktos cos ustawil i po co. Z przerywaniami w HPET znalazlem info, ze miany sa glownie ze wzgledu na konfilkty z USB lub FireWire. W wiekszosci przypadkow zmiany sa robione na wzor dumpow ze sprzetu Appla - szkoda ze brakuje takich tlumaczen dlaczego... [ Dodano: 2011-12-29, 17:57 ] ale mi brakuje Waszego doswiadczenia np. chcialbym wiedziec co sie dzialo gdy nie bylo wprowadzonych tych poprawek, jakie byly objawy - w dziale podane sa rozwiazania, ale dla mnie, czyli osoby, ktora nigdy nie instalowala na starszych sprzetach, kompletnie nie wiem po co to teraz juz sobie cos tam doczytuje, ale wiesz o co chodzi Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
oswaldini Opublikowano 29 Grudnia 2011 Autor Zgłoś Udostępnij Opublikowano 29 Grudnia 2011 miany sa glownie ze wzgledu na konfilkty z USB lub FireWire Nie tylko. Wszystkie mobasy serii Asus P6T muszą mieć tą poprawkę bo muli kontroler SATA i masz transferki max 5mb/s. Pod te mobasy trzeba robić dedykowane BootCD z DSDT bo inaczej instalacja będzie trwała pół dnia Tu masz jeden taki przykład Co do nowych konfiguracji to czasem można zapomnieć o istnieniu DSDT - na mobasach MSI serii Z68 nie używam DSDT w ogóle! Dumpy są identyczne jak te z nowych maców. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
314TeR Opublikowano 29 Grudnia 2011 Zgłoś Udostępnij Opublikowano 29 Grudnia 2011 W skrócie, poprawki dla HPET, RTC, TMR rozwiązują parę problemów: 1. Umożliwiają załadowanie poprawne AppleHPET (potrzebne do PM). 2. Brak KP z AppleRTC. 3. Znikające losowo porty USB 2.0 i FireWire. 4. Transfery SATA na X58 o których wspomniał wyżej oswaldini Są wymagane na praktycznie każdej płycie z ICH7,8,9,10 i P5x. Na płyta z ICH7 i 8 bardzo często brak ich powodował brak portów USB i FireWire, przy czym one pojawiały się i znikały w losowych okolicznościach. Następnie bez załadowanego AppleHPET nie odpalisz natywnego PM. IRQ w RTC powodowało KP od 10.5.6 w górę... Z usuwaniem IRQ z PIC osobiście nie doświadczyłem zmian, ale skoro nie ma w mac'owych DSDT, to sam osobiście je usuwałem, a jak wszystko działało, to nie drążyłem tematu czy musi, czy nie musi być. Nie mniej czytałem że czasami usunięcie IRQ z PIC, powodowało brak regulacji podświetlenia matrycy czy głośności z klawiszy funkcyjnych w notebookach... ale jak wcześniej pisałem, ja osobiście z tym się nie spotkałem. Dalej, aliasy - powodowały KP przy starcie... Od P45 są nagminnie w DSDT z PC, więc były zmorą, bo nie można było zainstalować OS X bez już poprawionego DSDT ba BootCD (uniwersalne się nie sprawdzały), a czyjeś DSDT nawet z tej samej płyty mogło mieć inne adresy pamięci i zaliczało się zwiechę... Jedynym lekarstwem wtedy było wymiana bios'u na taki z usuniętymi aliasami. Dziś na szczęście wiele z w/w problemów już nie istnieje, bo chameleon zwyczajnie ma w sobie "lekarstwa" na w/w bolączki jak aliasy, czy KP od AppleHPET czy RTC, nie mniej brak poprawionych tych sekcji np na P55 powoduje dziwne haczenie i mulenie systemu... owszem wstanie, ale nie działa najlepiej. music 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gutoslaw1 Opublikowano 10 Stycznia 2012 Zgłoś Udostępnij Opublikowano 10 Stycznia 2012 a u mnie sekcja SBRG wyglada w ten sposób no i nie wiem czy ją modyfikować czy nie i w jaki sposób? Device (SBRG) { Name (_ADR, 0x001F0000) Device (IELK) { Name (_HID, "AWY0001") OperationRegion (RXA0, PCI_Config, 0xA0, 0x20) Field (RXA0, ByteAcc, NoLock, Preserve) { , 9, PBLV, 1, Offset (0x10), , 1, PBMS, 1, , 1, PMCS, 1, ECNS, 1, Offset (0x11), ECT1, 16, ELEN, 1, Offset (0x14) } Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
314TeR Opublikowano 10 Stycznia 2012 Zgłoś Udostępnij Opublikowano 10 Stycznia 2012 a u mnie sekcja SBRG wyglada w ten sposób no i nie wiem czy ją modyfikować czy nie i w jaki sposób? Masz opisane po co i kiedy dodaje się do niej poprawkę dla LPC... Wpierw sprawdza się czy jest potrzebna w ogóle, a nie robi się wszystkie poprawki na pałę... Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ravven Opublikowano 18 Stycznia 2012 Zgłoś Udostępnij Opublikowano 18 Stycznia 2012 Witam. Mam pytanie odnośnie wyglądu (schematu?) DSDT. Do Extractu mojego DSDT użyłem programu DSDTSE pod Windowsem, jednakże jego wygląd zdaje się być nieco inny od tego podanego w przykładach tutaj. Do zobrazowania tego może posłużyć fix aliasów procesora. W tutorialu początek tej sekcji ma wygląd Scope (_PR) natomiast u mnie jest Scope (\_PR) W związku z tym moje pytanie, czy dodatkowy ukośnik jest jakiegoś rodzaju błędem? Jeśli tak to jak go usunąć? Czy zwykła edycja przez usunięcie wystarczy? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
oswaldini Opublikowano 18 Stycznia 2012 Autor Zgłoś Udostępnij Opublikowano 18 Stycznia 2012 Nie usuwaj nic! DSDT się różnią między sobą, robisz normalną edycje zostawiając te backslashe. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
holkov Opublikowano 8 Czerwca 2012 Zgłoś Udostępnij Opublikowano 8 Czerwca 2012 a u mnie sekcja SBRG wyglada w ten sposób no i nie wiem czy ją modyfikować czy nie i w jaki sposób? Masz opisane po co i kiedy dodaje się do niej poprawkę dla LPC... Wpierw sprawdza się czy jest potrzebna w ogóle, a nie robi się wszystkie poprawki na pałę... U mnie ta sekcja jest identyczna ,z tym że PM nie działa u mnie a docelowo pracuje nad działaniem sleep'a więc chyba jest to ważna sekcja Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ravven Opublikowano 1 Listopada 2013 Zgłoś Udostępnij Opublikowano 1 Listopada 2013 Poprawka RTC rzooffa odnosi się także do BIOS Phoenixa. Potwierdzone na Complau FL90. RTC fix W przypadku Biosów Awarda należy jeszcze poprawić w sekcji RTC wartość "Length" na 0x02. Zapobiega to problemowi resetowania ustawień Biosu bo każdym uruchomieniu Snow Leopard'a. Przykład takiej "błędnej sekcji: Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x01, // Alignment 0x08, // Length ) }) } I po porawce: Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x01, // Alignment 0x02, // Length ) }) } Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
barylatko Opublikowano 17 Marca 2014 Zgłoś Udostępnij Opublikowano 17 Marca 2014 Od wersji 10.8 poprawka do LPC wygląda troszkę inaczej zamiast wstawiać tej poprawki: Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0xb9, 0x27, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } wstawiamy taką: Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "compatible", Buffer (0x0D) { "pci8086,27b9" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } po modyfikacji sekcja ma wyglądać ta: Device (SBRG) { Name (_ADR, 0x001F0000) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "compatible", Buffer (0x0D) { "pci8086,27b9" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) Method (SPTS, 1, NotSerialized) { Store (One, PS1S) Store (One, PS1E) pamiętać trzeba aby zmienić dev-id pod swoją płytę. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
jack.sensei87 Opublikowano 20 Stycznia 2016 Zgłoś Udostępnij Opublikowano 20 Stycznia 2016 Czy te modyfikacje na dzień dzisiejszy są jeszcze aktualne? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
314TeR Opublikowano 21 Stycznia 2016 Zgłoś Udostępnij Opublikowano 21 Stycznia 2016 Zależy od generacji sprzętu, nie mniej jak masz co najmniej 2-gą generację Core ix 2xxx - czyli od Sandy Bridge w górę, to nie są już wymagane. music 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
jack.sensei87 Opublikowano 22 Stycznia 2016 Zgłoś Udostępnij Opublikowano 22 Stycznia 2016 Mam pierwszą generację i5, a dokładniej i5 m430. Mój plik dsdt wygląda z lekka inaczej niż większość we wszelkich poradnikach i dlatego mam problem z patchowaniem go. Ktoś może rzucił by okiem na niego? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
314TeR Opublikowano 22 Stycznia 2016 Zgłoś Udostępnij Opublikowano 22 Stycznia 2016 Pierwsza generacja i5 wymaga patchy. Załóż temat w stosownym dziale. W poradnikach nie dyskutujemy na prywatne problemy. 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ą.