OpenCore - DeviceProperties - Fragen zu Einstellung

  • Hallo Forum,


    in der Doku zu OpenCore (in diesem Fall 0.58) wird sicherlich

    einiges erklärt, aber manchmal nicht so richtig eindeutig.


    Das eintragen der PCI Adresse oder wie auch immer diese genannt

    wird, ist klar und habe ich vorher mit dem Hackintool ausgelesen.


    In meinen Fall ist es PciRoot(0x0)/Pci(0x14,0x2)



    Soweit habe ich die Doku verstanden, aber was eine Zeile tiefer

    eingetragen wird, ist mir nicht klar.


    Ich habe bei mir stehen (Screenshot rechte Seite) "built-in"

    und Data 01, was auch immer das heiße mag.


    In einer anderen config.plist (links im Screenshot zu sehen)

    dagegen steht was von "layout-id" und dann Data 01000000.


    Was wäre richtig und was bedeuteten die Zahlen hinter Data

    und wo werden die angezeigt?


    Wenn ich das weiß, bin schon wieder mal eine Ecke weiter.


    MadmaxMac

    Yosemite 10.10.5, Catalina 10.15.0, Catalina 10.15.4

    AMD FX 6300, MSI GT 710, ASRock 980DE3/U3s3, 12 GB RAM (8 +4), Kingston SSD

  • Hallo hackmac004,


    > Geht es um die Hardware in deiner Signatur?


    Ja.


    ich habe die Doku so verstanden, dass da der Soundchip/Codec eingeragen wird.


    Wie Du Anhand des Screenshots sehen kannst, hat das Mobo in der Signatur

    den Codec Realtek AL662.



    Wieso ich das ganze mache?

    In Clover hat der Sound mit den VoodooHDA.kext 1a funktioniert, in

    OpenCore nicht. Der Sound ist abgehackt und schrabbelich, also muss

    ich irgendwas falsch oder unvollständig eingetragen haben, oder?


    Gruß MadmaxMac

    Yosemite 10.10.5, Catalina 10.15.0, Catalina 10.15.4

    AMD FX 6300, MSI GT 710, ASRock 980DE3/U3s3, 12 GB RAM (8 +4), Kingston SSD

  • Die Verfügbaren Properties (Eigenschaften) hängen zum einen stark davon ab für welches Gerät die Properties übergeben werden sollen und zum andren welcher Zweck damit verfolgt werden soll. Jeder Device Property Eintrag erzeugt einen korrespondierenden Eintrag im IOReg unter dem jeweiligen Device Knoten diese Einträge können unterschiedliche Funktionen haben. Das BuildIn Property zum Beispiel wird verwendet, um zu signalisieren das sich bei dem Gerät um ein integriertes Gerät handelt, wobei hier Geräte gemeint sind die ein Teil des Logikboards/Chipsatzes sind (Ist im macOS Kontext zum Beispiel für NIC Devices wichtig da einige Dienste hier erwarten das der NIC BuildIn ist).


    Dein Beispiel mit der layout-id zum Beispiel bezieht sich auf die Soundkarte und wird von AppleALC verwendet, um ein bestimmtes Audio Layout in die AppleHDA zu injizieren. Die Werte werden in der config.plist immer im Daten Format erwartet (base64 codiert) da dies aber schwer zu lesen und handhaben ist zeigen gängige plist Editor Werte im Datenformat üblicherweise im hexadezimaler Schreibweise an. Bleiben wir beim Beispiel mit der Layout ID so ist der hier erwartet Wert also ein hexadezimaler Wert (01000000 entspricht AQAAAA== in der Base64 Schreibweise). Welcher Wert in Deinem Fall der richtige ist hängt vom Audio Codec auf Deinem Mainboard ab und kann hier nachgesehen werden: https://github.com/acidanthera…ALC/wiki/Supported-codecs (Hint das Board aus der Signatur hat einen ALC662 Codec). Mögliche wäre also zum Beispiel der Wert der Wert 5 oder der Wert 13 (gibt noch einige mehr). Da die Werte in hexadezimaler Schreibweise erwartet werden kann man da jetzt natürlich nicht einfach 13000000 hinschreiben, sondern muss zuvor den dezimalen Wert in einen hexadezimalen umrechnen:


    13 dezimal = D hexadezimal = 0D000000 oder

    17 dezimal = 11 hexadezimal = 11000000


    In der Base64 Schreibweise würde dann aus 13 dezimal = DQAAAA== und aus 17 dezimal analog dazu EQAAAA==

    Ich hoffe das hilft Dir ein wenig zu verstehen was da hineingehört und wie man an die Werte kommt

  • Hallo Griven,


    die verlinkte GitHub Seite kenne ich, da habe ich auch die Layout ID's

    notiert (5,7,11,12,13,15,16 und die 17)


    Die Layout ID's gelten doch nur für den AppleALC.kext, oder?

    Ich muss bei einem AMD FX allerdings den VoodooHDA.kext verwenden.


    Zum Schluss sei noch folgende Frage erlaubt: Der ALC Realtek 662 ist doch

    dann ein build-in, richtig?


    Gruß MadmaxMac

    Yosemite 10.10.5, Catalina 10.15.0, Catalina 10.15.4

    AMD FX 6300, MSI GT 710, ASRock 980DE3/U3s3, 12 GB RAM (8 +4), Kingston SSD

  • VoodooHDA kümmert sich gar nicht um die Device Properties bzw. beachtet diese nicht. Der Kext bindet sich über IOPCIMatch direkt an Device und VendorID des Soundchips. Aber warum sollte auf einem AMD Build nicht auch die Kombination aus Lilu und AppleALC in Kombination mit der passenden LayoutID funktionieren?

  • Hallo Griven,


    das steht so in den Anleitungen und ralf. hat dazu auch was verfasst

    (siehe AMD Bereich).

    Aber ich habe es trotzdem versucht, mit dem Ergebnis, dass es tatsächlich

    nicht funktioniert.


    Aber mal anders herum gefragt: Wenn ich bei DeviceProperties den PCIRoot sowie built-in lösche, funktioniert dann VoodooHDA Vielleicht?


    Ich habe mich dumm-und dämlich gegoogelt, aber keine Lösung gefunden.


    Opfer dagegen habe ich genug gefunden:


    Code
    1. I have the exact same system with gpu. Are you using clover or opencore? I am using 10.15.0 with clover no issues. If I change to opencore, sound is not working (voodoohda) - both analog and hdmi I hear sound but it cuts every few seconds with crackling noise. Happens with system sounds too. No crash though. I am using the ssdt-ec-usbx-amd. I also tried adding kernel patches with mask in clover but fails to boot. So, I am stuck with no updates. Please share efi.


    In der config.plist von Clover habe ich nicht gefunden, was den Sound/ton betrifft, was ich in OpenCore verwenden kann.


    Wenn alle Stricke reißen, muss ich wohl oder Übel zu einem USB SoundAdapter greifen.


    Gruß MadmaxMac

    Yosemite 10.10.5, Catalina 10.15.0, Catalina 10.15.4

    AMD FX 6300, MSI GT 710, ASRock 980DE3/U3s3, 12 GB RAM (8 +4), Kingston SSD

  • griven Könnte man auch einfach mit dem Hackintool die pcidevices.plist exportieren und aus dieser dann den Eintrag für die audio devices in die config hineinkopieren?


    Das im Zusammenhang mit appleALC.kext bringt bei mir den Sound zum laufen.

  • Natürlich kannst Du die Properties entfernen denn sie werden von der VoodooHDA in Deinem Fall ja eh nicht benutzt/gelesen. Was stottern/schrabbeln angeht kann das beim VoodooHDA unterschiedliche Gründe haben wobei sich mir zumindest ad hoc nicht erschließt was das mit dem Loader zu tun haben könnte denn dessen Job ist längst getan, wenn der Kext geladen wird…


    Gründe, die zum schrabbeln führen können, sind:

    • TSCSync passt nicht (-> ggf. VoodooTSCSync.kext)
    • SSE2 wird nicht verwendet (info.plist im Kext bearbeiten, ggf. über das prefpane von voodoohda setzen)

    Ist schon lange her das ich VoodooHDA nutzen musste müsste mich von daher also auch wieder einfuchsen. Gut der Weg über AppleALC/Lilu geht tatsächlich erst ab der ZEN Generation bleibt also nur VoodooHDA…

  • Hallo Griven,


    die Situation ist folgende:

    Gleiches Mobo,

    gleiche SSD mit

    Catalina 10.15.0 und

    ZweitHDD mit

    Catalina10.15.4


    Beide Bootloader benutzen die gleichen Kexte, die gleichen Driver.


    Vielleicht müsste ich tatsächlich aus mir nicht bekannten Gründen

    den "VoodooTSCSync.kext" bei OpenCore verwenden.


    Bei "34515-howto-ryzen-el-capitan-catalina" habe ich den Kext

    "VoodooTSCSync-kext" gefunden.


    > SSE2 wird nicht verwendet (info.plist im Kext bearbeiten, ggf. über das > prefpane von voodoohda setzen)


    Wo bekomme ich den "prefpane"

    her und wo bzw. wie wird dieser installiert?


    Wenn ich dazu Xcode brauchen sollte, das habe ich nicht installiert.


    Gruß MadmaxMac

    Yosemite 10.10.5, Catalina 10.15.0, Catalina 10.15.4

    AMD FX 6300, MSI GT 710, ASRock 980DE3/U3s3, 12 GB RAM (8 +4), Kingston SSD

  • XCODE braucht es dazu nicht die info.plist befindet sich in der Extension (Rechtsklick -> Paketinhalt anzeigen) und kann mit einem .plist Editor der Wahl angepasst werden. Das Prefpane zur VoodooHDA gibt es hier: https://sourceforge.net/projec…HDA.prefPane.zip/download


    Was mir im Zusammenhang mit der VoodooHDA noch einfällt (wie gesagt ist lange her) ist das ggf. auch Einstellungen bzgl. des Busspeed einen Einfluss auf das Verhalten haben (war beim Core2Duo der Merom und Penryn Generation der Fall) hast Du in Deiner Clover config im Breich CPU etwas eingetragen? Ich bin aktuell im Büro habe also nicht die Möglichkeit mir Dinge in die Tiefe anzusehen ansonsten hätte ich jetzt angeboten mal einen Blick in Deine funktionierende Clover config zu werfen und diese mit OC zu vergleichen, um ggf. noch vorhandene Unterschiede nachzuarbeiten. Wenn Du magst kannst Du trotzdem beide mal hochladen und ich schaue heute Abend dann gerne mal drüber?

  • Hallo Griven,


    die beiden config.plist kann ich gerne hochladen, da bin ich gespannt was

    dabei rauskommt.


    Bei Clover habe ich irgendwann einmal den Busspeed eingetragen, hat aber

    ohne auch gut funktioniert.


    Dieses "Prefpane", ist das eine App oder so, wo man den Kext draufzieht und

    damit öffnet?


    Ich wechsel mal gleich auf Catalina, damit einiges ausprobieren kann.


    Gruß MadmaxMac


    Update: Ich habe beide Config-dateien hochgeladen. Bei der OpenCoreDatei

    musste ich den Kext "VoodooTSCSyncAMD.kext" deaktivieren, weil

    OpenCore damit nicht starten konnte.



    Vielleicht habe ich hier was nicht korrekt eingetragen (PlistPath? Kein

    ExecutablePath?).


    Gruß MadmaxMac


    Update: Er startet jetzt mit "VoodooTSCSyncAMD.kext", aber wenn ich kextstat im Terminal aufrufe, wird dieser Kext nicht gefunden.

    Dateien

    Yosemite 10.10.5, Catalina 10.15.0, Catalina 10.15.4

    AMD FX 6300, MSI GT 710, ASRock 980DE3/U3s3, 12 GB RAM (8 +4), Kingston SSD

    2 Mal editiert, zuletzt von MadmaxMac () aus folgendem Grund: Update

  • Das der Kext nicht gefunden wird ist normal wenn dieser wirklich kein Executable enthält sprich nur aus einer .plist besteht. Diese sog. Codeless Kexts dienen nur zum einbringen von Informationen haben aber darüber hinaus keine weitere Funktion. Im Zusammenhang mit dem VoodooTSCSync kann ich das aber kaum glauben denn der besitzt üblicherweise ein Executable:



    Was mit bei den configs auffällt ist das in der Clover Config sehr wohl eine Busspeed Angabe vorhanden ist die natürlich so in OC fehlt (hierzu müsste man unter PlattformInfo Automatic auf No stellen und dann unter DataHub, SMBIOS und PlattformNVRAM alle Werte manuell befüllen um den Wert auch unter OC vorzugeben).

  • Hallo Griven,


    du hattest Recht, allerdings war in Clover der vorherige AMD FX 4300

    mit 3,8 Ghz eingetragen, der AMD FX 6300 hat "nur" 3,5 Ghz im Regelfall.





    Meine Frage zum korrekten ausfüllen:


    Ist "ARTFrequency" gleich mit der "clockSpeed" der CPU, also beim

    AMD FX 6300 3,6 Ghz gleich in OpenCore "3500000000" Hz.


    Ist "FSBFrequency" gleich mit Bus Speed in CPU-Z, also 200.38 Mhz,

    also in OpenCore "20038000" hz?


    Gruß MadmaxMac


    PS: Nochmals vielen Dank für deinen Einsatz, zumal du auch den richtigen

    Weg kanntest.

    Yosemite 10.10.5, Catalina 10.15.0, Catalina 10.15.4

    AMD FX 6300, MSI GT 710, ASRock 980DE3/U3s3, 12 GB RAM (8 +4), Kingston SSD

  • ARTFrequency ist relevant für Intel Prozessoren ab Skylake und hat nichts mit dem CPU Takt zu tun hierbei geht es eher um die Frequenz der Echtzeit Uhr. Die Einstellung kannst Du also für Dein Setup getrost ignorieren. FSBFrequency ist gleich zu setzen mit dem Bustakt die Angabe erfolgt in Hz demnach sollten die 20038000 Hz passen die Du ermittelt hast (wobei ich wohl auf glatte 20000000 Hz gehen würde wäre aber zu testen).