Contribute
Register

X299 - Open Core support

Status
Not open for further replies.
Does the same thing happen with USBInjectAll kext and XhciPortLimit set to enabled in the config.plist? What does your USB kext mapping look like
yes, totally. i don't use usb kext as the instructions suggested to use either the generated SSDT or the kext but it looks like this. I used hackintools to generate the files by plugging in each port one USB2 device and then one usb3 device then deleted all the white entries. I have just 14 ports. Then i removed the usbinjectall and remove the patch on the ports limit. Could it be because it's an asmedia chipset on the asus sage ? there's a bit extra to do in the usb mapping instructions page when it comes to other chipset than intel. I haven't fully understand this to be honest.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleDevelopmentRegion</key>
    <string>English</string>
    <key>CFBundleGetInfoString</key>
    <string>1.0 Copyright © 2018-2020 Headsoft. All rights reserved.</string>
    <key>CFBundleIdentifier</key>
    <string>com.Headsoft.USBPorts</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>USBPorts</string>
    <key>CFBundlePackageType</key>
    <string>KEXT</string>
    <key>CFBundleShortVersionString</key>
    <string>1.0</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleVersion</key>
    <string>1.0</string>
    <key>IOKitPersonalities</key>
    <dict>
        <key>iMacPro1,1-PXSX</key>
        <dict>
            <key>CFBundleIdentifier</key>
            <string>com.apple.driver.AppleUSBMergeNub</string>
            <key>IOClass</key>
            <string>AppleUSBMergeNub</string>
            <key>IONameMatch</key>
            <string>PXSX</string>
            <key>IOPCIPrimaryMatch</key>
            <string>0x21421b21</string>
            <key>IOProbeScore</key>
            <integer>5000</integer>
            <key>IOProviderClass</key>
            <string>AppleUSBXHCIPCI</string>
            <key>IOProviderMergeProperties</key>
            <dict>
                <key>kUSBSleepPortCurrentLimit</key>
                <integer>2100</integer>
                <key>kUSBSleepPowerSupply</key>
                <integer>5100</integer>
                <key>kUSBWakePortCurrentLimit</key>
                <integer>2100</integer>
                <key>kUSBWakePowerSupply</key>
                <integer>5100</integer>
                <key>port-count</key>
                <data>
                BAAAAA==
                </data>
                <key>ports</key>
                <dict>
                    <key>HS02</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS02</string>
                        <key>port</key>
                        <data>
                        BAAAAA==
                        </data>
                    </dict>
                </dict>
            </dict>
            <key>model</key>
            <string>iMacPro1,1</string>
        </dict>
        <key>iMacPro1,1-XHCI</key>
        <dict>
            <key>CFBundleIdentifier</key>
            <string>com.apple.driver.AppleUSBMergeNub</string>
            <key>IOClass</key>
            <string>AppleUSBMergeNub</string>
            <key>IONameMatch</key>
            <string>XHCI</string>
            <key>IOPCIPrimaryMatch</key>
            <string>0xa2af8086</string>
            <key>IOProbeScore</key>
            <integer>5000</integer>
            <key>IOProviderClass</key>
            <string>AppleUSBXHCISPT</string>
            <key>IOProviderMergeProperties</key>
            <dict>
                <key>kUSBSleepPortCurrentLimit</key>
                <integer>2100</integer>
                <key>kUSBSleepPowerSupply</key>
                <integer>5100</integer>
                <key>kUSBWakePortCurrentLimit</key>
                <integer>2100</integer>
                <key>kUSBWakePowerSupply</key>
                <integer>5100</integer>
                <key>port-count</key>
                <data>
                FQAAAA==
                </data>
                <key>ports</key>
                <dict>
                    <key>HS01</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS01</string>
                        <key>port</key>
                        <data>
                        AQAAAA==
                        </data>
                    </dict>
                    <key>HS03</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS03</string>
                        <key>port</key>
                        <data>
                        AwAAAA==
                        </data>
                    </dict>
                    <key>HS04</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS04</string>
                        <key>port</key>
                        <data>
                        BAAAAA==
                        </data>
                    </dict>
                    <key>HS05</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS05</string>
                        <key>port</key>
                        <data>
                        BQAAAA==
                        </data>
                    </dict>
                    <key>HS06</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS06</string>
                        <key>port</key>
                        <data>
                        BgAAAA==
                        </data>
                    </dict>
                    <key>HS07</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS07</string>
                        <key>port</key>
                        <data>
                        BwAAAA==
                        </data>
                    </dict>
                    <key>HS08</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS08</string>
                        <key>port</key>
                        <data>
                        CAAAAA==
                        </data>
                    </dict>
                    <key>HS09</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS09</string>
                        <key>port</key>
                        <data>
                        CQAAAA==
                        </data>
                    </dict>
                    <key>HS10</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS10</string>
                        <key>port</key>
                        <data>
                        CgAAAA==
                        </data>
                    </dict>
                    <key>HS11</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS11</string>
                        <key>port</key>
                        <data>
                        CwAAAA==
                        </data>
                    </dict>
                    <key>HS12</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS12</string>
                        <key>port</key>
                        <data>
                        DAAAAA==
                        </data>
                    </dict>
                    <key>HS14</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>HS14</string>
                        <key>port</key>
                        <data>
                        DgAAAA==
                        </data>
                    </dict>
                    <key>SS05</key>
                    <dict>
                        <key>UsbConnector</key>
                        <integer>255</integer>
                        <key>name</key>
                        <string>SS05</string>
                        <key>port</key>
                        <data>
                        FQAAAA==
                        </data>
                    </dict>
                </dict>
            </dict>
            <key>model</key>
            <string>iMacPro1,1</string>
        </dict>
    </dict>
    <key>OSBundleRequired</key>
    <string>Root</string>
