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.
if [[ $(cat /tmp/HDEF.txt | grep -c "HDEF@1") != 0 ]]; then
if [[ $(cat /tmp/HDEF.txt | grep -c "HDEF") != 0 ]]; then
Being asked to add support for Realtek's Fast Ethernet PCIe NICs to my RTL8111 driver I got tired of answering the same old question again and again so that I finally decided to write a separate driver for these chips and to make a few of you guys and gals happy.
As of now the driver supports the following members the RTL810X Fast Ethernet family:
Here is a list of the driver's basic features:
Supports Sierra (maybe El Capitan).
64 bit architecture only.
Support for multisegment packets relieving the network stack of unnecessary copy operations when assembling packets for transmission.
No-copy receive and transmit. Only small packets are copied on reception because creating a copy is more efficient than allocating a new buffer.
TCP, UDP and IPv4 checksum offload (receive and transmit).
TCP segmentation offload under IPv4.
Support for TCP/IPv6 and UDP/IPv6 checksum offload.
Supports Wake on LAN.
Support for Energy Efficient Ethernet (EEE) which can be disabled by setting enableEEE to NO in the drivers Info.plist without rebuild. The default is YES.
The driver is published under GPLv2.
Built using Xcode 4.6.3.
Version 2.0.1 (2018-05-10):
Fixes a problem with retrieval of the permanent MAC address on some chips.
Version 2.0.0 (2017-04-04):
Uses Apple's private driver interface introduced with 10.8.
Adds support for the RTL8107E.
Supports packet scheduling with QFQ.
Adds support for flow control and EEE.
Version 1.0.0 (2014-05-24):
First offical release.
Before you install the driver you have to remove any installed driver for RTL810X.
Goto /S/L/E and delete the old driver.
Recreate the kernel cache.
Open System Preferences and delete the corresponding network interface, e. g. en0. If you forget this step you might experience strange problems with certain Apple domains, iTunes and iCloud later.
Install the new driver and recreate the kernel cache.
Open System Preferences again, select Network and check if the new network interface has been created automatically or create it manually now.
Configure the interface.
Make sure you have followed the installation instructions especially when you have issues with certain domains while the others are working fine.
Use the debug version to collect log data when trying to track down problems. The kernel log messages can be retrieved with "grep kernel /var/log/system.log" in Terminal. Starting from Sierra use "log show --predicate "processID == 0" --debug" in order to retrieve kernel logs. Include the log data when asking for support or giving feedback. I'm an engineer, not a clairvoyant.
Don't copy and paste large amounts of log data to your post. Create an archive with the log data and attach it to your post. In case you don't want to make your log data publicly accessible, contact me via PM and I will provide you a mail address to send it directly to me.
Check your BIOS settings. You might want to disable Network Boot and the UEFI Network Stack as these can interfere with the driver.
Double check that you have removed any other Realtek kext from your system because they could prevent the driver from working properly.
Delete the following files:
Verify your bootloader configuration, in particular the kernel flags. Avoid using npci=0x2000 or npci=0x3000.
In Terminal run netstat -s in order to display network statistics. Carefully examine the data for any unusual activity like a high number of packets with bad IP header checksums, etc.
In case auto-configuration of the link layer connection doesn't work it might be necessary to select the medium manually in System Preferences under Network for the interface.
Use Wireshark to create a packet dump in order to collect diagnostic information.
Keep in mind that there are many manufacturers of network equipment. Although Ethernet is an IEEE standard, different implementations may show different behavior causing incompatibilities. In case you are having trouble try a different switch or a different cable.
Getting the driver
There is a prebuilt binary in the Download section of this site: http://www.insanelymac.com/forum/files/file/259-realtekrtl8100-binary/
The source code can be found on Github: https://github.com/Mieze/RealtekRTL8100
Salve, sto ancora tentando di far funzionare il mio lettore di schede SD, macos lo riconosce in resoconto di sistema ma non funziona, in firma c'è il modello esatto e gli id che ottengo da resoconto di sistema, ho provato a seguire varie guide e oggi ho trovato questa che sembrerebbe aver funzionato a questo utente:
Secondo voi è una buona idea eliminare un kext di sistema? E poi questi kext di cui parla dove gli trovo? Grazie a tutti
What works? Everything. Sleep/Wake, NVMe, Airport, Spotlight, AMD-graphics
Config: ASUS Prime B250M-C µATX-board Intel Core i5 7500 (Kaby Lake) Gigabyte Radeon RX560 4GB Airport-compatible PCIe-Card for Wifi and Bluetooth (BCM943602CS) 2 NVMe drives: Samsung P961 with 1 TB and 256 GB
Installed mac OS: 10.13.2 Clover: 4334
Added new config.plist and ssdt for AMD injection (config_amd_ssdt_10133.zip). With this config and Intel IGPU activated you'll get Metal2 (macOS GPUFamily1 v3). What did I do? Had to fake Skylake graphics or to prevent apps like iMovie or FinalCut from crashing. With Kabylake kexts loaded and IGPU as secondary graphics card, the computer will hard reset whenever the Intel GPU is utilised. Only Skylake kexts and activated IGPU will give you working Metal2 for the RX560.
Since this update a new approach is advisable to get the RX560 up and running (works for 10.13.1 and GM as well). I've added a working SSDT and injector kext that gives you graphics and HDMI audio. Sleep works fine too if you add the DSDT I compiled.
Credits go to @Toledo @Mork vom Ork and @Mieze because their work made this possible.
*Update* I've added NEW config.plist and DSDT. For proper graphics power management you have to activate onboard graphics in BIOS but make PCIE the primary display. Furthermore you have to inject ig-platform-id 0x59120003 and let Clover patch GFX0 to IGPU. This is the only way to avoid crashes of iMovie, FinalCut or slowdowns after video playback.
This may be the smoothest Hackintosh of my life. It is easier than Sierra install due to native support for most of the used hardware in High Sierra. Not much to do, using an up-to-date Clover version like 4184. Make sure you have apfs.efi in /Clover/drivers64UEFI/ on your EFI partition and that you delete EmuVariableUEFi.efi (downside: iMessage doesn't work without it). Somehow Rehabman's SSDT in /Clover/ACPI/patched helps avoiding crashes in iTunes.
Needed kexts (on your EFI into /Clover/kexts/Other): FakeSMC, IntelMausiEthernet for ethernet, USBInjectAll and XHCI-200-series-injector for USB, Lilu and AppleALC for audio, Whatevergreen for AMD graphics, IntelGraphicsFixup and AMD9xxxControllerPatcher.kext.
DSDT and SSDT go into EFI/Clover/ACPI/patched.