ATI Radeon HD 4850 1GB SD über DSDT @Yosemite

  • Hallo allerseits,


    könnte mir bitte jemand behilflich sein die in der Überschrift genannte Karte über dsdt zum Laufen zu bewegen? Ich schraube bereits seit Tagen dran rum aber irgendwie klappt keine Lösung die ich finden konnte :-(


    Die Karte funktioniert oob mit einem Injector geladen über CLOVER, aber HDMI Audio will nicht, weder über Injector noch mit z.B. hdmiaudio.kext etc.


    Sonst funktioniert alles andere oob, ganz ohne irgendwelche Kexte zu patchen etc.


    Mein Board: Gigabyte EP45-DS5



    Was ich bisher gemacht habe:


    - dumped dsdt und patched mit diversen Sachen für mein Board(siehe angehängte dsdt)
    - notwendige Kexte nach /EFI/CLOVER/kexts/10.10/ kopiert (LegacyAMD4800Controller.kext, FakeSMC.kext, RealtekRTL81xx.kext, ApplePCIIDE.kext)



    ioregdump auch angehängt(über cloud da hier zu groß): https://mega.nz/#!MZ1WBYbL!9Hr…TapCeDphJGLggwb-9mCcktOWQ



    Wenn ihr noch was brauchen solltet einfach schreien :) ich verzweifle hier noch am dsdt ;-)




    Vielen Dank an alle

    Dateien

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

  • schon mal den QE_CI Exotic Patch für OS X Yosemite 10.10.5 und HD48xx Karten probiert?


    falls nicht hier

    LG keiner99

  • Also ich habe hier ne 4870 herumfliegen und die will auch nicht so recht mit HDMI Audio. Das Problem bei meiner Karte ist das ich keinen HDMI Port habe. Falls du einen hast könnte es einfacher werden aber ich dir gebe keine Garantie. Und wenn nicht musst du dir einen bestimmten DVI-HDMI Adapter holen. Du musst dich auch noch mit dem patchen des AMD Framebuffers auseinander setzen, sonst wird das nichts.


    keiner99 : Ist das nicht nur für Karten die nicht laufen wollen ? Meine läuft z.B. OOB aber halt ohne Ton.


    djmastera2000 : Ich sehe in deiner DSDT nichts von der Grafikkarte. Könntest du da mal bitte einen Dump mit MaciASL mit "New from ACPI -> DSDT" machen ? Und du brauchst die 2 zusätzlichen ATI Kext nicht. Ich meine du kannst das einfach damit regeln, indem du in deine config.plist einfach unter "Devices" bei "Fake ID" im ATI Feld "0x94401002" eingibst. Kannste auch im Auswahlbildschirm des bootloaders unter Graphics Injection erstmal testen. Und laut der ioreg musst du den MotMot Framebuffer patchen. Dort sieht man auch noch das MotMot@1 als "connector-type = 0x400" angesehen wird. Das heiße soweit ich mich erinnern kann das es sich hier um einen DVI-D port handelt und somit der Port unbedingt gepatcht werden muss. Der MotMot@0 Port ist als DP deklariert. Das heißt im Endeffekt das die Karte unter der Standart MotMot-Framebuffer config läuft. Es wäre gut wenn du hier ein Bild hochladen könntest welches zeigt was für Ports du genau hast oder alternativ den genauen Namen deiner Karte.

    3 Mal editiert, zuletzt von thokis ()

  • djmastera2000, erstmal herzlich willkommen in unserem deutschen Forum.
    :allewillkommen:


    Bitte trage deine verbaute Hardware in deine Signatur. So können wir dir besser helfen, bzw. müssen nicht immer nach oben scrollen.
    Audio über HDMI: Der VooDoo-Sound.kext müßte doch sofort das Audio-Signal über HDMI ausgeben.

  • Hallo Hobbit und danke für die nette Begrüßung :)


    Mach ich gleich...


    Ja hm Voodoo übernimmt aber auch gleich die ganze Soundkarte, das möchte ich eig auch nicht.


    Denn meine OnBoard Soundkarte funktioniert über dsdt bereits mit original Apple Kexten...ich habe keinerlei Kexte eingebunden, alles geht soweit oob, ausser die o.g. Kexte, die über CLOVER geladen wurden...das System ist also vollkommen Vanilla ;-)



    @keiner99


    Danke für den Versuch, aber nochmal genauer lesen bitte :-)


    Diese Karte läuft oob, out of the box und zwar komplett, mit original Apple Kexten, nur mit Injector, da muss nix gepacht werden ;-)



    @thokis


    Meine Karte hat 2 DVI Ports, und ich habe auch den originalen DVI2HDMI Adapter dran, damit funktioniert HDMIAudio über Windows...


    Was ich vor habe ist die Injektion über dsdt zu machen, damit wir HDMIAudio angehen können...in der aktuellen dsdt habe ich noch keine gfx Einträge,
    da wie gesagt aktuell über kext Injector betrieben wird...


    EDIT: ich injektiere die Karte mit dem angehängten Kext, damit läuft die Karte oob, damit nicht über CLOVER...über CLOVER hatte ich mit ATIinject und FakeID ein schwarzes Bild, bereits mehrere Versuche gestartet.Von der Karte kann ich aktuelle kein Bild machen, weiss auch nicht genau welche das ist, aber hat 2 DVI Port und ID 0x94421002.



    Anbei die dsdt über MaciASL...


    @All


    Primäres Ziel ist erstmal die Karte über dsdt zu injektieren...HDMIAudio kommt dann dann, denn ohne gfx in dsdt kein HDMIAudio(über dsdt).

    Dateien

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

    3 Mal editiert, zuletzt von djmastera2000 ()

  • Ok könntest du nochmal eine Vanilla DSDT hochladen. Mit Clover einfach im Auswahlbildschirm F4 drücken. Die findest du dann in dem /ACPI/origin Ordner.


    Und deine DSDT werd ich mal versuchen mit dem EP45-UD3P Patch zu fixen. Du hast in deiner aktuellen einen Fehler drin den ich nicht fixen kann. Die kannst du rein theoretisch schon testen wenn es nicht Funken sollte mache ich das noch mal mit der Vanille DSDT. Und gefährlich daran ist vermutlich auch nichts ( Ich übernehme aber keine Garantie ) Da ich gerade mal nachgeguckt habe und dein Board sich nur vom EP45-UD3P in der Anzahl der SATA-Ports unterscheidet.


    Und versuch es mit dieser DSDT trotzdem mal bitte ohne die 2 ATI Kext da ich vermute das diese auch Probleme machen können. Und wie hast du deine AppleHDA geregelt ? Kannst du auch noch deine
    config.plist hochladen ?


    Und ich werd mal das Experiment mitmachen. Ich werd mir die HD 4870 einbauen und mit dir versuchen den HDMI Sound hinzukriegen.

    Dateien

    Einmal editiert, zuletzt von thokis () aus folgendem Grund: DSDT vergessen

  • Danke schon mal für deinen Einsatz! :danke:


    Aber in meiner gepachten dsdt vom ersten Posting dürfte kein Fehler drin sein, wo meinst genau bzw. wo soll der Fehler sein bzw. zu welchem Fehlverhalten soll dieser führen?


    Und ja ich hab eine originale dsdt, nur komme ich seit 5min nicht mehr per Remote auf meinen Rechner, bin aktuell nicht zuhause...kann das also erst später erledigen...evtl. bist du heute Abend/Nacht online, dann können wir testen bis der Arzt kommt ;-)


    Wie gesagt, ich nutze keine Kexte, nur den einen Injector für die ATI Karte...das ist kein Treiber sondern nur ein Kext mit plist...oder welche 2 Kexte meinst du genau?


    Grundsätzlich sind unsere Karten mehr oder weniger gleich, gleicher Chip, nur andere Timings und Speicher mehr/weniger, somit düfte für uns die gleiche Lösung gelten, finde super dass du da mitmachst...thx

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

  • Achso hab mich versehen dachte die letzte Kext wäre auch irgendwas mit AMD hab aber gerade gesehen das es irgendwas mit IDE ist :whistling: .
    Wenn du willst kannst du ruhig weiter das Dingen benutzen. Dann warten wir halt bis heute Abend da können wir das dann machen. Die Fehler kann man sehen wenn man in den Einstellungen von MaciASL unter "iASL" die ACPI 5.0 Compiler Version auswählt. Ist besser damit zu compilieren soweit ich es verstanden habe.

  • Ja, hehe ich hab noch einen IDE Brenner verbaut(der verrichtet seine Arbeit noch prima, warum neuen holen), der hängt am IDE Port, deshalb muss ich IDE auch injecten ;-)


    Also wie gesagt, die dsdt im ersten Post habe ich sauber gepacht für das Board, solltest du was finden was fehlt sag bescheid :)


    Hast du schon einen ATI gfx dsdt patch schon fertig oder wie?

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

  • So war grad eben Mittag essen :P


    Ja der ist soweit fertig aber falls der nicht funktionieren sollte kann ich das nochmal mit der Vanilla DSDT machen. Und ich bin sogeschen schon fertig mit dem Framebuffer patch, aber es ist so wie ich es erwartet hatte. Ich hatte das hier schonmal versucht und es ist einfach unbefriedigend. Wenn du nur einen Display benutzt funktioniert es super aber wenn man 2 Bildschirme benutzen möchte kommen die Probleme. Es gibt zufällig Ruckler beim bedienen der Maus und das ist meiner Meinung nach nicht zu gebrauchen. Dazu kommt auch noch das ich den HDMI-Stecker des Receivers ( da kommt der Sound hin ), nach dem ich in OS X gebootet habe, einmal raus und wieder rein stecken muss damit der erkannt wird. Mache ich das nicht erkennt er den Audioausgang, aber das Bild wird gespiegelt. Es ist wirklich komisch zu erklären aber OS X denkt es wäre nur ein Monitor angeschlossen und schickt einfach an beide Ausgänge das selbe Signal. Und das Audiosignal kommt erst garnicht beim Receiver an ohne den rein/raus Trick. Die einzige alternative wäre ein aktiver HDMI-Splitter das wären dann so ca. 20 Euro zur Fehlerbehebung.


    Du kannst es aber trotzdem mal probieren und gucken was dabei rauskommt. Ich habe auch noch vergessen zu erwähnen, dass man nur an einen Port HDMI-Sound ausgeben kann, egal wie man den Framebuffer patcht. Laut DPCIManager haben aber die 4850 und die 4870 den gleichen Audiochip was auch zu erwarten war. Deswegen vermute ich einfach mal das selbe verhalten bei deiner Karte.




    Ich füg hier einfach mal auch den patch als Code ein damit du das Zuhause übernehmen kannst. Du musst gegebenenfalls die SenseID umändern sonst sehe ich da keine Fehler im patch. Aber vielleicht erkennt ja jemand im Forum einen Fehler :)


    Und als Dateianhänge nach die Resultate aus dem BIOS Decodern und das Textdokument in dem ich den Framebuffer bearbeitet habe.


    Code
    1. //Original// 0004000004010000000100001000020304000000140200000001000001110104
    2. //Patched// 0400000014020000000100000000010300080000040200000001000000100204



    EDIT: Da ich ja sehe das du deinen Mac als so ne Art Workstation benutzt wäre es vielleicht auch ne Option auf eBay nach bisschen älteren Grafikkarten zu suchende z.B. eine GTX 280/285 oder ähnliches.

    Dateien

    • 4870.zip

      (1,78 kB, 58 Mal heruntergeladen, zuletzt: )

    Einmal editiert, zuletzt von thokis ()

  • Hm, eig will ich an den originalen Kexts nichts patchen...das ist auch sehr seltsam dass es überhaupt nötig sein soll, lt. diverser Foren haben welche mit dsdt Erfolg gehabt, halt nicht mit einer 4800er Reihe sondern alles darüber(bezogen auf HDMIAudio)...


    Irgendwelche Lösungen die zusätzliche HW erfordert kommt nicht in Frage, macht auch kein Sinn in meinen Augen ;-)


    Jetzt muss ich aber mal peinlicherweise fragen was ich damit jetzt anfange? Ich habe bisher entweder direkt die aml gepatcht oder über fertige Patchscripte in txt Form...hilf mir mal auf die Sprünge bitte :)


    Aber mal HDMIAudio erstmal beiseite: wir brauchen erstmal einen sauberen dsdt Eintrag für die GraKa, damit wir keine Injectors brauchen und Vanilla fahren können, HDMIA kommt danach...und daran scheitert es schon bei mir...sprich wir benötigen erst einmal einen Patchscript um die dsdt mit der Karte zu füttern...


    PS: Meine Karte hat auch HDMIA: 0xaa301002

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

  • Ja das habe ich ja schon eingebaut in deine DSDT. Und das patchen kann Clover on-the-fly machen. Du musst wirklich keinen einzige Kext bearbeiten nach meiner Methode. Und das im DSDT ist technisch gesehen auch ein Inject. Anders kann auch OS X nicht den Framebuffe an eine Karte koppeln. Ich habe dir die so aufgebaut das du halt mit der Fake-ID ATI Option alles parat hast. Dort musst du halt nur "94401002" eintragen und das wars. Und unter "Kernel and Kext Patches" kannst du die Framebuffer Änderung von mir eintragen bzw. musst die umändern falls es nicht klappen sollte.


    Und mit dem nur DSDT HDMI Audio hast du zum Teil recht. Bei NVIDIA muss man sich damit überhaupt nicht herumschlagen. DSDT editieren und fertig ist die Sache. Und bei einigen AMD Grafikkarten ist das auch der Fall. Es klappt aber nicht bei Grafikkarten die eine andere Besetzung der Ports haben. Laut dem "MotMot" Framebuffer sollte eine Karte der 4800 Series mit der Device-ID 0x9440 oder 0x944a nur einen Displayport und eine DVI Schnittstelle besitzen. Das ist von Apple so vorgegeben. Manchmal funktioniert eine "nicht Apple" Grafikkarte damit auch, dass ist aber eher dem Zufall geschuldet das DVI und HDMI sich sehr ähnlich sind ( ich weiß aber nicht wie es mit DisplayPort aussieht), aber halt manchmal auch nicht. Und um das zu umgehen gibt es zwei Alternativen. Entweder man benutzt den generierten RadeonFramebuffer oder man patcht einen vorhandenen Framebuffer. Andere Wege gibt es da nicht. Und weil mit einer ATI/AMD Radeon unter OS X kein Sound über DVI übertragen wird, ist es auch logisch das die Grafikkarte ohne gepatchten Framebuffer keinen Sound ausgeben wird. Und mit dem generischen RadeonFramebuffer wird es auch nicht klappen weil dieser anhand der Ports 2 x DVI an OS X übergeben wird, also somit auch keinen Sound.


    EDIT : Beim Fake-ID zeugt muss das ohne "0x" eingegeben werden. Hab ich gerade selber getestet.


    EDIT2: Und um ganz genau zu sein habe ich diesen Bereich nochmal mit nem simplen ATI/AMD Injector gepatcht


    Einmal editiert, zuletzt von thokis () aus folgendem Grund: ergänzt

  • @thokis


    OK, um das nochmal genauer durchzuleuchten wäre es glaub ich praktisch wenn wir dann per Messi gewisse Sachen bequatschen, sonst tippen wir uns hier tot...was sagst du? Die Lösung, sollten wir eine finden, stellen wir eh hier rein...


    CLOVER: nur ATIinject aktivieren und FakeID eintragen? Oder noch mehr? btw. meine ID ist 0x94421002 ;-)


    Und meinst du hast das bereits in dsdt eingebaut vom Posting 13:30? Also nur den gfx Part eingebaut oder noch was anderes geändert? Wärst du so nett und würdest hier als Code nur den eingefügten Part posten? Also nur was die GreKa angeht...danke :)


    EDIT: lt. Screenshot also Device PEG0 und HDAU...klasse danke

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

  • Nee du musst die Fake-ID "94401002" eingeben. Damit gaukelt CLOVER OS X deine Grafikkarte als eine andere vor. Deswegen die ID einsetzen. Und Injector brauchst du nicht. Der ist ja schon in der DSDT.

  • Ah verstehe...ok wird nachher getestet danke...


    EDIT: was anderes: ist es nicht möglich mittels dsdt OSX beizubringen dass meine Karte 2 DVI Ports hat und nicht 1 DP und 1 DVI lt. FB? Oder hat Apple das wirklich so im FB fest definiert?

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

    Einmal editiert, zuletzt von djmastera2000 ()

  • Nee ist meines Wissens nach nicht möglich. Entweder Framebuffer oder generisch. Sonst gibts da nichts.

  • Die GraKa geht mit dem Patch nicht, keine Beschleunigung und schlechte Auflösung...


    PS: deine aml geht auch nicht, crash...hab den relevanten Teil in meine einkompiliert...

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

    Einmal editiert, zuletzt von djmastera2000 ()

  • Ok funktioniert es den nun ? Dann musst du halt mit CLOVER Injecten ( was überhaupt nicht schlimm ist ) und das mit der Fake-ID machen.

  • Nein, mit deinem Patch leider nicht...und wenn wir die GraKa nicht mit dsdt injecten, kriegen wir HDMIAudio nicht ans laufen...


    EDIT: ATIInject über CLOVER mit FakeID 94401002 funktioniert, kein Kext mehr nötig, danke...aber ich glaub so bekommen wir HDMIAudio nicht an laufen, sehe ich das richtig?

    Workstation: Gigabyte EP45-DS5, 8GB A-Data vitesta Extreme Edition DDR2-800+ RAM, C2D E8400@3Ghz, XFX Radeon HD 6870 1GB (0x67381002)

    Einmal editiert, zuletzt von djmastera2000 ()

  • Nee das funktioniert noch immer die HDAU ist ja jetzt in der DSDT drin. Könntest du bitte mit dem DPCIManager die ROM deiner Grafikkarte auslesen und hier hochladen. Wenn du das Programm öffnest siehst du links so ein Auge. Das klickst du an und dann kannst du die ROM abspeichern.


    Willst du denn nun nur einen oder 2 Bildschirme benutzen ?