</dict>
</plist>
 
yes, totally. i don't use usb kext as the instructions suggested to use either the generated SSDT or the kext but it looks like this. I used hackintools to generate the files by plugging in each port one USB2 device and then one usb3 device then deleted all the white entries. I have just 14 ports. Then i removed the usbinjectall and remove the patch on the ports limit. Could it be because it's an asmedia chipset on the asus sage ? there's a bit extra to do in the usb mapping instructions page when it comes to other chipset than intel. I haven't fully understand this to be honest.

Please upload the kext file next time.
1) The mapping doesn't look correct since all the values have 255 as USBConnector.
2) It's 15 ports per chipset so you only have to map the intel (XHCI).
3) Does the issue happen on intel ports too? Asmedia are the USB 3.1 ports
4) @InsomnIaHackintosh do you have the kext file we made so @DrMacabre can take a look?
 
Yes only can be done in ubuntu
OK, I am up for that challenge. @kgp says in the guide:

"Thus, the commands I had to run to mod the Intel X540-T1 EEPROM were:
Code:
sudo ethtool -E enp225s0 magic 0x15288086 offset 0x48e value 0x0a

sudo ethtool -E enp225s0 magic 0x15288086 offset 0x48f value 0x00"

This is my first time doing the EEPROM modding thing and I do not want to mess up and brick the adapters! I am assuming that the commands I need to run are different for my adapters, right? I think it says in UBUNTU that my Sage 10G adapters are Intel X550T's. Are these commands consistent within each Intel adapter model or is each adapter going to have unique commands? Will the commands used by another person who has an Asus WS X299 Sage 10G with Intel X550T's going to work for me or do I have to figure out unique offset values for the commands my adapters?
 
OK, I am up for that challenge. @kgp says in the guide:

"Thus, the commands I had to run to mod the Intel X540-T1 EEPROM were:
Code:
sudo ethtool -E enp225s0 magic 0x15288086 offset 0x48e value 0x0a

sudo ethtool -E enp225s0 magic 0x15288086 offset 0x48f value 0x00"

This is my first time doing the EEPROM modding thing and I do not want to mess up and brick the adapters! I am assuming that the commands I need to run are different for my adapters, right? I think it says in UBUNTU that my Sage 10G adapters are Intel X550T's. Are these commands consistent within each Intel adapter model or is each adapter going to have unique commands? Will the commands used by another person who has an Asus WS X299 Sage 10G with Intel X550T's going to work for me or do I have to figure out unique offset values for the commands my adapters?

The offset and magic values will be different for the X550T. Refer to posts 962-966
 
OK, I am up for that challenge. @kgp says in the guide:

"Thus, the commands I had to run to mod the Intel X540-T1 EEPROM were:
Code:
sudo ethtool -E enp225s0 magic 0x15288086 offset 0x48e value 0x0a

sudo ethtool -E enp225s0 magic 0x15288086 offset 0x48f value 0x00"

This is my first time doing the EEPROM modding thing and I do not want to mess up and brick the adapters! I am assuming that the commands I need to run are different for my adapters, right? I think it says in UBUNTU that my Sage 10G adapters are Intel X550T's. Are these commands consistent within each Intel adapter model or is each adapter going to have unique commands? Will the commands used by another person who has an Asus WS X299 Sage 10G with Intel X550T's going to work for me or do I have to figure out unique offset values for the commands my adapters?
If the answer is that commands are unique to each adapter, I am feeling a bit stumped here! If "unique" is the answer, can some one help me figure out the commands for my adapters? Here is the data.....

