Jump to content
Sign in to follow this  
Followers 0
rio2

[Patch] AppleHDA working on Ryzen

6 posts in this topic

Recommended Posts

How to make AppleHDAController load on Ryzen boards?

  • Rename(/add) your audio controller to your DSDT/SSDT as HDEF
  • Add a _DSM method to your HDEF device with layout id 1
  • Patch the AppleHDAController binary, because it has a static table containing the supported PCI Vendor/DeviceID pairs and it also checks the VendorID against known values. As an example I provide a dif file and patched 10.13.3 binary, but if you want to I can patch the binary for other versions.

 

After AppleHDAController loads to actually get sound working you need to patch AppleHDA.kext for the codec on your board. First I tried to use Lilu+AppleALC for this task, but for some reason it refused to work. (I might look into it later why) But for the time being it was easier to use toleda's cloverALC script for that, but to make it work I had to change(/remove) the specified location of the HDEF device from the script. And for some reason it also required me to mount the EFI partition manually.

 

Change this:

if [[ $(cat /tmp/HDEF.txt | grep -c "HDEF@1") != 0 ]]; then

Into this:

if [[ $(cat /tmp/HDEF.txt | grep -c "HDEF") != 0 ]]; then

 

AppleHDAController_Patched10.13.3

AppleHDAController-10.13.3-AMD.bdiff

Edited by rio2
wording

Share this post


Link to post
Share on other sites
Advertisement
13 hours ago, XLNC said:

will this work on FX boards ?

I don't own any FX hardware so I can't test it, but it should work. Although the PCI device ID might need changing in the binary. If you can tell me the Vendor and Device ID of your HDEF device from IOReg I could try making a binary patched for FX.

Share this post


Link to post
Share on other sites
2 hours ago, XLNC said:

sure ! here is my ioreg attached . 
and btw i am using sierra 10.12.6 .

xlnc.ioreg.zip

Can you please attach the unmodified AppleHDAController binary from 10.12.6, because I don't have Sierra installed anymore?

(EDIT: I can't open your IOReg dump, please use IORegistryExplorer 2.1 (attached)

IORegistryExplorer_2.1.zip)

EDIT: dump opens fine in IOReg 3.0.2

Edited by rio2

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

