eksu

macrumors 6502
Original poster
Aug 3, 2017
322
145
With OpenCore able to load kexts for things like Hardware Acceleration and enabling NightShift, I thought about if it would be possible to load a kext from Mojave to get my Apple RAID Card working. It turns out this works!

I was able to load AppleRAIDCard.kext copied over from Mojave with OpenCore and I can now access my old RAID Array.

Catalina is missing "Raid Utility.app" as well as the command line tool "raidutil", so it is missing a way to manage an existing array, so rebooting back to Mojave to add disks or check on health is currently required.

I've put some effort into getting "Raid Utility.app" or "raidutil" running on 10.15 by reading how the Reactive folks got older applications running. The "Raid Utility.app" initially crashes with an error saying it's missing CoreRAID.framework, but upon bringing this across and linking it the app now crashes on startup (or is just "killed" when ran from the terminal) with no error message.

I also tried to copy over version of the "raidutil" command line tool, but get the error "Unable to acquire a device for controller-type: 'AppleRAIDCard'" on any operations.

Might be useful to be able to access a Hardware RAID array or a SAS drive in Catalina, might not be. Just wanted to share.
 

eksu

macrumors 6502
Original poster
Aug 3, 2017
322
145
I think the ideal configuration would be to set up some drives in Mojave as JBOD and this should allow SAS drives through the backplane in newer OS's.
 

Cay Hecker

macrumors newbie
Apr 27, 2020
2
0
Luxemburg
Hi there,
i just updated my flashed MP5,1 to Catalina today via OpenCore and sadly was missing my RaidCard's Array...

could you specify what you did to at least get access to it under 10.15?
I tried to google how to inject kexts, but i don't know how to... seems pretty confusimg for the moment! ;)


THANK YOU!
Cay
 

eksu

macrumors 6502
Original poster
Aug 3, 2017
322
145
Hi Cay,

I searched in finder and found AppleRAIDCard.kext in Mojave. I copied it over and placed it into my OpenCore partition in EFI/OC/Kexts (this folder should already exist.)

If you don't have a Mojave HDD / SSD you should get a second drive so if OpenCore breaks you can repair from Mojave.

Another reason you need a Mojave HDD / SSD in this configuration is that although you can read and write to the RAID card, currently you can not manage your RAID array from Catalina. So you can't check if it's healthy, add spare, rebuild, or enable the write cache. So you will want to have Mojave on hand for these things.

Something else cool I noticed in OpenCore today was that I could see the AppleRaid partition in OpenCore's bootloader so it might even be possible to boot off of the Raid Array with this and newer versions of MacOS.

Then I went to my config.plist for OpenCore and told it to use the new kext by adding a value in the Kernel Add section. I set the Minimum Kernel to 19.0.0 so it loads in Catalina but otherwise anything older uses what is built into the OS.



XML:
<key>Kernel</key>
    <dict>
        <key>Add</key>
        <array>
            <dict>
                <key>BundlePath</key>
                <string>AppleRAIDCard.kext</string>
                <key>Comment</key>
                <string>Apple RAID Card</string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/AppleRAIDCard</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string>19.0.0</string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
            </dict>
        </array>

Depending on how you have OpenCore set up this section might be empty or might already have a few values in the array. If it is empty it will look like this and you will have to add <array> in the after add and the <dict> section:

XML:
<key>Kernel</key>
    <dict>
        <key>Add</key>
        </array>
        <key>Block</key>
        <array/>

If it already has other values in the array, this one can just go next to the other ones, like this:

XML:
<key>Kernel</key>
    <dict>
        <key>Add</key>
        <array>
            <dict>
                <key>BundlePath</key>
                <string>AppleMCEReporterDisabler.kext</string>
                <key>Comment</key>
                <string>DisableAppleIntelMCEReporter</string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string></string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string>19.0.0</string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
            </dict>
            <dict>
                <key>BundlePath</key>
                <string>AppleRAIDCard.kext</string>
                <key>Comment</key>
                <string>Apple RAID Card</string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/AppleRAIDCard</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string>19.0.0</string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
            </dict>
        </array>
        <key>Block</key>
        <array/>


If you have a dual tray CPU, you should have the AppleMCEReporterDisabled.kext, otherwise you don't need it. If you are using the Active AMD hardware acceleration there will be WhateverGreen & Lilu here. I also am using Radeon Boost and NightShiftUnlocker if you are looking for other things to add.

If you are having more trouble, I can try to make an OpenCore package for you.
 

Cay Hecker

macrumors newbie
Apr 27, 2020
2
0
Luxemburg
Thank you soooo much!

with your tree span i was able to get it up and running...
also managed to enable HW-Accel for H.264 and am very happy indeed! :)

could you just tell me what AppleMCEReporterDisabler.kext does?
i do indeed have a dualTray (flashed) 4,1 with x5680s.
as i understand it corrects a kernel-panic issue, but i didn't encounter any of that berforehand...

anyway,
KINDEST REGARDS (you saved my life/files)
 

eksu

macrumors 6502
Original poster
Aug 3, 2017
322
145
My understanding is that with Catalina they removed some code that was Dual CPU aware because there aren't any supported Macs that use Dual CPU's anymore (same way they removed Apple Raid support even though they didn't need to).

The AppleMCEReporterDisabler.kext catches this issue when it happens without your machine Kernel Panicing. I have it enabled and I also personally needed to enable <key>PowerTimeoutKernelPanic</key> under Quirks to stop Kernel Panics I was having complaining about power management (Turbo Boost, sleep states, etc) when I am under load especially Disk I/O. Not sure if anyone else has this experience or if I have slightly more faulty hardware. I'm on a 4,1 -> 5,1 with X5690's.

I am digging for a less hand-wave-y explication of what AppleMCEReporterDisabler does but I am having a hard time finding more information. I know it enables AMD CPU's to run in Hackintoshes. I will look more or if anyone wants to chime in and enlighten us :)
 
  • Like
Reactions: Flint Ironstag

rickosx

macrumors newbie
Jul 15, 2018
13
1
Hi, I wish I could understand even half of what's happening but here it goes

I have 4x 4TB SAS discs and I'm trying to use them on a Mac Pro 2008. (Running dosdude's Catalina) I have an apple raid card, the black one but the battery need replacing. Is there a way for me to use the SAS discs just as storage? I don't need the RAID option. Just want to be able to use the discs separately.

Much appreciated if I could get some help
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.