The data that the UBUNTU Ethtools info commands are giving me are the the attached file. PLEASE HELP! Thanks!
 

Attachments

  • UBUNTU Ethtool output data.txt
    117.8 KB · Views: 93
The offset and magic values will be different for the X550T. Refer to posts 962-966
Thanks! That is exactly what I was hoping. Disregard my last post then. You beat me to the punch!
 
djlild7hina, it worked like a charm! Ethernet adapters now up on MacOS. Thanks!

Cool I'm not sure if you're going to map the USB ports yourself but luckily I already have it built since my board is also the Sage 10G.


1. Extract and copy the X299USB.kext file to your EFI folder under EFI-OC-Kexts.
2. If you're using SMBIOS iMacPro1,1, right-click the X299USB.kext file and Show Package Contents. Open the Info.plist and change 'MacPro7,1-XHCI' to iMacPro1,1-XHCI' under IOKitPersonalities. There will also be an entry for 'model' that you'll change from 'MacPro7,1' to 'iMacPro1,1'.
2. Delete USBInjectAll.kext from the same folder
3. In your config.plist, set XhciPortLimit to NO under Kernel-Quirks.
4. In your config.plist, under Kernel-Add find the entry that had USBInjectAll.kext. Change BundlePath to X299USB.kext and blank out the ExecutablePath.
 
Cool I'm not sure if you're going to map the USB ports yourself but luckily I already have it built since my board is also the Sage 10G.


1. Extract and copy the X299USB.kext file to your EFI folder under EFI-OC-Kexts.
2. If you're using SMBIOS iMacPro1,1, right-click the X299USB.kext file and Show Package Contents. Open the Info.plist and change 'MacPro7,1-XHCI' to iMacPro1,1-XHCI' under IOKitPersonalities. There will also be an entry for 'model' that you'll change from 'MacPro7,1' to 'iMacPro1,1'.
2. Delete USBInjectAll.kext from the same folder
3. In your config.plist, set XhciPortLimit to NO under Kernel-Quirks.
4. In your config.plist, under Kernel-Add find the entry that had USBInjectAll.kext. Change BundlePath to X299USB.kext and blank out the ExecutablePath.
Wow, @djlild7hina, that’s very generous of you. Thanks for making this so much easier!

Do you have any tips or shortcuts for me on any further steps in optimizing this Sage 10g build? I think the USB mapping was the last step on the guide at the beginning of this thread.

Just for clarification, What is the best way to add the SMBIOS Serial, Board ID, and SMuuid Number info? The Open Core Configurator tool?

I am especially interested in installing the Titan Ridge Thunderbolt Card. Any tips on that? I am hoping that it will successfully be hot pluggable! I see that it seems to be possible after flashing the Titan-Ridge TB3 card with new firmware. Any experience with that? What’s the best guide to use?

Thanks again for your generous assistance!! This is such a great community!
 
Last edited:
Wow, @djlild7hina, that’s very generous of you. Thanks for making this so much easier!

Do you have any tips or shortcuts for me on any further steps in optimizing this Sage 10g build? I think the USB mapping was the last step on the guide at the beginning of this thread.

Just for clarification, What is the best way to add the SMBIOS Serial, Board ID, and SMuuid Number info? The Open Core Configurator tool?

I am especially interested in installing the Titan Ridge Thunderbolt Card. Any tips on that? I am hoping that it will successfully be hot pluggable! I see that it seems to be possible after flashing the Titan-Ridge TB3 card with new firmware. Any experience with that? What’s the best guide to use?

Thanks again for your generous assistance!! This is such a great community!

If you haven’t, I would get a compatible WiFi/bt pcie card for handoff and airdrop, etc. Since the Sage does not have any internal usb 2 ports, I have some options listed in post 1.
For SMBIOS info you can either use GenSMBIOS or clover configurator. Do not use Open Core configurator to modify your config.plist since OpenCore is still in beta and things are changing constantly.

The thunderbolt card has to be plugged in to slot 2 on the sage.
If you look at kgps thread, he has instructions to get it working.

If you want to go a step further and flash your card with custom firmware, it’ll behave more like a Mac and support thunderbolt bus and local node. You can look in CaseySJ’s z390 designaire thread for more info.
Note flashing isn’t for everyone so if the regular kgp ssdt approach works for you and don’t need the extra functionality I wouldn’t flash.

I currently have two titan ridge cards in my hack with custom firmware
 
Last edited:
Status
Not open for further replies.
Back
Top