Contribute
Register

X299 - Open Core support

Status
Not open for further replies.
The ARP SSDT in Catalina was conflicting with OC, after removing it, it was just a matter of finding which kext injector was needed for the BT/Wifi card. I also bypassed the PrimeX299DeluxeUSB.kext and replaced it with USBInjectAll.kext & XCHCI portlimit in EFI2 & EFI3. Glad you made it work.

only the _DSM method conflicts with oc. the rename is totally fine (based on everything I've read about oc)
 
The ARP SSDT in Catalina was conflicting with OC, after removing it, it was just a matter of finding which kext injector was needed for the BT/Wifi card. I also bypassed the PrimeX299DeluxeUSB.kext and replaced it with USBInjectAll.kext & XCHCI portlimit in EFI2 & EFI3. Glad you made it work.

I took out the ARPT SSDT since kgp said that was only for the Airport card he was using, which is not what I'm using. The WiFi part of my WiFi/BT card works OOB so I don't need anything to get it working.

I'm experimenting with those kexts to see which works best for me. Thank you!

I did try AirportBrcmFixup.kext by itself as you had in one of the EFIs and it did not work, even in Clover. In case anyone else wants to try what's working for me here is what I'm using: https://github.com/headkaze/OS-X-BrcmPatchRAM (just the BrcmBluetoothInjector.kext though).
 
The ARP SSDT in Catalina was conflicting with OC, after removing it, it was just a matter of finding which kext injector was needed for the BT/Wifi card. I also bypassed the PrimeX299DeluxeUSB.kext and replaced it with USBInjectAll.kext & XCHCI portlimit in EFI2 & EFI3. Glad you made it work.

Thanks. I'll give these a try....in due time....
 
Everything seems to be working correctly hardware-wise with my test install of OC. Is there anything that I need to check to make sure iMessage, Continuity, and Handoff will still work if I switch my working MacOS install from Clover to OC?

EDIT: I do have one thing outstanding... I cannot figure out how to get the OC menu and the Apple boot logo to show the correct proportions/resolution. My monitors are ultrawide 2560x1080. I’ve tried leaving Misc/Boot/Resolution blank, setting to 2560x080, 2560x1080@32 (@Ellybz provided the EFI to me with this setting), and 2560x1080@24 (they are 24bit monitors).
 
Last edited:
My EFI the @Ellybz kindly provided to me has numerous renaming patches in the config. OC docs say to not rename patch in the config (even though they have some patches in the sample config). How to we move renaming patches from the config to an SSDT? Is there a guide or tutorial for that?
 
Everything seems to be working correctly hardware-wise with my test install of OC. Is there anything that I need to check to make sure iMessage, Continuity, and Handoff will still work if I switch my working MacOS install from Clover to OC?

EDIT: I do have one thing outstanding... I cannot figure out how to get the OC menu and the Apple boot logo to show the correct proportions/resolution. My monitors are ultrawide 2560x1080. I’ve tried leaving Misc/Boot/Resolution blank, setting to 2560x080, 2560x1080@32 (@Ellybz provided the EFI to me with this setting), and 2560x1080@24 (they are 24bit monitors).

you can try enabling SanitiseClearScreen. its supposed to fix high res displays displaying oc in 1024x768. or so the docs say.

in regards to the renames...
HEC1>IMEI is handled by whatever green and can safely be removed (assuming you use whatever green)
H_EC does not exist on a prime x299 deluxe.
EC0>EC must be handled in the SSDT-EC-USBX, as patching the acpi results in an incompatible driver being loaded. (AppleACPIEC)

all other patches can safely be removed. however you will need to adjust your SSDT's.

all cases of "PCI0" will need to be replaced with "PC00".
all cases of "LPCB" will need to be replaced with "LPC0".
"XOSI" will need to be replaced with "OSI" (if it exists)
 
you can try enabling SanitiseClearScreen. its supposed to fix high res displays displaying oc in 1024x768. or so the docs say.

in regards to the renames...
HEC1>IMEI is handled by whatever green and can safely be removed (assuming you use whatever green)
H_EC does not exist on a prime x299 deluxe.
EC0>EC must be handled in the SSDT-EC-USBX, as patching the acpi results in an incompatible driver being loaded. (AppleACPIEC)

all other patches can safely be removed. however you will need to adjust your SSDT's.

all cases of "PCI0" will need to be replaced with "PC00".
all cases of "LPCB" will need to be replaced with "LPC0".
"XOSI" will need to be replaced with "OSI" (if it exists)

In SSDT-EC-USBX.dsl it says "Try NOT to rename EC0, H_EC, etc. to EC. These devices are incompatible with macOS and may break at any time. AppleACPIEC kext must NOT load. See the disable code below."

So why rename EC0>EC at all? Should we just leave that SSDT out AND remove the patch from config?
 
Everything seems to be working correctly hardware-wise with my test install of OC. Is there anything that I need to check to make sure iMessage, Continuity, and Handoff will still work if I switch my working MacOS install from Clover to OC?

EDIT: I do have one thing outstanding... I cannot figure out how to get the OC menu and the Apple boot logo to show the correct proportions/resolution. My monitors are ultrawide 2560x1080. I’ve tried leaving Misc/Boot/Resolution blank, setting to 2560x080, 2560x1080@32 (@Ellybz provided the EFI to me with this setting), and 2560x1080@24 (they are 24bit monitors).

Match this for correct proportions.

Screen Shot 2019-08-15 at 12.55.33 PM.png


For iMessage, Continuity and Handoff, it will work if you bring in the same SN, MLB and UUID.

You can use
Code:
uuidgen
in Terminal to find your UUID. MLB is same as SN except you add 5 random characters to the end of it.
 
Last edited:
So, I can report that thanks to @Ellybz BT is now working. In both Mojave and Catalina, I tested with a BT enabled pair of headphones, which sounded great. No scratchy sound, either. Probably that won't last until I buy a new motherboard, but it was nice to hear sound without the scratchy issues that the Radeon VII has had (driver issues). It would be nice if that was fixed permanently, but we'll see about that.

Really, all I did was disable the ARPT AML file, and then make sure all four of the various BT kexts were set to disabled. I did not load USBinject all because that stopped the system with a "can't ...kext summary" error. I did not load Ellybz's USB kext file. I may enable that later for testing. I did set the quirk setting for XHCIPortLimit to yes, but I'll experiment to see if that's actually correct later also.

Pretty simple fix after all.....thanks, @Ellybz!!!
 
In SSDT-EC-USBX.dsl it says "Try NOT to rename EC0, H_EC, etc. to EC. These devices are incompatible with macOS and may break at any time. AppleACPIEC kext must NOT load. See the disable code below."

So why rename EC0>EC at all? Should we just leave that SSDT out AND remove the patch from config?

the way it is setup in the ssd disables EC0 and creates a device called EC as AppleACPIEC gets attached to EC0. so instead of renaming, you're actually removing and recreating the device. (this may be totally the wrong info, as its just my understanding)

Also interms of renames. when you rename as a patch you are actually renaming in the system DSDT where a rename in the SSDT is only taking place at the registry level which the OC docs claim are safer. (or something like that. my brain is fried from reading as much as I have the past couple days)

Here is how the ssdt-ec-usbx should look for the prime x299 deluxe

Code:
DefinitionBlock ("", "SSDT", 2, "APPLE ", "SsdtEC", 0x00001000)
{
    External (_SB_.PC00.LPC0, DeviceObj)
    External (_SB_.PC00.LPC0.EC0, DeviceObj)
   
    Scope (\_SB.PC00.LPC0.EC0)
    {
        Method (_STA, 0, NotSerialized)  // _STA: Status
        {
            If (_OSI ("Darwin"))
            {
                Return (Zero)
            }
            Else
            {
                Return (0x0F)
            }
        }
    }

    Scope (\_SB.PC00.LPC0)
    {
        Device (EC)
        {
            Name (_HID, "PNP0C09")  // _HID: Hardware ID
            Method (_STA, 0, NotSerialized)  // _STA: Status
            {
                If (_OSI ("Darwin"))
                {
                    Return (0x0F)
                }
                Else
                {
                    Return (Zero)
                }
            }
        }
    }
 
Last edited:
Status
Not open for further replies.
Back
Top