GithubHelp home page GithubHelp logo

z490-vision-d-customac's Introduction

Z490-Vision-D-Customac

713M1ibBFHL AC_SL1500

Hardware Specification

CPU : Intel i9-10900K

GPU: Gigabyte RX 580 Gaming 8GB

Motherboard: Z490 Vision D

BIOS revision: F5

Wifi/BT Card: Fenvi FV-T919

SSD: WD_Black SN850X 1TB (macOS Ventura)

Working

  • Restart/Sleep/Shutdown

  • Wake on Lan / Wake for network access

  • iMessage / Facetime (WebCam Required)

  • AirDrop/Handoff/Continuity (Requires natively supported WiFi/BT card such as FV-T919)

  • AirplaytoMac/Sidecar/Universal Control (Requires natively supported WiFi/BT card such as FV-T919)

  • UHD-630(IQSV Encoding/Decoding)

  • Thunderbolt 3 / USB-C to HDMI / Ethernet (I225/I219)

    ScreenshotScreenshot 2023-01-14 at 7 54 56 AM
  • Boot time from Apple logo to desktop: roughly 12 secs

  • Working Mac OS: Sierra ~ macOS Sonoma

Note 1: Config.plist changes for Sierra(10.12.6) ~ Catalina

- SecureBootModel -> Disabled
- UEFI -> APFS -> MinDate and MinVersion -> -1

Note 2: For Sierra(10.12.6) and High Sierra(10.13.6)

- SMBIOS iMac18,3 

- Spoof to i9-9900K CPUID (0x0906ED) for High Sierra 10.13.6

- Spoof to i7-7700K CPUID (0x0906E9) for Sierra 10.12.6 

- iGPU DeviceProperty -> AAPL,ig-platform-id -> <03001259> (For headless mode)  
                                             -> <00001259> (To drive a display)     
                                        
                      -> rps-control instead of igfxfw       

- Boot-args -> -disablegfxfirmware (For Sierra only. This prevents firmware load attempt)

Note 3: For Mojave

- SMBIOS iMac19,1

- iGPU ig-Platform-ID -> <0300983E> (Headless mode)
                      -> <07009B3E> (To drive a display)

- rps-control instead of igfxfw property

Not Working

  • DRM in Safari and TV+ (For workaround, force AMD DRM)

BIOS Settings

Run Load Optimized Defaults

  • VT-d -> Enabled (Requirement for loading AppleVTD)

  • CSM Support -> Disabled

  • X.M.P -> Profile 1

  • Internal Graphics -> Enabled

  • Above 4G Decoding -> Enabled

  • Thunderbolt

    • Security Level -> No security

    • GPIO3 Force Pwr -> Enabled

  • XHCI Hand-Off -> Enabled

  • CFG Lock -> Disabled

  • Windows 8/10 WHQL

OpenCore Config.plist

  • ACPI -> Delete -> Drop OEM DMAR Table (Requirement for resolving issues with WiFi/Ethernet when enabling AppleVTD for motherboards that have Reserved Memory Regions in their DMAR table)

  • Device Properties

    • Intel I225 model name injection

    • ALC 1220-VB Audio layout-id injection

    • UHD-630 Property Injection

      • ig-platform-id (For iGPU acceleration)
      • device-id (Fixes KBL Unknown to UHD-630)
      • igfxfw (Load Apple's GuC Firmware)
  • Kernel -> Quirks -> CustomSMBIOSGuid -> Yes

  • Kernel -> Quirks -> DisableIOMapper -> No (Requirement for loading AppleVTD)

  • Kernel -> Quirks -> DisableIOMapperMapping -> Yes, if having issues with WiFi/Ethernet with AppleVTD enabled in Ventura 13.3+)

  • Misc -> Security -> ScanPolicy -> 0 (Set it to 2,687,747 if you wish to hide unnecessary entries)

  • NVRAM -> Boot-args -> Nothing. (For AMD Rx 5xxx/6xxx GPU, agdpmod=pikera is required)

  • PlatformInfo -> Generic -> SystemProductName -> iMac20,2

  • PlatformInfo -> Generic -> UpdateSMBIOSMode -> Custom

