- MB: Asus P8Z77-I Deluxe
- CPU: i5 3570K (Ivy Bridge)
- RAM: 16 GB of DDR3 @ 1333 MHz
- GPU: Sapphire RX 5600 XT (Navi 10)
- SSD: Samsung 870 EVO 1TB
- HDD: Western Digital WD40EZRZ 4TB
- LAN: Intel 82579V Gigabit
- WiFi/BT: BCM94352HMB
- CODEC: Realtek ALC898
After years being stuck on High Sierra due to having a GTX 960, I finally bit the bullet, bought a used RX 5600 XT and redid the machine from scratch using OpenCore. Setup was fairly smooth following the Dortania guide, and almost everything* works as expected. (I stuck with Monterey because going any higher would require a whole new motherboard and CPU.) It's set up to dual boot Windows 10 as well.
*A few oddities/potholes to note:
- The machine crashes at boot if a display is connected by only HDMI. Boots just fine with DisplayPort, or with DisplayPort AND HDMI. But if you want to use just one display, DisplayPort is your only choice. I never was able to figure this one out so DisplayPort it is.
- Since this is a Navi card, it needs the
agdpmod=pikeraboot argument. I also installedSMCRadeonGPU.kextandRadeonSensor.kext. Apps like iStat Menus work as expected, including temperatures and clock speeds (after installing Intel Power Gadget). - This is NOT the WiFi/BT card that comes with the P8Z77-I Deluxe by default. I bought this BCM94352HMB separately on eBay specifically for its macOS compatibility.
- On that note... if using
AirportBrcmFixup.kext(which I needed to make WiFi work), make sure to disableAirPortBrcm4360_Injector.kextif running macOS 11 and above (as I am here). I initially missed the explanation on the man page and it caused major issues (extremely long boot times and unrecognized SATA disks). - WiFi and Bluetooth both appear to be working fine, but my phone is a Pixel, so I can't confirm whether features like iMessage or Airdrop or Handoff work as expected.
- Audio works with
AppleALC.kextand layout 1. I'm running audio over DisplayPort through my monitor, to which my external speakers are attached (I use the monitor's built-in KVM to switch between this machine and my laptop). I did have an issue where the display wouldn't always be recognized as an audio output device after a reboot -- using thealcdelay=3000boot argument seems to have fixed this. All other audio ports, including the front panel, work as expected. - I used SSDTTime to generate a custom SSDT-EC, SSDT-HPET and SSDT-PM, based on files dumped from debug OpenCore's
SysReportfunction. Power management works as expected. - Something is still not quite right with my USB map -- four of the five USB3 ports on the back panel don't work. In addition to the SSDT IRQ patching, I tried a couple of different methods of mapping the ports in both Windows and macOS, but nothing worked. I decided it wasn't worth further effort because the USB2 ports all work, as do the front panel USB3 ports, and I can't see myself ever needing more than 3 USB3 + 4 USB2 ports at once. (The back panel USB3 port is connected to the monitor KVM.)
- For the dual boot, I started by formatting the SSD in the OpenCore Monterey installer -- one APFS partition for macOS, one placeholder exFAT partition for Windows. I installed macOS and got it booting smoothly from the SSD's EFI. Then I installed Windows via DISM from a standard Windows 10 USB installer -- including manually creating the required partitions and adding boot files to the EFI. Everything went as expected and OpenCore sees both macOS and Windows. Updates to both macOS and Windows have gone smoothly so far.
- One quirk of dual booting is that Unix-like systems like macOS treat the system clock as UTC, but Windows treats it as local time, which causes time sync issues when you switch OSes. You can fix this by opening regedit in Windows, navigating to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation, creating a new D-WORD calledRealTimeIsUniversaland giving it a value of 1. This makes Windows behave like Unix and treat the system clock as UTC rather than local time.
So, a couple of quirks, but all in all, not bad for a machine originally built in late 2012! Thanks to everyone who's contributed to the guide and for the folks on the Discord server who helped troubleshoot some of the weirder issues.
[link] [comments]
Post a Comment