Announcements

  • Similar Content

    • By S.N
      Hi all!
       
      This is my modded Powermac budget/mid workstation. Mainly for Linux dev work. Triple boot: Ubuntu, MacOS (openCore), Windows.
       
      SPECS:
      AMD Ryzen 5 3600X MSI B450M MORTAR MAX HyperX 32GB (2x16GB) 3200MHz CL16 Fury Sapphire RX 5500XT 4GB Seasonic Focus GX 650W 80 Plus Gold ADATA 512GB XPG SX8200 Pro (MacOS/openCore) ADATA 256GB XPG SX8200 Pro (Ubuntu) Crucial BX500 120GB SATA (Windows) be quiet! Shadow Rock 3 120mm be quiet! Pure Wings 2 PWM 80mm 4 x be quiet! Pure Wings 2 PWM 92mm ASUS BT400 Bluetooth 4.0 USB  
       

       

       

       
       
       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       
       
       
    • By ThomasMattOnline
      Hello Everyone,

      Trying to get Hardware Acceleration working on my Hackintosh (HEVC Support) however I am such a noob, OpenCore is very new to me and would love some support.
      I have included screenshots and the EFI that is currently working on my System, I have USB 2 & 3.0 all working, however, the only thing I can fault is my GPU not being hardware acceleration enabled.

      Final Cut Pro X - Recognises GPU
      VideoProc - Doesn't recognise anything.
       
      (I am running the latest version of OpenCore 0.5.9)

      Things I've tried: I tried following the post https://www.tonymacx86.com/threads/catalina-10-15-2-update-lost-hevc-h265-acceleration.288563/ - No Luck
      I have also tried: https://forums.macrumors.com/threads/activate-amd-hardware-acceleration.2180095/page-53?post=28255048#post-28255048 - No luck either!

      My friend online tells me I shouldn't need such Kext as he has the same build as me but when I load his EFI on my system it boots with no USB 2 or 3.0 (I'm keeping his EFI off here as I've uploaded mine.)

      Please note: I appreciate all (any) pieces of advice and please do bear in mind that I am a noob and may need whatever you say simplifying as I can get easily confused.


      config.plist

    • By miliuco
      Radeon RX 580 8 GB graphics card on macOS High Sierra (as of 10.13.6), Mojave and Catalina on the P55-USB3 board: excellent performance with acceleration (Metal) OOB, no need for drivers (kexts), with 3 drawbacks, one has to do with the boot of the operating system (a solution is proposed), another with the number of rear connectors enabled (a solution is proposed) and another that only affects to one phase of the Mojave or Catalina installation (without clear solution for now).

      I have placed the XFX AMD Radeon RX-580 P8DFD6 8GB Triple X Edition GDDR5, 256BIT, DVI + HDMI + 3DP graphics card on a 10 year old motherboard (Gigabyte P55-USB3) in order to update the hackintosh to 10.14 Mojave and 10.15 Catalina because the card that I have used in past years, Nvidia Geforce GTX 750 1GB, has stopped working after 10.13.6 High Sierra since this was the last version for which Nvidia published the alternate web drivers that were necessary for the card to work well with graphic acceleration.

      The new RX 580 card needs considerably more space than the old one although it fits perfectly in an ATX case, and requires an additional power connector. It has 2 big fans that most of the time are stopped, at least in my case. In macOS it works perfectly, even with Metal acceleration, without additional drivers and without extra settings in Clover. But it has drawbacks that I comment below.

      Alterations during startup

      During the boot of the operating system, when the screen goes from the basic driver to the AMD driver, 2 artifacts appear randomly, they are very short in duration (from one to a few seconds):
      Very short flashing white screen that may or may not be accompanied by purple lines The fans runs for a few seconds (the noise is clearly audible). This behavior is solved with the installation of 2 kexts, Lilu and WhateverGreen. Lilu is an extension created by acidantheraand vit9696 among others whose function is to help to patch kexts, processes and libraries during macOS boot. It is accompanied by specific plugins for the task required, for example WhateverGreen that injects necessary patches for certain AMD, Intel and Nvidia graphics cards. It is mandatory to have both extensions together, one of them separately does not correct the problem.
      I have installed Lilu 1.4.4 and WhateverGreen 1.3.9 in the EFI/CLOVER/kexts/Other folder of the EFI partition and artifacts have disappeared. Remember that these 2 extensions are not necessary for the card to work properly, if you tolerate those very brief distortions of the screen or the noise of the fans running for a few seconds, you can live without Lilu and WhateverGreen.

      Note: authors recommend that when using Lilu and WhateverGreen with Radeon cards, NO graphic settings have to be added to Clover (Inject ATI, etc.).

      Note: these alterations, especially the brief white screen and less frequently purple lines and fan noise, are also seen in Windows and some real Macs with the same card.

      Alteration during macOS installation

      Boot from USB > Clover menu > Install macOS from Install macOS Catalina > screen works fine
      Boot from USB > Clover menu > Install macOS from MacintoshHD > black screen
      Booting from USB > Clover menu > Boot macOS from MacintoshHD > screen works fine.

      In the first and third stages, screen works fine. In the second stage the screen goes black although the installation continues. The user has nothing to do at this moment so you can leave the PC working until the Clover menu is shown again, the screen is recovered, the initial account options can be configured and you can enter into the newly installed system with correct resolution and acceleration.
      This behavior is not corrected even by placing Lilu and WhateverGreen into the USB device. At least in my case I have not found a solution for it. Yo can install macOS perfectly with that drawback of not seeing how it progresses during the second phase of the installation.

      Only 2 connectors of the 5 available work

      This card has 3 Display Port (DP) ports, 1 HDMI port and 1 DVI port. In my case, only 2 DP work, those that are further from the HDMI connector. It is enough if you use a single monitor or 2 monitors that can be connected by DP. But if you want to have 3 or more connected devices or some of them only have HDMI, it is necessary to enable the 5 connectors or at least 4 of them since the DVI is obsolete and does not allow resolutions as high as DP and HDMI.
      User foxbox has proposed a solution in a thread titled [Solved] Sapphire RX 580 Nitro + SE | black screen on HDMI and DVI. Must inject from Clover a modification to the Orinoco framebuffer (which is used in the RX 580 card) so that the 5 connectors lack a fixedly assigned address and, instead, receive it dynamically. This change is made from the KextsToPatch section of Clover. Read the post from foxbox.
      This has to be accompanied by 3 changes in the Graphics section of Clover: Orinoco in FB Name / Inject ATI / 5 in Video Ports. I have tested this solution in macOS Catalina and it effectively enables the 5 ports of the card but, since I only use 1 monitor, I have removed it and I am with Lilu and WhateverGreen.
       

    • By Tristana
      Hello, and thank you for your help!
       
      Ever since installing my new Sapphire Radeon Pulse RX580, I've been having issues with audio freezing up for the whole system- seemingly the coreaudiod process crashing / my USB audio interface not working. It feels random but seems to correlate with playing youtube videos, streaming audio in Finder, playing sound files from chat clients like Telegram/Discord and such. The system otherwise works as normal, with only audio related functions breaking. Sometimes instead of a full freeze / crash, the sample rate of audio will just drop significantly, causing a lot of aliasing.
      I followed this guide here, though it is outdated and some KEXTs have been merged with WhateverGreen. The shikigva=4 & -rad4200 boot arguments weren't available in WhateverGreen so I didn't add any boot arguments.
      https://hackintosher.com/guides/fix-rendering-issues-fcpx-high-sierra/
       
      My issue was not fixed by this. I also learned that USBInjectAll hadn't been given a custom SSDT and so I made one, which I have included at the end of this post. I also disabled the 15 port patch which had been left on. My USB ports now show up properly (though I've excluded my mobo's type-c port to meet the 15 port limit). My audio issues still have not been fixed, though.

      On High Sierra, the crash was irrecoverable- opening sound in system prefs just froze up, and I have to reset the system to get audio back. In Catalina, I seem to be able to choose a different audio device then go back to my external interface to reset the driver and get sound back.

      Thank you for any help / ideas you can offer!

      UPDATE: Issue still persists. I'm now using a USBPorts.kext created by Hackintool and have updated my list of current kexts below.

      System:

      Kexts:


       
       
    • By heiza
      Ryzen 7 2700X
      ASUS Prime X470 Pro
      32GB G.Skill Ripjaws V DDR4-3200
      ASRock Phantom Gaming Vega 56
       
      My motherboard doesn’t have an option for 4G encoding. And boot modes are listed as ”Windows UEFI Mode” and “Other OS”.
       
×