SSDT

  • SSDT-PLUG.aml (Injects plugin type 1; No longer required beginning with Monterey 12.3)

  • SSDT-EC-USBX.aml (Injects fake Embedded Controller; USBX, USB power properties allow high power charging for iPhone, iPad, etc)

  • SSDT-DMAR.aml (Modifed to remove Reserved Memory Regions from OEM DMAR Table. This is required to fix issues with WiFi/ethernet when enabling AppleVTD. Don't forget to drop OEM DMAR table in ACPI section of the OpenCore config.plist first)

  • SSDT-SBUS-MCHC.aml (Injects SBUS.BUS0.BLC0 and MCHC)

  • SSDT-TB3HP.aml (SSDT for Thunderbolt hotplug)

  • SSDT-AWAC.aml (Disables AWAC clock and HPET; enables RTC to fix system clock)

  • SSDT-COSMETIC.aml (Optional; injects fake or missing devices and rename devices)

    • Injects: PNLF, THRM, SRAM, XSPI
    • RP02.PXSX to GIGE -> Intel I225 Ethernet
    • RP03.PXSX to ARPT -> FV-T919 in PCIEx1 slot
    • RP09.PXSX to SSD0 -> 1st M.2 slot (M2A_CPU) * Disables SATA 1 port when occupied by M.2 PCIe SSD
    • RP17.PXSX to SSD1 -> 2nd M.2 slot (M2M_SB) * Disables SATA 4 and 5 ports when occupied by M.2 PCIe SSD
    • RP21.PXSX to SSD2 -> 3rd M.2 Slot (M2P_SB) * Shares bandwidth with PCIEX4
  • SSDT-LPCB.aml (injects DMAC, FWHD, and ARTC devices under LPCB) Note that these are mostly for cosmetic thus optional.

  • SSDT-USBW.aml (Single-key wake from sleep; associated with USBWakeFixup.kext)

Kexts

  • VirtualSMC and plugins

  • Lilu.kext

  • AppleALC.kext (Compiled to work with "layout-id 11" only)

  • WhateverGreen.Kext

  • CPUFriend.kext

  • CPUFriendDataProvider.kext (For i9-10900K)

  • NVMeFix.kext

  • USBPorts.kext (Ports: HS03, HS04, HS05, HS06, HS07, HS08, HS09, HS10, HS11, HS12, SS03, SS04, SS05, SS06, SS07)

    • Works on iMac20,2, iMac18,3, iMac19,1, iMacPro1,1 and MacPro7,1
  • IntelMausi.kext (I219 Ethernet)

  • FakePCIID.kext (Required for FakePCIID_Intel_HDMI_Audio.kext and FakePCIID_Intel_I225-V.kext)

  • FakePCIID_Intel_HDMI_Audio.kext (Required for onboard Audio to work in Sierra ~ Mojave)

  • FakePCIID_Intel_I225-V.kext (Nessary for native I225 Ethernet driver in macOS Catalina along with fake device-id injection)

    Note: In macOS Big Sur+, AppleEthernetE1000 driver kit natively attaches to i225 ethernet. Thus, FakePCIID_Intel_I225-V.kext is no longer needed for native driver. However, if the ethernet port is occupied without having AppleVTD enabled with modifed DMAR table, the system will experience freeze, crash, and etc. To avoid having these issues, we need to enable AppleVTD with the following.

    Enabling AppleVTD

      - Enable VT-d in BIOS, 
      - Kernel -> Quirks -> DisableIoMapper -> False
      - Kernel -> Quirks -> DisableIoMapperMapping -> True (Required for Ventura 13.3+; see the macOS Ventura note section)
      - Drop OEM DMAR Table in config.plist
      - Inject modified DMAR Table(Reserved Memory Regions removed) in Config.plist
    
  • USBWakeFixup.kext (Works with SSDT-USBW. Causes Bluetooth issue in Monterey+; thus set minkernel to 19.0 and max kernel to 20.9.9)

    Note: One may wish to continue using USBWakeFixup.kext in macOS Monterey+. If so, you may set memory clock speed below 2933 MHz or use Bluesnooze without configuring memory clock speed below 2933 MHz.

  • AppleIGC.kext (Alternative ethernet kext for Intel I225 and I226; tested to work in macOS Sierra+)

    Note: Injecting this kext requires disabling native AppleEthernetE1000 dext driver with the following boot-args.

    • Big Sur ~ Monterey 12.2.1: dk.e1000=0
    • Monterey 12.3 or newer: e1000=0

    Support for Intel I225 Ethernet was first introduced in macOS Catalina. However, with this kext, we can use I225 Ethernet even in older macOS like Sierra. Also, if the I225 Ethernet is the only reason for enabling AppleVTD which have been problematic, using AppleIGC.kext that does not require AppleVTD will give less headaches down the road

Drivers

  • HfsPlus.efi

  • OpenCanopy.efi

  • OpenRuntime.efi

  • CrScreenshotDxe.efi

  • AudioDxe.efi (Causes a good 4~5 second delay at splash screen thus disabled)

    To enable boot chime in Opencore Boot Picker, make the following changes.

      - UEFI -> Audio -> AudioSupport -> Yes
      - UEFI -> Drivers -> Enable AudioDxe.efi
    

ACPI USB Port Mapping

Guide

macOS Update Notes

Common Requirements for Sierra ~ Catalina

  • SecureBootModel -> Disabled
  • UEFI -> APFS -> MinDate and MinVersion -> -1

macOS Sierra 10.12.6

  • Change SMBIOS to iMac18,3 (Required)
  • Spoof to Kaby Lake CPUIDs (Required)
  • Inject ig-platform-id: <03001259> device-id: <12590000> (Necessary for iGPU acceleration)
  • Inject rps-control property instead of igfxfw (Necessary for iGPU acceleration and improvement)
  • Add boot-arg -disablegfxfirmware (To prevent firmware load attempt. Necessary for iGPU acceleration)
  • FakePCIID_Intel_HDMI_Audio.kext for onboard audio

macOS High Sierra 10.13.6

  • Change SMBIOS to iMac18,3 (Required)
  • Spoof to Kaby Lake or Coffee Lake CPUIDs (Required)
  • Inject AAPL,ig-platform-id: <03001259> device-id: <12590000> (Necessary for iGPU acceleration)
  • Inject rps-control property instead of igfxfw (Necessary for iGPU acceleration and improvement)
  • FakePCIID_Intel_HDMI_Audio.kext for onboard audio

macOS Mojave

  • SMBIOS iMac19,1
  • Spoof to Coffee Lake CPUIDs
  • Inject AAPL,ig-platform-id: <0300983E> device-id: <9B3E0000> (Necessary for iGPU acceleration)
  • Inject rps-control property instead of igfxfw (Necessary for iGPU acceleration and improvement)
  • FakePCIID_Intel_HDMI_Audio.kext for onboard audio
  • Added NVMeFix.kext

macOS Catalina

  • SMBIOS iMac19,1 or may use iMac20,2 for Catalina 10.15.6+
  • May set SecureBootModel to "j185f" if on SMBIOS iMac20,2 (Requires Catalina 10.15.6+)
  • Inject AAPL,ig-platform-id: <0300C59B> device-id: <9B3E0000> (May not be necessary if WhatEverGreen.Kext is used)
  • Inject igfxfw property (Necessary for iGPU performance improvement)
  • Added USBWakeFixup.kext, SSDT-USBW.aml
  • Intel I225 Ethernet requires FakePCIID_Intel_I225-V.kext + Fake device-id injection to use native ethernet driver.

macOS Big Sur

  • SecureBootModel -> j185f
  • UEFI -> APFS -> MinDate and MinVersion -> 0
  • Injecting AAPL,slot-name for iGPU or dGPU breaks certain encoding functions(H264) in FCPX
  • Intel I225 Ethernet is natively supported in Big Sur 11.3+ (Enabling AppleVTD with modified DMAR table should be enough to get I225-V working. However, for some I225-V versions, updating EEPROM register with I225Mod may be necessary)

macOS Monterey

  • USBWakeFixup.kext causes bluetooth issue after sleep/wake cycle

    • Two possible workarounds

      • Set memory clock speed below 2933 MHz (This may also resolve "Disk not ejected properly" pop-up)
      • Bluesnooze
  • Beginning with Monterey 12.3, SSDT-PLUG.aml is no longer required

macOS Ventura

  • As of Ventura 13.1, 9 out of 10 times my bluetooth Apple Magic Keyboard and Trackpad do not respond on startup unless bluetooth or the devices itself has been toggled off and on again with USB mouse. This also seems to be a problem with real Macs as well, as decribed here

    Workaround

    Update: This issue has been resolved in Ventura 13.3

  • As of Ventura 13.3, a WiFi and the Intel I219 Ethernet no longer work if AppleVTD is enabled. One must apply the patch discovered by CaseySJ to resolve such behavior.

    Update: This patch is incorporated into OpenCore 0.9.2 as a DisableIoMapperMapping kernel quirk.

macOS Sonoma

  • As noted by the OCLP developers, Apple removed support for IO80211FamilyLegacy stack which is responsible for supporting wireless cards used in Macs whose support have been ended in the previous macOS versions including Sonoma. This also impacts Fenvi FV-T919 card which uses BCM4360 chipset. To bring the support back, injection of the kexts from macOS Ventura, IOSkywalkFamily.kext, IO80211FamilyLegacy.kext, and AirPortBrcmNIC.kext in order along with OCLP's Modern Wireless patch is necessary.

    Notes:

    • SecureBootModel, SIP(0x803), and AMFI(amfi=0x80) need to be disabled in order to apply Modern Wireless patch by OCLP.
    • Disabling AMFI may not be necessary to apply Modern Wireless patch if AMFIPass.kext v1.3.1 is injected with -amfipassbeta (Will need to use this flag until the kext is updated for Sonoma)
    • Blocking native IOSkywalkFamily.kext in macOS Sonoma and injecting the IOSkywalkFamily.kext from macOS Ventura may break the I225 ethernet using AppleEthernetE1000 dext driver. For workaround, one may use AppleIGC.kext or AppleIntelEthernet210.kext with e1000=0 boot argument which disables AppleEthernetE1000 dext driver.
  • SecureBootModel may need to be set to "Disabled" before installing or updating to Sonoma 14.4, otherwise you may experience bootloop after the first stage of installation/update process. SecureBootModel can be enabled afterwards.

Geekbench 5 & Cinebench R23

Screenshot 2023-01-11 at 10 35 15 AM

Resources

Big thanks to Hackintosh community and those who contributed to make hackintosh possible from the beginning to the end!

z490-vision-d-customac's People

Contributors

applebreak1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

simonlzy1978

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.