Contribute
Register

Simple method for driving Intel 82574L in Catalina

Status
Not open for further replies.
Joined
Aug 25, 2022
Messages
16
Motherboard
HPE ProLiant MicroServer Gen10 K15
CPU
X3216
Graphics
R5
Mac
  1. iMac
Mobile Phone
  1. Other
Hello, I read this guide here (thanks to Edhawk) but was terrified by its complexity https://www.tonymacx86.com/threads/...ith-82574l-pcie-nic-monterey-opencore.319056/

I tried appleintelE1000e.kext, but it did not work. Finally I find IONetworkingFamilyInjector.kext_.macos-sierra, it works! The procedure is really easy, and it appears that the KEXT injection is still functional in Catalina. Is my approach correct?

Here is the file:
 

Attachments

  • IONetworkingFamilyInjector.kext_.macos-sierra (1).zip
    2.1 KB · Views: 31
The kext you attached above is empty, so not sure what you have done or if what you have done is correct.
 
The kext you attached above is empty, so not sure what you have done or if what you have done is correct.
Hello and thank you for your response. In fact, this Kext just contains a 'info.plist' file that written the device ID:

<key>IOPCIMatch</key>
<string>0x104b8086 0x10f68086 0x10d38086</string>

I think the specification above (0x10d38086) permits the system to use its own driver in L/S/E. Is this correct?
 
The copy of the IONetworkingFamilyInjector.kext/Contents folder you provided is empty. There is no info.plist present in the 'kext' attached above, not when I look within the contents folder, i.e. right-click and select 'Show Package Contents' from the drop down list.

High Sierra that I have on a spare SSD doesn't have IONetworkingFamilyInjector.kext in the /S/L/E or any other folder.

Adding the Device/vendor ID for the Ethernet controller can only help, but I'm not sure you would want to add it to /S/L/E or /L/E as they are both tightly controlled and monitored by macOS.

Adding the non-executable kext to your /OC/Kexts folder and config.plist should be fine.
 
The copy of the IONetworkingFamilyInjector.kext/Contents folder you provided is empty. There is no info.plist present in the 'kext' attached above, not when I look within the contents folder, i.e. right-click and select 'Show Package Contents' from the drop down list.

High Sierra that I have on a spare SSD doesn't have IONetworkingFamilyInjector.kext in the /S/L/E or any other folder.

Adding the Device/vendor ID for the Ethernet controller can only help, but I'm not sure you would want to add it to /S/L/E or /L/E as they are both tightly controlled and monitored by macOS.

Adding the non-executable kext to your /OC/Kexts folder and config.plist should be fine.
just checked the above kext and can see the info.plist with contents:
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>CFBundleIdentifier</key>
    <string>com.void.driver.IONetworkingFamilyInjector</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>Intel Gigabit CT Desktop Adapter Support Fix</string>
    <key>CFBundlePackageType</key>
    <string>KEXT</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleVersion</key>
    <string>1.0.0</string>
    <key>IOKitPersonalities</key>
    <dict>
        <key>Intel82574L</key>
        <dict>
            <key>CFBundleIdentifier</key>
            <string>com.apple.driver.Intel82574LEthernet</string>
            <key>Driver Parameters</key>
            <dict>
                <key>Dump EEPROM</key>
                <false/>
                <key>Enable TSO</key>
                <false/>
                <key>Flow Control</key>
                <string>Transmit and Receive</string>
                <key>Maximum Interrupt Rate</key>
                <integer>8000</integer>
                <key>Offload TCP/IP Checksum</key>
                <true/>
                <key>RxAbsoluteTimer10</key>
                <integer>300</integer>
                <key>RxAbsoluteTimer100</key>
                <integer>300</integer>
                <key>RxAbsoluteTimer1000</key>
                <integer>64</integer>
                <key>RxDelayTimer10</key>
                <integer>25</integer>
                <key>RxDelayTimer100</key>
                <integer>25</integer>
                <key>RxDelayTimer1000</key>
                <integer>0</integer>
                <key>RxDescriptorCount</key>
                <integer>1024</integer>
                <key>TxDescriptorCount</key>
                <integer>1024</integer>
            </dict>
            <key>IOClass</key>
            <string>Intel82574L</string>
            <key>IOPCIMatch</key>
            <string>0x104b8086 0x10f68086 0x10d38086</string>
            <key>IOPCITunnelCompatible</key>
            <true/>
            <key>IOProviderClass</key>
            <string>IOPCIDevice</string>
            <key>IOResourceMatch</key>
            <string>IOKit</string>
        </dict>
    </dict>
    <key>OSBundleRequired</key>
    <string>Network-Root</string>
</dict>
</plist>
 
