Contribute
Register

Gigabyte B550 Vision D (Thunderbolt 3) + AMD Ryzen 7 3700X + AMD RX 5600 XT

I've finally figured out how to correctly use the Memory section in OC. I decided to work on this since I've now changed to using MacPro7,1 instead of iMacPro1,1 due to the former apparently being a better match for going forward with AMD 6x00XT GPUs.

If you follow this guide carefully, you will not need the kext "RestrictEvents.kext" file, and you will no longer see a memory error. I've only tested in Big Sur, but it should work under Catalina as well.

Here's the memory guide:

OC's "BANK" numbers were re-arranged to better match the memory upgrade instructions per Apples's docs. The Bank numbers in their order of appearance are slots: 7, 8, 9, 10, 11, 12, 6, 5, 4, 3, 2, and 1. These correspond to the slot numbers on the memory board. In Apple's docs, the slots are arranged into DIMM Channels, A-F. DIMM Channel A are Banks/slots 7, 8; B are 9,10; C are 11, 12; D are 5, 6; E are 3, 4; and F are 1, 2 (as shown in spoiler below).


If properly arranged, below is what is seen with 8 DIMMs installed on my TRX40 mobo. While most mobos only allow 8 memory slots (and some only allow 4), an actual MacPro7,1 has 12 slots, so our mobos will always have at least 4 slots empty. Now, should you only be using 4 memory sticks, then set to empty the following slots: 1, 2, 4, 6, 7, 9, 11, 12. In other words, if you are using 4 DIMMs, only slots 3, 5, 8 and 10 will be populated. (Note: this does not mean you physically move your DIMMs about on your mobo; this whole process is to map your DIMMs into software locations where the macOS is expecting them to be positioned. Keep your DIMMs physically where the mobo manual recommends.)



