Weniger Kexte durch DSDT !?

  • Hi leute,



    kann ich mir einen dieser Kexte sparen durch einen DSDT Patch !?

  • Wo ist denn dein Problem, die liegen doch alle in der EFI und damit ist dein System absolut vanilla, näher am echten Mac geht es doch gar nicht.
    Clover injected die Kext beim Start ganz vereinfacht ausgedrückt in den Kernel und startet dein macOS und übergiebt die Kontrolle an das OS quasi zurück, nichts davon ist auf Dauer sondern nur temporär.

  • Ah OK ja dachte nur ist einfachher dann braucht man weniger Dateien, hatte auch versucht mal den Audio Inject über die DSDT zu machen aber habe es leider nicht hinbekommen.

    iMac 18,3 : Acer 27'' WQHD: Asrock Fatality Z270 Gaming K4 - Intel i5-7600K - 16GB DDR4 Intenso - Sapphire RX580 - macOS 11.0.1 - OC

    Elitebook 840 G1 : *1600x900* - Intel i5-4300U - 8GB DDR3 - M2 254GB + Intel SSD 320GB - Intel HD 4400 - macOS 11.0.1 - OC

  • DSDT Patches sparen keine Extensions ein, das war nie so und wird nie so sein. Man kann zwar damit eventuell vielleicht den einen oder anderen macOS eigenen Treiber dazu bewegen zu laden (meist im Bereich LAN) oder eben eventuell auch einen PropertyInjector einsparen (AHCI) aber letztlich tun die Dinger nicht Weh und oftmals sind die angebotenen Lösungen den macOS eigenen überlegen (gerade im Bereich LAN). Es macht eben schon einen Unterschied ob man zum Beispiel den NIC mit einem Treiber ausstattet der zu ihm passt oder ob man über einen "Compatible" Eintrag in der DSDT einen Treiber erzwingt der nur theoretisch passt.


    DSDT Patches wo sie sinnvoll sind gerne aber bitte nicht um Extensions zu sparen denn das ist nicht der Sinn davon besonders nicht bei moderner Hardware. Bei alten Lauben sieht das möglicherweise anders aus denn hier ist vieles seitens Apple final entwickelt und man ggf. mit gezielten Patches die eine oder andere fremde Extension vermeiden wobei sich auch hier immer die Frage stellt was besser ist...

  • Ja ok dann weiß ich Bescheid wofür würde in meinem Fall dann eine DSDT sinnvoll sein ?

    iMac 18,3 : Acer 27'' WQHD: Asrock Fatality Z270 Gaming K4 - Intel i5-7600K - 16GB DDR4 Intenso - Sapphire RX580 - macOS 11.0.1 - OC

    Elitebook 840 G1 : *1600x900* - Intel i5-4300U - 8GB DDR3 - M2 254GB + Intel SSD 320GB - Intel HD 4400 - macOS 11.0.1 - OC

  • Es gibt einige Dinge die sich nicht über Extensions regeln lassen und daher in die DSDT gehören ein gutes Beispiel dafür sind Device Namen hier hat Apple ein ziemlich eigenes Verständnis dafür wie die zu heißen haben. Ein gutes Beispiel ist USB Apple hätte hier gerne das die Devices im ACPI den Namen EH01, EH01 und XHC (eventuell noch XH01 und XH02 uzw. zu heißen haben) und auch beim Audio ist Apple eigen denn es hätte gerne das das Audio Gerät (onboard Audio) HDEF heißt und die HDMI Audio Geräte den Namen HDAU tragen. Dazu kommen einige Devices die es so in einer non Apple DSDT gar nicht gibt oder aber schon gibt aber eben nicht so wie Apple sich das vorstellt (LPC Device, MCHC Device, SMBUS Device) auch hier machen Patches Sinn denn damit ermöglicht man macOS die dazu gehörenden Treiber zu laden. Ein weiterer Punkt der sich nicht über einen Kext regeln lässt ist das Thema IMEI Device was wichtig für QuickSync werden kann denn auch dieses Device gibt es vermutlich es heißt dann aber gerne anders...


    Du siehst das DSDT Gefummel hat seine Berechtigung aber nicht unbedingt dafür Extensions zu sparen sondern mehr dafür Funktionen zu ermöglichen die sonst nicht möglich wären.

  • Ich versteh nur noch Bahnhof hehe jetzt weiß ich immer noch nicht ob eine DSDT für mich sinnvoll sein Ist. hehe

    iMac 18,3 : Acer 27'' WQHD: Asrock Fatality Z270 Gaming K4 - Intel i5-7600K - 16GB DDR4 Intenso - Sapphire RX580 - macOS 11.0.1 - OC

    Elitebook 840 G1 : *1600x900* - Intel i5-4300U - 8GB DDR3 - M2 254GB + Intel SSD 320GB - Intel HD 4400 - macOS 11.0.1 - OC

  • Kurz und Knapp wenn Deine Möhre so läuft wie sie soll dann nicht sonst ggf. doch...

  • Was griven so ausführlich gesagt hat, in Kurzfassung @SirusX ab Intel-Skylake macht es keinen Sinn mehr DSDT anzufertigen und zu patchen, benutze die Clover DSDT Patche und die Fixes, das reicht locker aus.
    Außer du hast bock eine Minimalistische DSDT anzufertigen, nur das nötigste für mac.


    Beispiel meiner DSDT:


    links minimalistisch, recht original vom Bios.rom



    Um die Einträge



    anzeigen zu lassen, braucht es eigentlich nur noch den PropertyInjector.kext, der ersetzt dann die _DSM Werte die in der DSDT noch fehlen.

    2 Mal editiert, zuletzt von rubenszy ()

  • Jop, wenn deine Möhre läuft brauchst du keine

  • Ich habe hier noch eine nette Geschichte zum Thema Skylake DSDT. :D
    Hier liegen drei Mainboard ...
    1. ASRock B150M Pro4
    2. ASRock Z170X Extreme 4
    3. Gigabyte Z170X Gaming 7
    und alle drei lassen sich mit einer gepatchten DSDT booten und haben unter PCI die entsprechenden Einträge.
    Nicht mal bei den Kexten musste ich was ändern, es ist wie aus einem Guss als wenn alle Hersteller das gleiche machen.

  • Das heisst alle drei Boards arbeiten mit der ein und der selben DSDT?

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Ganz genau so ist es. :thumbup:
    Ich bin ja auch ein wenig bequem und habe nur die SSD umgesteckt, aber keine Veränderungen an Clover vorgenommen, weder in der config.plist noch an der bereits gepatchten DSDT.


    Beim patchen gehe ich nach dem "Standard DSDT-Patch Verlauf für Desktops Skylake-Chipsätze" aus dem Wiki vor, darüber hole ich mir die Intel SATA 10, die Intel XHC 10, den Intel LAN mit dem GLAN.txt sowie die restlichen Fixe (RTC, QS, IRQ, etc.), HDMI Sound läuft über eine SSDT und der PropertyInjektor.kext übernimmt Audio (Layout ID, Builtin, etc.) und Intel Graphics HD 630 und WLAN Airport (Builtin, etc.), also eine Mischung die recht vielseitig einsetzbar ist.


    Hätte ich noch ein weiteres Mainboard hier, ich könnte wetten dass auch das auf Anhieb damit starten würde und mir den Schreibtisch von macOS präsentiert. :D

  • Wenn du mir so eine DSDT für mein Asrock basteln könntest wäre ich dir da sehr dankbar, denn was DSDT angeht bin ich echt unbegabt glaube ich. Gerade ne Homepage geschrieben und eine eigene Cydia Repo auf dem Webspace gepackt. Das ist alles kein Problem aber bei DSDT will es irgenntwie nie so wie ich will hehe.


    Ansonsten Wünsche ich auf jedenfall ein schönes Wochenende.

    iMac 18,3 : Acer 27'' WQHD: Asrock Fatality Z270 Gaming K4 - Intel i5-7600K - 16GB DDR4 Intenso - Sapphire RX580 - macOS 11.0.1 - OC

    Elitebook 840 G1 : *1600x900* - Intel i5-4300U - 8GB DDR3 - M2 254GB + Intel SSD 320GB - Intel HD 4400 - macOS 11.0.1 - OC

  • Lass uns mal probieren ob dein Z270 Gaming 4 die DSDT vom Z170 Extreme4 auch nimmt, findest du im Skylake Sammelthread alls letzten Eintrag, zusätzlich kannst du noch mit F4 in Clover eine rohe DSDT erzeugen.


    Edit: Im Grunde kannst du auch gleich die SSDT für HDMI Sound von der HD 630 und den PropertyInjektor.kext mit rüber ziehen, Versuch macht klug. :D

  • @SirusX Grafikkarte, Sound und Speichermedien laufen?


    Wenn du nur aus Spaß eine DSDt erstellen willst, weil du es geil findest dem Mac so nah wie möglich zu kommen, dann mach es richtig mit der DSDT.
    So hier mal das Beispiel meiner DSDT.


    links Original DSDT iMac 14.2 mit 26 KB, rechts bearbeitet DSDT von meinem Board 30 KB.



    Man könnte jetzt noch mehr entfernen aus der DSDT aber dann macht Windows ein paar Probleme.


    Wer Lust hat auf DSDT Bearbeitung, Vorlagen von Original Mac's im Anhang

    Dateien

    • iMac18.3.zip

      (4,17 MB, 52 Mal heruntergeladen, zuletzt: )
    • iMac14.2.zip

      (8,03 MB, 52 Mal heruntergeladen, zuletzt: )
    • iMacPro1.1.zip

      (9,85 MB, 44 Mal heruntergeladen, zuletzt: )
    • iMac17.1.zip

      (8,13 MB, 46 Mal heruntergeladen, zuletzt: )

    2 Mal editiert, zuletzt von rubenszy ()

  • @derHackfan


    Den Efi Ordner für das Board hast du noch nicht Hochgeladen !?

    iMac 18,3 : Acer 27'' WQHD: Asrock Fatality Z270 Gaming K4 - Intel i5-7600K - 16GB DDR4 Intenso - Sapphire RX580 - macOS 11.0.1 - OC

    Elitebook 840 G1 : *1600x900* - Intel i5-4300U - 8GB DDR3 - M2 254GB + Intel SSD 320GB - Intel HD 4400 - macOS 11.0.1 - OC

  • Im Skylake Sammelthread geht auch der Ordner von dem GA Z170X Gaming 7 oder dem ASRock B150M Pro4, jedes der drei Bretter lässt sich damit booten.
    Denk bitte daran dass du nur testen sollst für die eigentliche DSDT solltest du trotzdem deine rohe DSDT mit F4 ziehen.

  • Also habe deine EFI DSDT usw ein wenig übernommen es läuft auch alles soweit nur wird die M2 nun anders erkannt und USB 3.0 läuft nicht richtig. Und die Originalen DSDT habe ich auch mal angehangen.

    Bilder

    • Bildschirmfoto 2018-03-04 um 17.11.43.png

    Dateien

    • EFI.zip

      (8,16 MB, 39 Mal heruntergeladen, zuletzt: )
    • origin.zip

      (92 kB, 46 Mal heruntergeladen, zuletzt: )

    iMac 18,3 : Acer 27'' WQHD: Asrock Fatality Z270 Gaming K4 - Intel i5-7600K - 16GB DDR4 Intenso - Sapphire RX580 - macOS 11.0.1 - OC

    Elitebook 840 G1 : *1600x900* - Intel i5-4300U - 8GB DDR3 - M2 254GB + Intel SSD 320GB - Intel HD 4400 - macOS 11.0.1 - OC

  • @rubenszy Danke für die wunderbaren Dumps, die sind sehr hilfreich!


    Ich will jetzt hier nicht den Besserwisser oder sonstwas spielen, ich habe nur beim Thema ACPI ein etwas andere Meinung als die hier beschriebene und will nur diese Möglichkeit aufzeigen.


    Ich finde das eine gute ACPI Struktur eindeutig sinnvoll und eine gute Alternative zu ein paar Kexts ist. Auch bei Intel Skylake Boards.


    Es macht eben schon einen Unterschied ob man zum Beispiel den NIC mit einem Treiber ausstattet der zu ihm passt oder ob man über einen "Compatible" Eintrag in der DSDT einen Treiber erzwingt der nur theoretisch passt.


    Kexts wie SATA-200-series-unsupported.kext oder XHCI-200-series-injector.kext machen ja auch nichts anderes als einen falschen Treiber zu laden (wie das bei NIC ist weiß ich jetzt nicht). Es ist ja nicht so, dass sich dahinter ein kompletter Treiber für die jeweilige Hardware verbirgt – das ist bei den wenigsten Kexts der Fall, die meisten bauen auf Apples Lösungen.
    Im Vergleich finde ich einen "Compatible" Eintrag sinnvoller als eine SATA-200-series-unsupported.kext und solche Kexts lassen sich hier eindeutig komplett ersetzen.


    In Kurzfassung SirusX ab Intel-Skylake macht es keinen Sinn mehr DSDT anzufertigen und zu patchen, benutze die Clover DSDT Patche und die Fixes, das reicht locker aus.


    Finde ich auch nicht zwingend, denn die Clover Patches mögen zwar flexibel sein, decken aber wirklich nicht alles ab. Es gibt immer wieder Konfigurationen und Systeme bei denen die Clover ACPI Optionen nicht anschlagen. Man denkt: Der Haken ist gesetzt, alles passt, aber es ist mir schon häufiger aufgefallen, dass letztendlich die aktivierten Änderungen garnicht in zB IOReg zu erkennen waren. Der Fix wurde dann nicht angewandt und hat dementsprechend auch keine Auswirkungen. Zudem lässt sich in der ACPI Sektion auch nicht alles finden und machen, bei manchem muss man einfach händisch vorgehen. Eine Kombination aus Clover Hotpatch und eigenen ACPI Tabellen finde ich hingegen sehr gut und sauber.


    Ein gutes Beispiel ist USB Apple hätte hier gerne das die Devices im ACPI den Namen EH01, EH01 und XHC [...] tragen.


    Ist wahrscheinlich nur ein kleiner Tippfehler, aber EH01, EH02 und XHC werden verwendet um das Eingreifen der Apple-eigenen Methoden gezielt zu verhindern. Apple hätte hier gerne EHC1/2 und XHC1/2 ;)

    Du kommst bei deinem Problem nach dem unendlichsten Versuch nicht weiter? Dann schreib mir eine Nachricht für eine TeamViewer Sitzung. Nur wenn es gar nicht mehr weiter geht!
    Alle anderen Fragen und Anliegen gehören ins Forum.