The copy of the IONetworkingFamilyInjector.kext/Contents folder you provided is empty. There is no info.plist present in the 'kext' attached above, not when I look within the contents folder, i.e. right-click and select 'Show Package Contents' from the drop down list.

High Sierra that I have on a spare SSD doesn't have IONetworkingFamilyInjector.kext in the /S/L/E or any other folder.

Adding the Device/vendor ID for the Ethernet controller can only help, but I'm not sure you would want to add it to /S/L/E or /L/E as they are both tightly controlled and monitored by macOS.

Adding the non-executable kext to your /OC/Kexts folder and config.plist should be fine.
Thank you for clarifying, I now understand what you mean. I checked again and discovered that 'info.plist' is a hidden file, you may need to enable reveal hidden files in Finder (however I'm not sure why the author did this).
 
just checked the above kext and can see the info.plist with contents:
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>CFBundleIdentifier</key>
    <string>com.void.driver.IONetworkingFamilyInjector</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>Intel Gigabit CT Desktop Adapter Support Fix</string>
    <key>CFBundlePackageType</key>
    <string>KEXT</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleVersion</key>
    <string>1.0.0</string>
    <key>IOKitPersonalities</key>
    <dict>
        <key>Intel82574L</key>
        <dict>
            <key>CFBundleIdentifier</key>
            <string>com.apple.driver.Intel82574LEthernet</string>
            <key>Driver Parameters</key>
            <dict>
                <key>Dump EEPROM</key>
                <false/>
                <key>Enable TSO</key>
                <false/>
                <key>Flow Control</key>
                <string>Transmit and Receive</string>
                <key>Maximum Interrupt Rate</key>
                <integer>8000</integer>
                <key>Offload TCP/IP Checksum</key>
                <true/>
                <key>RxAbsoluteTimer10</key>
                <integer>300</integer>
                <key>RxAbsoluteTimer100</key>
                <integer>300</integer>
                <key>RxAbsoluteTimer1000</key>
                <integer>64</integer>
                <key>RxDelayTimer10</key>
                <integer>25</integer>
                <key>RxDelayTimer100</key>
                <integer>25</integer>
                <key>RxDelayTimer1000</key>
                <integer>0</integer>
                <key>RxDescriptorCount</key>
                <integer>1024</integer>
                <key>TxDescriptorCount</key>
                <integer>1024</integer>
            </dict>
            <key>IOClass</key>
            <string>Intel82574L</string>
            <key>IOPCIMatch</key>
            <string>0x104b8086 0x10f68086 0x10d38086</string>
            <key>IOPCITunnelCompatible</key>
            <true/>
            <key>IOProviderClass</key>
            <string>IOPCIDevice</string>
            <key>IOResourceMatch</key>
            <string>IOKit</string>
        </dict>
    </dict>
    <key>OSBundleRequired</key>
    <string>Network-Root</string>
</dict>
</plist>
That's it, thanks!
 
OK, my bad the info.plist is present but hidden.

Screenshot 2022-08-31 at 17.21.46.png info.plist viewed in ProperTree

Another aspect of the guide by Jaymonkey was getting the Intel 82574L ethernet controller to be seen as built-in by macOS. As if this is not the case you can have some issues with getting iCloud, Messages etc. working correctly.

Check what is shown in Hackintool > System > Peripherals, as the 'Builtin' box adjacent to the Ethernet controller should be ticked.

Screenshot 2022-08-31 at 17.26.44.png Hackintool > System > Peripherals tab, Ethernet highlighted
 
OK, my bad the info.plist is present but hidden.

View attachment 554085 info.plist viewed in ProperTree

Another aspect of the guide by Jaymonkey was getting the Intel 82574L ethernet controller to be seen as built-in by macOS. As if this is not the case you can have some issues with getting iCloud, Messages etc. working correctly.

Check what is shown in Hackintool > System > Peripherals, as the 'Builtin' box adjacent to the Ethernet controller should be ticked.

View attachment 554086 Hackintool > System > Peripherals tab, Ethernet highlighted
and if the correct path is found, you can set it in config.plist to be built-in, example only:

Screenshot 2022-08-31 173047.jpg
 
OK, my bad the info.plist is present but hidden.

View attachment 554085 info.plist viewed in ProperTree

Another aspect of the guide by Jaymonkey was getting the Intel 82574L ethernet controller to be seen as built-in by macOS. As if this is not the case you can have some issues with getting iCloud, Messages etc. working correctly.

Check what is shown in Hackintool > System > Peripherals, as the 'Builtin' box adjacent to the Ethernet controller should be ticked.

View attachment 554086 Hackintool > System > Peripherals tab, Ethernet highlighted

Hello, this is what I see, and it does not appear to display built-in. However it has not harmed anything thus far (I do not use icloud). Do I need to do anything else?

1661964479166.png
 
Status
Not open for further replies.
Back
Top