@Mork vom Ork danke für dieses ausführlichen und absolut lehrreichen Beitrag.
Problem die RX 480 Powercolour zu installieren
-
- Erledigt
- pawelpipowich
- Erledigt
-
-
Habe auch bereits krampfhaft versucht per GPU-Z auf einer Windows10 portable Installation das BIOS meiner R7 M360 des Ideapad 500 zu sichern, um ggf. die Anleitung einsetzen zu können, aber das vermaledeite VBios lässt sich nicht entnehmen...
-
Das BIOS der R7 M360 sollte sich auch aus einem DOS-Prompt mit ATIFlash heraus sichern lassen. Habe den genauen Befehl nicht im Kopf, boote mal in WINDOWS, rufe ein DOS-Fenster mit "CMD" als Admin auf und wechsel in das Verzeichnis, in dem Du ATIFlash hast.
Die akuelle Version davon findest Du hier. Tippe dann einfach nur ATIFlash.exe ein und Du solltest eine Liste aller Befehle erhalten. Da ist auch einer dabei, mit dem Du das aktuell geflashte VBIOS sichern kannst. Dieses kannst Du dann wie in meiner Anleitung beschrieben nutzen.Sach Bescheid, wenn es damit geklappt hat.
-
Erstaunlicherweise gibt mir atiflash -i einen "Adapter not found" aus.
EDIT:
Auch die "atiflash -i 0" bis "atiflash -i 9" werfen den Hinweis aus. -
Schau mal, ob Du im BIOS "CSM" einschalten kannst. Wenn ja, dann setze es auch auf "Legacy zuerst" - falls Du hier zusätzlich nöch wählen kannst, ob er UEFI oder LEGACY zuerst laden soll.
Hatte ich beim umflashen meiner RX480 auf das BIOS der RX580 neulich ebenfalls. Er war partout der Meinung, es sei keine AMD-Karte im Rechner. Nach der Umstellung hat er sie dann brav erkannt -
CSM habe ich im BIOS des Ideapad nicht,
"Legacy Support" ist verfügbar, hilft aber nicht.
Die USB-Platte ist als UEFI eingerichtet.Nicht vergessen, es handelt sich um eine R7 M360 kombiniert mit der HD520 des i7-6500U.
Der AtiFlash und ATIWinFlash zeigen nichts an, aber der GPU-Z gibt sie sauber aus.Ich muss mich hier auch ausklinken...
Feierabend für heute. -
Vielen Dank für die mühe. Ich muss erst mal lernen wie ich das alles umsetzen kann. Bin erstaunt wie gut man in der materie sich auskennen kann. Hut ab.
Der adapter ist erst heute angekommen. Wenn ich zeit finde, mach ich mich ans werk.
zurzeit habe ich ja eine hd7850oc drin und alles läuft fabelhaft. Hoffe das wenn ich bios update durchführe das auch so bleibt. Falls ich das mit der rx 480 nicht schaffe.
meint ihr die rx 480 wird auch mal oob sein? Oder ist die zu spezifisch?
Mein gedanke ist so das wenn ich das doch nicht schaffen sollte , werde ich einfach warten bis sie oob im update wird . Wenn die zu spezifisch ist dann fang ich lieber jetzt an die rx 480 zu installieren.Danke
-
Eigentlich sollte die RX480/RX460, wenn man mal von der Notwendigkeit absieht die Device & VendorID in den Kext einzutragen, genau so OOB laufen wie die es die HD7850 macht und das macht sie auch wenn man sie zum Beispiel in einen MacPRO 5,1 steckt. Beim MAC gibt es eben dann erst ein Bild wen das OS geladen wurde und vorher bleibt der Schirm schwarz. Wenn man mal ein wenig darüber nachdenkt warum das wohl so ist kommt man schnell auf die Idee das es mit dem Bios auf den Karten zusammenhängen muss denn wenn man eine Karte die kein MAC Bios besitzt in einen MAC einbaut kann der MAC auf Bios Ebene damit nichts anfangen wohl aber sobald das OS den Treiber geladen hat sprich hier liegt also der Schluss nahe das der MAC bzw. dessen Firmware die Karte nicht initialisieren kann (logisch denn das EFI eines MAC´s unterscheidet sich von dem UEFI eines PCs) mit anderen Worten der MAC kann weder den klassischen vBIOS Teil gebrauchen noch den dahinter liegenden UEFI Teil trotzdem meldet sich die Karte als PCIe Gerät am Bus an. Lax gesprochen hat der MAC also auf Firmware Ebene mit einen DisplayController zu kämpfen für den er keinen Treiber hat (GOP) er bindet also das Gerät mit Device und VendorID in den Gerätebaum ein und sobald sich beim Start des OS ein Treiber an das Gerät bindet gibt es ein Bild
Das Verhalten kann man auf einem PC rekonstruieren indem man der Karte ein modifiziertes Bios verpasst (DeviceID im UEFI Teil des Bios wird ausgetauscht) die Karte meldet sich also als PCIe Device an und auch in dem Fall findet das UEFI des Rechners keine passende Firmware dazu (logisch die ID´s im Bios der Karte wurden verbogen) das Ergebnis ist identisch zu dem auf dem MAC sprich black Screen bis das OS den Treiber geladen hat. Demnach muss also das Problem irgendwo in der UEFI Implementation des vBIOS der Karte liegen oder anders ausgedrückt der geladene GOP EFI Treiber der dafür sorgt das die Karte auf UEFI Ebene ein Bild erzeugt verhindert das der OS-X Treiber die Kontrolle über das Gerät übernimmt das Ergebnis ist der bekannte black Screen.
Es gibt hier jetzt natürlich noch den "Trick" über die helper GPU und auch hier wird eigentlich nur vermieden das der GOP Treiber der AMD Karte geladen wird denn das ist ja nicht mehr nötig wenn schon ein Bild ausgeben wird. Der Verbund IntelHD/AMD ist bei Apple im übrigen gar nicht so ungewöhnlich so gibt es ihn zum Beispiel beim iMAC 15.1 und auch bei diversen MacBooks ist eine solche Lösung bekannt. Gerade der iMAC ist hier aber ein besonders interessantes Beispiel denn bei ihm ist die iGPU nur im Hintergrund präsent und tritt erst auf den Plan wenn Airplay oder QuickSync benötigt werden.
Ich denke hier ist einfach noch viel Hirnschmalz in der Community gefragt um zu ergründen warum der GOP Treiber nicht sauber entladen werden kann um die Kontrolle an das OS abzugeben letztlich denke ich ist hier Apple mal ausnahmsweise nicht der Sündenbock denn letztlich kann Apple nichts dafür wie das UEFI des Board mit der Karte interagiert oder eben auch nicht...
-
Ein sehr guter Beitrag Hilft das ganze besser zu verstehen.
Im anderen Forum hatte jemand eine alte Grafikkarte vom alten VBios auf GOP-Bios umgeflasht. Vielleicht ist es ja möglich z.B. eine R9-380X auf R9-280X oder HD 7870 umzuflashen (die soll ja angeblich kein GOP-Bios haben),
um dann keine Helper-Grafik mehr zu brauchen. -
Im anderen Forum hatte jemand eine alte Grafikkarte vom alten VBios auf GOP-Bios umgeflasht. Vielleicht ist es ja möglich z.B. eine R9-380X auf R9-280X oder HD 7870 umzuflashen (die soll ja angeblich kein GOP-Bios haben),
um dann keine Helper-Grafik mehr zu brauchen.Das waren Florian und ich im TMX86 Forum. Florian war so nett und hat mir ein GOP-freies BIOS für die RX480 gebastelt und ich habe es getestet. Leider brachte auch diese Modifikation keine Besserung.
Ich habe dieses GOP-freie VBIOS noch hier... falls es jemand testen möchte. Aber wie gesagt: bei mir brachte es keine Änderung im Verhalten der RX480. -
Ich habe mich heute nochmal genauer der "ati.c" Datei von CLOVER angenommen, in der die AMD Grafikkarten initialisiert werden. Und ich bin wieder einen Schritt weiter gekommen.
Schaut Euch mal meine aktuelle CLOVER Bootlog an (AMD RX480 solo, keine iGPU und CSM disabled im BIOS):Code- 40:846 0:000 === [ RestSetup macOS ] ===================================
- 40:846 0:000 EdidDiscovered size=128
- 40:846 0:000 Inject EDID
- 40:846 0:000 ------- EDID Table
- 40:846 0:000 000 | 00 FF FF FF FF FF FF 00 1E 6D
- 40:846 0:000 010 | 09 5B 65 BC 05 00 09 1A 01 04
- 40:846 0:000 020 | B5 3C 22 78 9F 30 35 A7 55 4E
- 40:846 0:000 030 | A3 26 0F 50 54 21 08 00 71 40
- 40:846 0:000 040 | 81 80 81 C0 A9 C0 D1 C0 81 00
- 40:846 0:000 050 | 01 01 01 01 4D D0 00 A0 F0 70
- 40:846 0:000 060 | 3E 80 30 20 65 0C 58 54 21 00
- 40:846 0:000 070 | 00 1A 28 68 00 A0 F0 70 3E 80
- 40:846 0:000 080 | 08 90 65 0C 58 54 21 00 00 1A
- 40:846 0:000 090 | 00 00 00 FD 00 30 3D 87 87 38
- 40:846 0:000 100 | 01 0A 20 20 20 20 20 20 00 00
- 40:846 0:000 110 | 00 FC 00 4C 47 20 55 6C 74 72
- 40:846 0:000 120 | 61 20 48 44 0A 20 01 0F
- 40:846 0:000 VendorID = 0x1E6D
- 40:846 0:000 ProductID = 0x5B09
- 40:846 0:000 ------- New EDID Table
- 40:846 0:000 000 | 00 FF FF FF FF FF FF 00 6D 1E
- 40:846 0:000 010 | 09 5B 65 BC 05 00 09 1A 01 04
- 40:846 0:000 020 | B5 3C 22 78 9F 30 35 A7 55 4E
- 40:846 0:000 030 | A3 26 0F 50 54 21 08 00 71 40
- 40:846 0:000 040 | 81 80 81 C0 A9 C0 D1 C0 81 00
- 40:846 0:000 050 | 01 01 01 01 4D D0 00 A0 F0 70
- 40:846 0:000 060 | 3E 80 30 20 65 0C 58 54 21 00
- 40:846 0:000 070 | 00 1A 28 68 00 A0 F0 70 3E 80
- 40:846 0:000 080 | 08 90 65 0C 58 54 21 00 00 1A
- 40:846 0:000 090 | 00 00 00 FD 00 30 3D 87 87 38
- 40:846 0:000 100 | 01 0A 20 20 20 20 20 20 00 00
- 40:846 0:000 110 | 00 FC 00 4C 47 20 55 6C 74 72
- 40:846 0:000 120 | 61 20 48 44 0A 20 01 0F
- 40:846 0:000
- 40:846 0:000 ••••• Initialize RADEON card •••••
- 40:846 0:000
- 40:846 0:000 Framebuffer @0xC0000000 • MMIO @0xD0000000 • I/O Port @0x0000E000 • ROM Addr @0xDFE40000
- 40:846 0:000 PCI region 1 = 0x00000000, region3 = 0x00000000, region5 = 0xDFE00000
- 40:846 0:000 Use region5 as MMIO space
- 40:846 0:000
- 40:846 0:000 ••• Begin BIOS_SCRATCH •••
- 40:846 0:000 BIOS_0_SCRATCH=0x00000000, 1=0x00000000, 2=0x00000003, 3=0x00000000, 4=0x00000000, 5=0x00000000, 6=0x00000000
- 40:847 0:000 ••• End BIOS_SCRATCH •••
- 40:847 0:000
- 40:847 0:000 ••• Beginn CARD POSTED/NOT POSTED •••
- 40:848 0:000 RADEON_CRTC2_GEN_CNTL == 0x00000000
- 40:848 0:000 Card posted because CONFIG_MEMSIZE = 0x2000
- 40:848 0:000 ATI card POSTed
- 40:848 0:000 ••• End CARD POSTED/NOT POSTED •••
- 40:848 0:000
- 40:848 0:000 ••• Initializing VRAM •••
- 40:848 0:000 ATI Chip Family is: Ellesmere
- 40:848 0:000 R600: get_vram_size returned 0x2000
- 40:848 0:000 Set VRAM for Ellesmere = 8192MB
- 40:848 0:000 ATI: get_vram_size returned 0x2000
- 40:848 0:000 ••• VRAM successfully initialized •••
- 40:848 0:000
- 40:848 0:000 ••• Load VBIOS File •••
- 40:848 0:000 Found generic VBIOS ROM file (1002_67DF.rom)
- 40:849 0:001 Loaded ROM len=262144
- 40:849 0:000 Calculated ROM len=58880
- 40:849 0:000 VideoBIOS read from file
- 40:849 0:000 ••• VBIOS File successfully loaded •••
- 40:849 0:000
- 40:849 0:000 ••• ATI RADEON Chipfamily •••
- 40:849 0:000 ATI Radeon EVERGREEN+ family
- 40:849 0:000 ••• ATI RADEON Chipfamily •••
- 40:849 0:000
- 40:849 0:000 ••• Various CONFIG values •••
- 40:849 0:000 Device's default Framebuffer: Orinoco
- 40:849 0:000 Device's default Nr. of ports: 5
- 40:849 0:000 ATI returned Nr. of ports: 5
- 40:849 0:000 Value of name_parent is set to: ATY,OrinocoParent
- 40:849 0:000 ••• Various CONFIG values •••
- 40:849 0:000
- 40:849 0:000 ••• ATI Custom Properties detected •••
- 40:849 0:000 Custom Properties Key: name • Custom Properties Value: <4154595F> • Custom Properties Value Length: 8
- 40:849 0:000 Custom Properties Key: device_type • Custom Properties Value: <6770752D> • Custom Properties Value Length: 15
- 40:849 0:000 ••• ATI Custom Properties injected •••
- 40:849 0:000
- 40:849 0:000 ATI CHIP FAMILY: Ellesmere • CARD NAME: AMD Radeon RX480/580 • VRAM: 8192MB • FRAMEBUFFER: Orinoco • VENDOR-/DEVICE-ID: 1002:67DF • SUBSYSTEM-ID: 1DA2:E366 • PciRoot(0x0)\Pci(0x1,0x0)\Pci(0x0,0x0)
- 40:849 0:000
- 40:849 0:000 ••••• Initialize RADEON card •••••
- 40:849 0:000
- 40:849 0:000 RCBA disabled; cannot use it
- 40:850 0:000 stringlength = 3600
- 40:850 0:000 CurrentMode: Width=3840 Height=2160
- 40:850 0:000 Beginning FSInjection
- 40:850 0:000 Blocking kext caches
Wie man sehen kann, wird der VRAM nun an allen Stellen korrekt ausgelesen und gesetzt! Ich muss meine Änderungen an der Datei jetzt nur noch dahingehend prüfen, das die Änderungen
das problemlose Auslesen des VRAMs bei älteren Karten nicht beeinflusst - ich teste das mal mit einer AMD R9 280X und melde mich dann nochmal. -
Ich hatte unter 10.12.1 die rx480 recht flott mit voller Unterstützung zum Laufen gebracht. Das will mir irgendwie nach dem Update auf 10.12.5 nicht gelingen.
Ich habe die ID der RX480 in den beiden Kexten 4100 und Controller hinzugefügt. Da ich aber wohl ein Framebuffer Problem habe (komisch, dass ich das bei 10.12.1 nicht hatte - habe ich auch den Patch von Mork vom Ork angewandt und kämpfe weiterhin mit dem Problem. Meine 2 Monitore sind via HDMI und DVI angeschlossen und leider habe ich gerade kein DP to HDMI Kabel hier.
Vielleicht hab ich aber auch einfach irgendwas übersehen, könnte mal jemand über meine config sehen?
//edit
Ohne die Framebuffereinträge klappt es dann doch - was ja auch logisch ist. Ich will ja per HDMI ansteuern... Aber wie kann ich jetzt überprüfen ob auch alle 36 Units angesteuert werden? -
Es wird nur noch ein paar Tage bis 10.12.6 dauern - das kann aufgrund des neuen iMac 36CUs ohne Patch. Die Mühe mit 10.12.5 würde ich mir nicht mehr machen.
-
griven
Hat das Label Erledigt hinzugefügt