Skocz do zawartości

[Część 3] Sekcja audio w DSDT


Rekomendowane odpowiedzi

Sekcja audio w DSDT

v1.0 - Pierwsza publikacja

 

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)

 

:arrow: 1. Uzyskanie Device ID naszego kodeka audio

 

Odsyłam do tematu: "[Cześć 1] Wydobycie DSDT z naszego sprzętu" - link powyżej. Opisałem tam metodę uzyskania dumpu lspci w Ubuntu 9.04 oraz w Mac OS X oraz zrobienie CodecDumpa w Ubuntu.

 

Wynik lspci z Mac OS X (tylko kilka linijek z sekcji Audio) na przykładzie P5Q Pro:

00:1b.0 Audio device [0403]: Intel Corporation 82801JI (ICH10 Family) HD Audio Controller [8086] 
Subsystem: ASUSTeK Computer Inc. Unknown device [1043] 
.....

Wynik CodecDumpa (tylko kilka linijek) z Ubuntu na przykładzie P5Q Pro:

Codec: Realtek ALC1200
Address: 0
Vendor Id: 0x10ec0888
Subsystem Id: 0x104382fe
Revision Id: 0x100101
No Modem Function Group found
...

 

:arrow: 2. Sekcja HDEF

 

Najpierw dodajemy poprawkę DTGP z podstawowych poprawek (patrz lspis poprawek do DSDT)

 

W naszym DSDT audio może widnieć np: w sekcji Device (HDEF), Device (AZAL) lub może go nie być w cale ! W większości przypadków audio kryje się w DSDT pod kodem _ADR 0x001B0000 dlatego wyszukujemy Name (_ADR, 0x001B0000) i zmieniamy nazwę urządzenia z Device (AZAL) (lub innej) na Device (HDEF), a jeżeli sekcji w ogóle nie ma musimy ją dopisać. Wyszukujemy w całym kodzie tekstu "AZAL" i wszystkie te wpisy zmieniamy na "HDEF"

 

W przypadku gdy sekcja audio występuje dopisujemy poniżej Name (_ADR, 0x001B0000) :

                Method (_DSM, 4, NotSerialized) 
               { 
                   Store (Package (0x08) 
                       { 
                           "subsystem-id", 
                           Buffer (0x04) 
                           { 
                               0xFE, 0x82, 0x00, 0x00 
                           }, 

                           "subsystem-vendor-id", 
                           Buffer (0x04) 
                           { 
                               0x43, 0x10, 0x00, 0x00 
                           }, 

                           "layout-id", 
                           Buffer (0x04) 
                           { 
                               0x0C, 0x00, 0x00, 0x00 
                           }, 

                           "PinConfigurations", 
                           Buffer (Zero) {} 
                       }, Local0) 
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) 
                   Return (Local0) 
               }

W przypadku gdy sekcji audio nie ma, dopisujemy całość np przed sekcją USB, w sekcji Device (PCI0)

            Device (HDEF) 
           { 
               Name (_ADR, 0x001B0000) 
               Method (_DSM, 4, NotSerialized) 
               { 
                   Store (Package (0x08) 
                       { 
                           "subsystem-id", 
                           Buffer (0x04) 
                           { 
                               0xFE, 0x82, 0x00, 0x00 
                           }, 

                           "subsystem-vendor-id", 
                           Buffer (0x04) 
                           { 
                               0x43, 0x10, 0x00, 0x00 
                           }, 

                           "layout-id", 
                           Buffer (0x04) 
                           { 
                               0x0C, 0x00, 0x00, 0x00 
                           }, 

                           "PinConfigurations", 
                           Buffer (Zero) {} 
                       }, Local0) 
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) 
                   Return (Local0) 
               } 
           }

 

Następnym krokiem jest zmodyfikowanie subsystem-id oraz subsystem-vendor-id na nasze. W dumpie lspci w sekcji audio widnieje parametr, który nas interesuje [1043]. 1043 to subsystem vendor id, zera początkowe są pomijane a liczby wpisujemy od tyłu, sekcja wygląda następująco:

                            "subsystem-vendor-id", 
                           Buffer (0x04) 
                           { 
                               0x43, 0x10, 0x00, 0x00 
                           }, 

82fe to subsystem id, zera początkowe są pomijane a liczby wpisujemy od tyłu, sekcja wygląda następująco:

                            "subsystem-id", 
                           Buffer (0x04) 
                           { 
                               0xfe, 0x82, 0x00, 0x00 
                           },

 

Po skończeniu modyfikacji kompilujemy nasze DSDT i dobieramy Legacy kext do kompletu z internetu. Jeżeli nigdzie go nie możemy znaleźć dla zaawansowanych polecam napisanie go samemu.

 

Źródła informacji:

http://www.projectosx.com/forum/index.php?showtopic=465&hl=

Odnośnik do komentarza
Udostępnij na innych stronach

  • 3 lata później...

aby sprzet dzialal natywnie, na oryginalnych kextach, musi byc taki jak na oryginalnych maczkach, a niestety tak nie jest- nie ma obecnie karty zintegrowanej, ktora bylaby natywnie wspierana przez OS X...

dlatego ja wylaczam karte zintegrowana i stosuje karte na USB - jak chcesz wykorzystac jednak ta na pokladzie to czeka Cie patchowanie oryginalnych kextow, a co za tym idzie system nie bedzie w 100% vaniliowy.

Odnośnik do komentarza
Udostępnij na innych stronach

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ą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie
 Udostępnij

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystanie z tej witryny, wymaga zakceptowanie naszych warunków Warunki użytkowania.