Hi,
do I need dosdude1's APFS patch in Catalina after patching BootRom in mac pro 3,1?
Is this upgrade available only in Mojave installer, or Catalina as well?
A good place to start would be to post your questions in the right forum, something like MacBookPro maybe.hi guys, my first day here. I wanna have full nvme support for my macbook pro Retina Mid-2012 MacBookPro10,1. I wanna my macbook to recognize the new thunderbolt 3 external ssd as well as other nvme ssd.
I am currently on yosemite 10.10.5, and I cannot upgrade my os.
PLZ HELP. I am still a noob in
hackintosh stuff, but I am a fast learner.
Hello Dosdude I'm new to this form and i find a way to clear a problem with ROMtool. I'm running HS on a Mac pro 3.1 and when i try to dump ROM I got an kext error. (DirectHW.kext could not be loaded...)My computer is in Flash mode and SIP is disabled.... read many forums and tried many things no luck.....HELP pleaseROMTool, which is based on flashrom, only has problems on machines with the nVidia MCP79 chipset. All other systems work just fine with ROMTool.
I know of no way to flash the Mac boot rom via Linux. You’d have to install macOS to get access to romtool to install the NVME driver into the bootrom. After that is done you shouldn’t need macOS anymore and you should be able to (in theory) boot Linux ... I know windows 10 has been reported to not be bootable from nvme in the 3,1 so you may also have issues with Linux.Thanks, I read through this thread and now I want to boot from an NVME on a PCIE card.
But what if I am going to go Linux-only to boot on my Mac Pro 3,1 (2008)? I already boot MX-Linux on an SSD in one of the HD bays.
Do I still have to boot MacOS to flash the firmware ROM etc for the NVME?
Or, does Linux natively support an NVME card on a PCIE adapter? Or offer other utilities? I see there are some steps that can already be done in Linux--is there more?
Linux can boot using EFI in MacPro3,1 so it shouldn't have a problem booting from NVMe.I know of no way to flash the Mac boot rom via Linux. You’d have to install macOS to get access to romtool to install the NVME driver into the bootrom. After that is done you shouldn’t need macOS anymore and you should be able to (in theory) boot Linux ... I know windows 10 has been reported to not be bootable from nvme in the 3,1 so you may also have issues with Linux.
Hello Dosdude I'm new to this form and i find a way to clear a problem with ROMtool. I'm running HS on a Mac pro 3.1 and when i try to dump ROM I got an kext error. (DirectHW.kext could not be loaded...)My computer is in Flash mode and SIP is disabled.... read many forums and tried many things no luck.....HELP please
setbootvar Driver0080 1 "apfs.efi" /Volumes/EFI*/*_bay2/../drivers/apfs.efi
setbootvar Driver0081 1 "nvme.efi" /Volumes/EFI*/*_bay2/../drivers/nvme.efi
setdriverorder Driver0080 Driver0081
dumpallbootvars
You can place the efi drivers on a EFI or FAT or HFS+ partition, then set Driver#### and DriverOrder NVRAM variables.
3.1.1 Boot Manager Programming
Programmatic interaction with the boot manager is accomplished through globally defined variables.
On initialization the boot manager reads the values which comprise all of the published load options
among the UEFI environment variables. By using the SetVariable() function the data that
contain these environment variables can be modified.
Each load option entry resides in a Boot#### variable or a Driver#### variable where the
#### is replaced by a unique option number in printable hexadecimal representation using the digits
0–9, and the upper case versions of the characters A–F (0000–FFFF). The #### must always be
four digits, so small numbers must use leading zeros. The load options are then logically ordered by
an array of option numbers listed in the desired order. There are two such option ordering lists. The
first is DriverOrder that orders the Driver#### load option variables into their load order.
The second is BootOrder that orders the Boot#### load options variables into their load order.
For example, to add a new boot option, a new Boot#### variable would be added. Then the
option number of the new Boot#### variable would be added to the BootOrder ordered list and
the BootOrder variable would be rewritten. To change boot option on an existing Boot####,
only the Boot#### variable would need to be rewritten. A similar operation would be done to add,
remove, or modify the driver load list.
If the boot via Boot#### returns with a status of EFI_SUCCESS the boot manager will stop
processing the BootOrder variable and present a boot manager menu to the user. If a boot via
Boot#### returns a status other than EFI_SUCCESS, the boot has failed and the next Boot####
in the BootOrder variable will be tried until all possibilities are exhausted.
If any Driver#### load option is marked as LOAD_OPTION_FORCE_RECONNECT, then all of
the UEFI drivers in the system will be disconnected and reconnected after the last Driver####
load option is processed. This allows a UEFI driver loaded with a Driver#### load option to
override a UEFI driver that was loaded prior to the execution of the UEFI Boot Manager.
The LOAD_OPTION_CATEGORY provides a hint to the boot manager to describe how it should
group the Boot#### load options. Boot#### load options with LOAD_OPTION_CATEGORY_BOOT are meant to be part of the normal boot processing.
Boot#### load options with LOAD_OPTION_CATEGORY_APP are executables which are not
part of the normal boot processing. Boot options with reserved category values will be ignored by
the boot manager.
If any Boot#### load option is marked as LOAD_OPTION_HIDDEN, then the load option will
not appear in the menu (if any) provided by the boot manager for load option selection.
4D1ED05-38C7-4A6A-9CC6-4BCCA8B38C14 | EnableDriverOrder | Apple specific, causes loader to use the DriverOrder and Driver#### variables. Consumed after use. Uses DriverOrder if EnableDriverOrder==0x31 |
Adding NVMe and apfs support to MacPro3,1 without flashing ROM or using a EFI boot loader or Shell:
You can place the efi drivers on a EFI or FAT or HFS+ partition, then set Driver#### and DriverOrder NVRAM variables.
The commands below come from https://gist.github.com/joevt/477fe842d16095c2bfd839e2ab4794ff . Setup instructions are there.
With the drivers included this way, macOS apfs volumes can now boot and can also appear and be selectable in the Startup Manager (hold option at boot).
- First, get the efi device path of the driver by using the bless command:
The result:Code:sudo bless --mount /Volumes/Catalina\ Boot --file /Volumes/Catalina\ Boot/macOSCatalinaPatcher/apfs.efi --setBoot dumpallbootvars
Code:BootOrder: Boot0080 Boot0080: 1, "Mac OS X", "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)/\macOSCatalinaPatcher\apfs.efi"
- Restore the correct boot using Startup Disk in System Preferences.app.
- Add a Driver#### option using the efi device path for the driver.
Code:setbootvar Driver0080 1 "apfs.efi" "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)/\macOSCatalinaPatcher\apfs.efi" setbootvar Driver0081 1 "nvme.efi" "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)/\macOSCatalinaPatcher\nvme.efi" setdriverorder Driver0080 Driver0081
- Verify results.
Code:dumpallbootvars
- Reboot to test.
I have tested with the apfs driver. I have not tested NVMe.
Adding NVMe and apfs support to MacPro3,1 without flashing ROM or using a EFI boot loader or Shell:
You can place the efi drivers on a EFI or FAT or HFS+ partition, then set Driver#### and DriverOrder NVRAM variables.
The commands below come from https://gist.github.com/joevt/477fe842d16095c2bfd839e2ab4794ff . Setup instructions are there.
With the drivers included this way, macOS apfs volumes can now boot and can also appear and be selectable in the Startup Manager (hold option at boot).
- First, get the efi device path of the driver by using the bless command:
The result:Code:sudo bless --mount /Volumes/Catalina\ Boot --file /Volumes/Catalina\ Boot/macOSCatalinaPatcher/apfs.efi --setBoot dumpallbootvars
Code:BootOrder: Boot0080 Boot0080: 1, "Mac OS X", "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)/\macOSCatalinaPatcher\apfs.efi"
- Restore the correct boot using Startup Disk in System Preferences.app.
- Add a Driver#### option using the efi device path for the driver.
Code:setbootvar Driver0080 1 "apfs.efi" "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)/\macOSCatalinaPatcher\apfs.efi" setbootvar Driver0081 1 "nvme.efi" "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)/\macOSCatalinaPatcher\nvme.efi" setdriverorder Driver0080 Driver0081
- Verify results.
Code:dumpallbootvars
- Reboot to test.
I have tested with the apfs driver. I have not tested NVMe.
I said you could put the files on a EFI, FAT, or HFS+ partition. Pick one. Put the files there. Mine is on an HFS+ partition.Could you add some photo to show where the files are located in?
I really want to try this method but I am not sure the detail. Thank you.
Cause I don't know why the file path is with backslash but now I found the reason from pageI said you could put the files on a EFI, FAT, or HFS+ partition. Pick one. Put the files there. Mine is on an HFS+ partition.
If you don't want to create a new partition, then use an existing partition.
Use the EFI partition if you want the files to be more hidden. Put the files in a folder that is not automatically scanned by any boot loader you might install (rEFInd, OpenCore...).
That works but easier is to wrap the path in single quotes:Cause I don't know why the file path is with backslash but now I found the reason from page
sudo bless --folder
, then drag the target file/folder into Terminal, the single quotes would be added for you if required.That works but easier is to wrap the path in single quotes:
sudo bless --folder '/path/to/target/which/would/not/matter/if/it/has/spaces/or/not/'
if you typesudo bless --folder
, then drag the target file/folder into Terminal, the single quotes would be added for you if required.
Oh, yeah. Finally I can boot NVME in my Mac Pro 3,1 successfully.
I think the use of command "sudo bless" is to get the hardware id only. So you can use either --folder or --mount in step 1.
The most important part is "setbootvar DriverXXXX". Make sure you got the nvme.efi and apfs.efi and placed two files in my SATA SSD which is format with HFS+ (Mac OS Extended journaled). Actually this SATA drive is installed El Capitan.
Now I installed Catalina in NVME drive. Thanks all.
--mount
for a reason. See here:--folder
:sudo bless --folder /Volumes/Catalina\ Boot --file /Volumes/Catalina\ Boot/macOSCatalinaPatcher/apfs.efi --setBoot
bless --info /Volumes/Catalina\ Boot
dumpallbootvars
finderinfo[0]: 2 => Blessed System Folder is /Volumes/Catalina Boot/
finderinfo[1]: 584 => Blessed System File is /Volumes/Catalina Boot/macOSCatalinaPatcher/apfs.efi
finderinfo[2]: 0 => Open-folder linked list empty
finderinfo[3]: 0 => No alternate OS blessed file/folder
finderinfo[4]: 0 => Unused field unset
finderinfo[5]: 2 => OS X blessed folder is /Volumes/Catalina Boot/
64-bit VSDB volume id: 0x0922FE1CFA46F197
BootOrder: Boot0080
Boot0080: 1, "Mac OS X", "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)"
Boot0080
EFI device path points to the partition, and the booter knows to get the blessed file from the finderinfo
record so the file path is not included in the Boot0080
EFI Device Path. We need the file path for the Driver#### variables.--mount
:sudo bless --mount /Volumes/Catalina\ Boot --file /Volumes/Catalina\ Boot/macOSCatalinaPatcher/apfs.efi --setBoot
dumpallbootvars
BootOrder: Boot0080
Boot0080: 1, "Mac OS X", "PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0x0,0x0)/HD(12,GPT,01A40057-B54C-4974-AF84-A70CD2E937FF,0x6FC68A00,0x19088)/\macOSCatalinaPatcher\apfs.efi"
--mount
option does not modify the finderinfo
record of the HFS+ partition. The Boot0080
EFI Device Path points to the same partition but now also includes a file path (using \
directory separator since it's all one EFI device path node. EFI device path nodes are separated by a /
character.reading this and thinking about the 64Gb limit that some are having ... i wonder if you could get all 64Gb working properly using OpenCore to customize the memory profile.Curious notice: when I had 64GB installed and one stick in Riser A in Slot 4 was damaged (red light on riser), total RAM was recognised as 56GB in High Sierra and Debian. And About this Mac in memory tab showed that there were 2x 4GB (!) sticks in Riser A Slots 3, 4. Also there was no speed penalty.
Seems like a lot of work to get a couple more GB of RAM. I'm ok with 62 GB.reading this and thinking about the 64Gb limit that some are having ... i wonder if you could get all 64Gb working properly using OpenCore to customize the memory profile.
I recall some post from someone tricking a 5,1 to let them have more RAM on the single proc model by using _clover_ to fake out a different memory configuration.
Crazy idea. 32gb ram modules in a cMP. Anyone tried this?
Hello, everyone. Today, I installed 4 x 32 GB RAM on a 6 core MacPro 5.1 and succeeded in booting up macOS. All the steps are on my blog. (I'm Japanese so the page is in Japanese. Please translate it.) In a nutshell, I put the boot loader in two stages and start it by telling a fake memory...forums.macrumors.com
My thought here being if you were to add a custom memory profile in OpenCore to claim you were running 16 slots with 4Gb each instead of 8 with 8Gb perhaps it would get around the odd limit that is seen as other linux can do 64Gb fine. you may need to compare dmidecode -t memory in the working 64Gb linux config to assist in splitting things up.
If I had 64Gb I'd test this myself, (I only have 32Gb) but if someone else here has 64Gb and is using OpenCore 0.6.3 or later which adds custom memory configuration you could use my example from the thread at the bottom of this post as a starting point.
Just trying to think outside the box here on the limit.
I'm also mentioning this as this has allowed my Xserve3,1 that is running the MP5,1 firmware to be able to use all 6 DIMMs it has on the single socket board instead of being limited to functioning with only 4 slots.
Xserve 2020 [Xs3,1]
So I’ve made some progress with opencore 0.6.4 which adds memory configuration options. I still need time to test more and tweak some of the cosmetics but I’m now booting my xserve 3,1 running Mac Pro 5,1 firmware 144 pretending to be an iMac Pro 1,1 with the MXM wx4150 amd gpu and still the...forums.macrumors.comtime for a sticky: Xserve upgrade guide
I posted about this in the other xserve3,1 thread, but I think there is a wider audience in this one. Using OpenCore at least version 0.6.3 (0.6.4 in my case) we can set a custom smbios memory profile which will allow a Mac Pro 5,1 flashed xserve with westmere chips to retain use of all 6 or 12...forums.macrumors.comtime for a sticky: Xserve upgrade guide
This is what i've got in my config.plist for memory configuration. It works, but cosmetically i'm sure it could be improved, and I'm not 100% sure that the slots are correct but I suspect that as long as you are fully populated and use the same size DIMM in all slots you'd be "fine" The example...forums.macrumors.com
petri@petri-MacPro:~$ efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0001,0000,0080
Boot0000* ubuntu HD(1,GPT,44c4643d-d1e7-453e-9d50-866c7787ec9a,0x800,0x100000)/File(\EFI\ubuntu\shimx64.efi)
Boot0001* rEFInd Boot Manager HD(1,GPT,44c4643d-d1e7-453e-9d50-866c7787ec9a,0x800,0x100000)/File(\EFI\refind\refind_x64.efi)
Boot0080* Mac OS X PciRoot(0x0)/Pci(0x1f,0x2)/Sata(4,0,0)/HD(2,GPT,3b9502a7-9747-4d32-9c34-aed695e0a632,0x64028,0xddfac40)
Boot0081* Mac OS X PciRoot(0x0)/Pci(0x1f,0x2)/Sata(3,0,0)/HD(2,GPT,a10fadc5-4c84-49d6-8642-a6677afad36d,0x64028,0x25294b40)
BootFFFF* PciRoot(0x0)/Pci(0x1f,0x2)/Sata(2,0,0)/HD(1,GPT,44c4643d-d1e7-453e-9d50-866c7787ec9a,0x800,0x100000)/File(\EFI\BOOT\BOOTX64.efi)
Can you confirm that you have a current GOP version for the card installed?
petri@petri-MacPro:~/Downloads/NVFlash$ sudo ./nvflash_linux -6 NVIDIA\ GTX\ 770\ 2048\ MB\ BIOS\ -\ 206871.rom
NVIDIA Firmware Update Utility (Version 5.414.0)
Simplified Version For OEM Only
Checking for matches between display adapter(s) and image(s)...
Adapter: GeForce GTX 770 (10DE,1184,10DE,1058) H:--:NRM S:00,B:02,D:00,F:00
WARNING: Firmware image PCI Subsystem ID (10DE.1033)
does not match adapter PCI Subsystem ID (10DE.1058).
Please press 'y' to confirm override of PCI Subsystem ID's: y
Overriding PCI subsystem ID mismatch
Current - Version:80.04.B4.00.1A ID:10DE:1184:10DE:1058
GK104 Board - 20050000 (Normal Board)
Replace with - Version:80.04.E6.00.01 ID:10DE:1184:10DE:1033
NVIDIA GeForce GTX 770 (Normal Board)
Update display adapter firmware?
Press 'y' to confirm (any other key to abort): y
Identifying EEPROM...
EEPROM ID (37,3012) : AMIC A25L020 2.7-3.6V 2048Kx1S, page
Storing updated firmware image...
......................................................
Verifying update...
Update successful.
Firmware image has been updated from version 80.04.B4.00.1A to 80.04.E6.00.01.
Strange as there shouldn't anything that works in rEFInd but does not in RefindPlus as it is just rEFInd plus some stuff (basically bootscreen on MacPros).I switched back to rEFInd when trying to clear the boot coup issue. When booting blindly I only once managed to get RefindPlus to boot.
Possibly ... Every Keplar tested so far has worked. Code that does the fix was derived from drivers by @joevt.The problem may have been the wrong firmware on the GTX 770.