Acpi Mac

An EFI folder that could boot macOS Mojave cannot necessary boot macOS Catalina due to changes in the way AppleACPIEC behaves which require it to be either disabled, renamed or spoofed to boot macOS Catalina on most hackintosh motherboards. Not addressing EC in Catalina can cause hagging with verbose outputs such as Waiting on root device… or AE_NOT_FOUND that will prevent you from booting Catalina.

Hackintosh Catalina EC Patching

MachineMac acpi error
  • The option to disable AppleACPIEC currently has issues and is only for those using the OpenCore method of hackintoshing and not Clover, leaving us with the option to fake or rename our EC device which is needed .for AppleBusPower to function.
  • Renaming EC – Recommended for laptop use as this still loads AppleACPIEC which is not used or compatible with a desktop but still works.
  • Faking EC is done turning off the real EC one and setting a fake one up by placing a patched SSDT-EC.aml file in EFI/CLOVER/ACPI/patched.
    • Recommended by the community for desktops, do not use for laptops.
    • The downside to this method is if you change the hardware in your system i.e. swapping out the motherboard or computer trying to get the Catalina installer to load. The SSDT will need to be remade for a specific machines hardware before being able to boot while the specific rename patch tends to be similar across motherboard generations i.e. a Gigabyte Z370 motherboard and an ASUS Z390 motherboard will have the same EC rename. In that case starting with the rename method might be a better solution to start with.

To do either fix you’ll want to generate a DSDT:

Acpi

About acpi® Headquartered in The Colony, Texas, acpi is the 4 th largest, and largest independently-owned, manufacturer and distributor of cabinets in the United States. Acpi has been owned by American Industrial Partners (AIP) since October, 2012. Since the purchase by AIP, acpi has grown from a single brand and plant to 14 brands and 11. In Windows 10, under Driver Details the Compatible Ids Property claims: ACPI apple-usb-blth. So, I believe this to be part of the Bluetooth hardware installation but pointing to the Broadcomm drivers from Apple has not helped me either yet. Extracting the ACPI files. There are 3 methods of extracting ACPI files of your pc but here I have only used 1 method because it is very easy and has less chance of corruption. Extracting ACPI files through this method is very simple, all you have to do is press F4 while in clover after startup. The ACPI files will be available in EFI/clover.

Acpi Machine Language

Acpi macbook
  1. Generate a DSDT table by restarting computer and entering Clover Bootloader
  2. Press F4 will cause a DSDT to be generated and placed in EFI/CLOVER/ACPI/origin
  3. Reboot back into macOS and Mount EFI partition
Acpi machine language tutorial
#1 Renaming EC Method
  • Renaming EC adds a simple Hex patch under Acpi -> Patches of config.plist from this table:
    CommentFind* [HEX]Replace [HEX]
    change EC0 to EC4543305f45435f5f
    change H_EC to EC485f454345435f5f
    change ECDV to EC4543445645435f5f
  • Only one of these three patches is used at a time. DO NOT enable multiple at the same time or you may not be able to boot
  • To find out which patch is correct for you’re computer can either guess by adding one at a time and trying to boot Catalina or you can simply check the DSDT you generated by following steps 1-6:
    1. Download MaciASL
    2. Open EFI/CLOVER/ACPI/origin/
    3. Open DSDT.aml with MaciASL
    4. Use ⌘F to open the Find search bar
    5. Search for PNP0C09 it will be in a bracketed under a device named Device (EC0) or Device (H_EC) or Device (ECDV)
    6. Some computers will return two device results for PNP0C09 to find out which is the correct device it must contain an _HID, _CRS and _GPE in its brackets for example:
      • (_HID, EisaId ('PNP0C09')) // _HID: Hardware ID
      • Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
      • Name (_GPE, 0x16) // _GPE: General Purpose Events

        In this example EC0 is the correct EC as it contains a _HID, _CRS and _GPE value, therefore the patch used will be rename EC0 to EC

    7. Once you figure out what patch you need from the table add it by opening config.plist with Clover Configurator and placing the patch under Acpi Patches:

      If you are using the EFI from https://hackintosher.com/guides/guide-to-fresh-installing-macos-catalina-on-a-hackintosh/ I’ve included the patches in config.plist already however they are all disabled by default enable the one that is right for you by unchecking disabled.

      Here’s the table again:

      CommentFind* [HEX]Replace [HEX]
      change EC0 to EC4543305f45435f5f
      change H_EC to EC485f454345435f5f
      change ECDV to EC4543445645435f5f
#2 Faking EC Method

Aci Machinery

  1. Download SSDT-Time and unzip the folder
  2. Open SSDTTime-master folder
  3. Right-click open SSDTTime.command
  4. This will open Terminal
  5. Please make a selection: 2
  6. Drag and drop a DSDT.aml or origin folder
  7. SSDTTime will automatically open a Results folder
  8. Copy SSDT-EC.aml from the Results folder and place it in EFI/CLOVER/ACPI/patched
    • Note: The patched folder not the origins folder
    • If you have any issues getting SSDTTime to work use the rename method instead.