The code within OC is shown in excerpt below (I use PlistEditPro; the full code is downloadable as an attachment). Add it enbloc as the "Memory" section within the PlatformInfo section (also make sure to enable "CustomMemory"). The SNs are arbitrary (add your actual ones if you're more OCD than me). The part numbers are mine as used, made by Cosair; change these values as you wish. The AssetTag is also arbitrary but only entered if that memory slot is populated. Finally, change the Size and Speed values to better match your DIMM.


If SystemInformation is run, the following is seen:

In the attachment, I included the 8 DIMMs as well as one for 4 DIMMs (I've only tested the 8 DIMM version). Inactivate either one with "#" symbol or activate by removing "#" and editing the label heading to "Memory":
View attachment 517163

Thanks for this! I'll add it to my github.

I'm not sure if it's just for platforms with 8 dimms (TRX40/X299) and only 4 memory slots occupied but I was getting the memory notification error with your 4DIMM example with Banks (8,10,5,3) occupied.
I changed it to Banks (4,6,7,9) and it works fine now.

Screen Shot 2021-05-01 at 5.01.20 PM.png


Screen Shot 2021-05-01 at 5.01.30 PM.png


Code:
<key>Memory</key>
        <dict>
            <key>DataWidth</key>
            <integer>64</integer>
            <key>Devices</key>
            <array>
                <dict>
                    <key>AssetTag</key>
                    <string>123456789</string>
                    <key>BankLocator</key>
                    <string>BANK 7</string>
                    <key>DeviceLocator</key>
                    <string>ChannelE-DIMM0</string>
                    <key>Manufacturer</key>
                    <string>Corsair</string>
                    <key>PartNumber</key>
                    <string>CMK32GX4M2E3200C16</string>
                    <key>SerialNumber</key>
                    <string>00000000</string>
                    <key>Size</key>
                    <integer>16384</integer>
                    <key>Speed</key>
                    <integer>3200</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string></string>
                    <key>BankLocator</key>
                    <string>BANK 8</string>
                    <key>DeviceLocator</key>
                    <string>ChannelE-DIMM1</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string>123456789</string>
                    <key>BankLocator</key>
                    <string>BANK 9</string>
                    <key>DeviceLocator</key>
                    <string>ChannelD-DIMM0</string>
                    <key>Manufacturer</key>
                    <string>Corsair</string>
                    <key>PartNumber</key>
                    <string>CMK32GX4M2E3200C16</string>
                    <key>SerialNumber</key>
                    <string>00000000</string>
                    <key>Size</key>
                    <integer>16384</integer>
                    <key>Speed</key>
                    <integer>3200</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string>123456789</string>
                    <key>BankLocator</key>
                    <string>BANK 10</string>
                    <key>DeviceLocator</key>
                    <string>ChannelD-DIMM1</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string></string>
                    <key>BankLocator</key>
                    <string>BANK 11</string>
                    <key>DeviceLocator</key>
                    <string>ChannelF-DIMM0</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string></string>
                    <key>BankLocator</key>
                    <string>BANK 12</string>
                    <key>DeviceLocator</key>
                    <string>ChannelF-DIMM1</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string>123456789</string>
                    <key>BankLocator</key>
                    <string>BANK 6</string>
                    <key>DeviceLocator</key>
                    <string>ChannelA-DIMM0</string>
                    <key>Manufacturer</key>
                    <string>Corsair</string>
                    <key>PartNumber</key>
                    <string>CMK32GX4M2E3200C16</string>
                    <key>SerialNumber</key>
                    <string>00000000</string>
                    <key>Size</key>
                    <integer>16384</integer>
                    <key>Speed</key>
                    <integer>3200</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string></string>
                    <key>BankLocator</key>
                    <string>BANK 5</string>
                    <key>DeviceLocator</key>
                    <string>ChannelA-DIMM1</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string>123456789</string>
                    <key>BankLocator</key>
                    <string>BANK 4</string>
                    <key>DeviceLocator</key>
                    <string>ChannelB-DIMM0</string>
                    <key>Manufacturer</key>
                    <string>Corsair</string>
                    <key>PartNumber</key>
                    <string>CMK32GX4M2E3200C16</string>
                    <key>SerialNumber</key>
                    <string>00000000</string>
                    <key>Size</key>
                    <integer>16384</integer>
                    <key>Speed</key>
                    <integer>3200</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string></string>
                    <key>BankLocator</key>
                    <string>BANK 3</string>
                    <key>DeviceLocator</key>
                    <string>ChannelB-DIMM1</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string></string>
                    <key>BankLocator</key>
                    <string>BANK 2</string>
                    <key>DeviceLocator</key>
                    <string>ChannelC-DIMM0</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
                <dict>
                    <key>AssetTag</key>
                    <string></string>
                    <key>BankLocator</key>
                    <string>BANK 1</string>
                    <key>DeviceLocator</key>
                    <string>ChannelC-DIMM1</string>
                    <key>Manufacturer</key>
                    <string>NO DIMM</string>
                    <key>PartNumber</key>
                    <string></string>
                    <key>SerialNumber</key>
                    <string></string>
                    <key>Size</key>
                    <integer>0</integer>
                    <key>Speed</key>
                    <integer>0</integer>
                </dict>
            </array>
            <key>ErrorCorrection</key>
            <integer>3</integer>
            <key>FormFactor</key>
            <integer>9</integer>
            <key>MaxCapacity</key>
            <integer>274877906944</integer>
            <key>TotalWidth</key>
            <integer>64</integer>
            <key>Type</key>
            <integer>26</integer>
            <key>TypeDetail</key>
            <integer>128</integer>
        </dict>
 
Thanks for this! I'll add it to my github.

I'm not sure if it's just for platforms with 8 dimms (TRX40/X299) and only 4 memory slots occupied but I was getting the memory notification error with your 4DIMM example with Banks (8,10,5,3) occupied.
I changed it to Banks (4,6,7,9) and it works fine now.

View attachment 517187

Thanks! I've updated my above post and attachment, to incorporate your corrected 4 DIMM settings.
 
Besides the AMD 6900XT drivers being present in the latest Big Sur public beta and usable when the SMBIOS MacPro7,1 is used. I noticed another advantage to using the MacPro7,1 SMBIOS (at least on my TRX40 build): the USB-C port on the TB card is present and active.

However, when a USB-C drive is connected, it is not hot-pluggable but must be connected to the computer before booting in order to mount onto the desktop. The USB-C port did not show up, using the same SSDT, under iMacPro1,1, again this was on the TRX40.

Screen Shot 2021-05-01 at 7.59.38 AM.png



*******

UPDATE:

Having praised the functionality of USB-C on the TB AIC under MacPro7,1, I had to remove the card.

It turns out that the TB AIC on my MSI TRX40 mobo (which does not natively support TB AIC) was leading to a freeze of the computer within 5 minutes of booting with the latest public release of Big Sur 11.4 ß1. Despite looking at USB causes, it turns out that once the TB AIC was removed, there were no more freezes. There were no freezes with the TB AIC when used under 11.2.3; but there were freezes with latest 11.3 release too.
 
Last edited:
Folks,

Just thought to inform you, there's a new update available on the Gigabyte website for the B550 Vision D (F13i) which brings AGESA support and fixes USB 2.0 stablilty.

Just be wary that you will need to disable Resizeable Bar in Settings > IO Ports to get it to boot Catalina or Big Sur, possibly also enable SVM Support and Above 4G Decoding as well.
 


*******

UPDATE:

Having praised the functionality of USB-C on the TB AIC under MacPro7,1, I had to remove the card.

It turns out that the TB AIC on my MSI TRX40 mobo (which does not natively support TB AIC) was leading to a freeze of the computer within 5 minutes of booting with the latest public release of Big Sur 11.4 ß1. Despite looking at USB causes, it turns out that once the TB AIC was removed, there were no more freezes. There were no freezes with the TB AIC when used under 11.2.3; but there were freezes with latest 11.3 release too.
I experienced exactly this issue on my Intel Z490 Vision D with flashed GC-Titan Ridge. There’s a USB port kernel panic. Had to remove the card.
 
** OpenCore 0.6.9 EFI for B550 Vision D **
Supports both Catalina and Big Sur
Please do not quote this post in its entirely. Use a link instead.


Update to OpenCore 0.6.9 using HackinDROM App


If making manual changes to OpenCore config.plist, please ensure that OpenCore Configurator is set to either 0.6.9 Development Version or 0.6.9 Release Version


This update includes:

1. OpenCore 0.6.9
2. VirtualSMC 1.2.3
3. NVMeFix 1.0.7
4. AppleALC 1.6.0
5. Lilu 1.5.3

WARNING:
If you see the message OCS: Failed to parse string field as value with type boolean and <Auto> contents, context <CustomDelays> ! then click here.

One of the improvements in OpenCanopy is display of version information:
03190233.png



For manual update purposes, the ZIP is attached below.
 

Attachments

  • EFI-069-B550-VISION-D.zip
    6.8 MB · Views: 139
Last edited:
Since 11.3, I've not been able to get the UAD stuff to work with this mobo... works everytime with my Asrock though... hmmm... strange. Anyone here with UAD stuff either Apollo or Satellite able to get this working with this mobo.. please share!
 
Since 11.3, I've not been able to get the UAD stuff to work with this mobo... works everytime with my Asrock though... hmmm... strange. Anyone here with UAD stuff either Apollo or Satellite able to get this working with this mobo.. please share!
Does it help to connect a Thunderbolt dock directly to the motherboard and daisy-chain UAD devices to the Dock?
 
No sir, tried that with my OWC TB4 Dock. Sometimes it would show up if i reconnect the TB cable during OC Picker. Its intermittently working that way.
 
So.. i went and tried flashing the TB chip with DESIGNARE-Z390-NVM33-Elias64Fr.bin and still no go! :(
Screen Shot 2021-05-06 at 23.07.35.png

Screen Shot 2021-05-06 at 23.07.57.png
Screen Shot 2021-05-06 at 23.10.42.png


The drivers just wont load and the Devices isnt showing up in the device tree.
Strange that the Info page is showing the devices.. but not in IOReg
 
Back
Top