Jump to content
Mieze

New Driver for Realtek RTL8111

1,467 posts in this topic

Recommended Posts

@mweber: Use the debug version of the driver in order to collect kernel logs. I need at least a full boot sequence with the debug driver. By the way, have you ruled out any hardware issues (bad cable, dust on the connector, etc.)?

 

Mieze

Share this post


Link to post
Share on other sites
Advertisement

I have replaced the kext with the debug version, but I don't know where the kernel log is.  I haven't done one of those before.

 

And yes, all cabling and devices are correct, if I switch the cables into the two ports everything works, but for the other network.

Share this post


Link to post
Share on other sites

I have replaced the kext with the debug version, but I don't know where the kernel log is.  I haven't done one of those before.

 

And yes, all cabling and devices are correct, if I switch the cables into the two ports everything works, but for the other network.

Please see post#1 of this thread for instructions how to retrieve kernel logs.

 

Mieze

Share this post


Link to post
Share on other sites

@mweber: According to the logs the chip hangs so that the driver keeps resetting it but I still don't know why.

 

Anybody else with an RTL8111H out there who can confirm the problem or has a perfectly working connection?

 

Mieze

Share this post


Link to post
Share on other sites

 Yeah -- I thought it was strange because it acts just like the log is showing.  It says it's connect in the SPref > Network and then like 8 seconds later it goes red and starts again.

 

I've been using this exact same hardware on El Capitan for years and just upgraded to High Sierra last week.   Somehow it seems like it's a problem with the new OS.

Share this post


Link to post
Share on other sites

I've been using this exact same hardware on El Capitan for years and just upgraded to High Sierra last week.   Somehow it seems like it's a problem with the new OS.

If it started with HS, it might be related to ASPM as newer versions of macOS implement a more aggressive power management policy. Take a look at your BIOS settings and disable "PCH PCIE ASPM Support" (see board manual). Lets see if it helps.

 

Edit: By the way, do you have sleep/wake working with HS on your machine?

 

Mieze

Share this post


Link to post
Share on other sites

It certainly has to do with HS.  Never had any problems before

 
I just check BIOS and
 
PCIE ASPM is disabled
PCH PCIE ASPM is disabled
PCH DMI ASPM is disabled
 
I have never slept this computer in ElCap or HS, it runs 24/7.  So I've never tested it.
 
I was wondering if it had to do with switching SMBIOS Product Name to iMac17,1.  Somewhere when upgrading to HS I saw that iMax17,1 was the recommended config and I had tons of problems with my Nvidia because of it.  Other than HS upgrade that was the only other major change I made during the upgrade.

Share this post


Link to post
Share on other sites

I was wondering if it had to do with switching SMBIOS Product Name to iMac17,1.  Somewhere when upgrading to HS I saw that iMax17,1 was the recommended config and I had tons of problems with my Nvidia because of it.  Other than HS upgrade that was the only other major change I made during the upgrade.

Looks like I have to dig deeper. I'm going to have to look at the source code!

 

Mieze

Share this post


Link to post
Share on other sites

I'm not sure if this helps, but I did a packet capture on my firewall and the DHCP request is coming through from the NIC and the DHCP request is being answered (offer made), I guess the response just never gets to the driver.

post-1793391-0-92943000-1516231150_thumb.png

Share this post


Link to post
Share on other sites

Hi Mieze, you couldn't make version of the kext with an opportunity to change mac address of the network interface card as here (Realtek RTL8111/RTL8168 driver for OS X with MAC address spoofing), AnV has abandoned development this kext

Share this post


Link to post
Share on other sites

Hi Mieze, you couldn't make version of the kext with an opportunity to change mac address of the network interface card as here (Realtek RTL8111/RTL8168 driver for OS X with MAC address spoofing), AnV has abandoned development this kext

I see no reason why anybody should need or want something like that because it makes no sense at all. MAC addresses can be changed with ifconfig in Terminal or via a startup script and that's the proper way to handle it. That's why I can't understand why you are asking for this feature?

 

Mieze

Share this post


Link to post
Share on other sites

I see no reason why anybody should need or want something like that because it makes no sense at all. MAC addresses can be changed with ifconfig in Terminal or via a startup script and that's the proper way to handle it. That's why I can't understand why you are asking for this feature?

 

Mieze

Ok I will try a script the driver can and it isn't necessary

Share this post


Link to post
Share on other sites

The driver now forces ASPM to disabled/enabled according to the configuration parameter setting in its Info.plist. Here is a final test build (for Sierra and High Sierra) which also fixes a few cosmetic issues. Everybody is encouraged to test it. Provided there are no further problem reports, I'm planning to make this build the next official release.

 

Good luck!

 

Mieze

RealtekRTL8111.kext-V2.2.2d2.zip

Share this post


Link to post
Share on other sites

 I'm planning to make build the next official release.

 

Good luck!

 

Mieze

 

Please sync code source and commit with this new last version on GitHub  https://github.com/Mieze/RTL8111_driver_for_OS_X/commits/master

Last version release very old time - 2.2.1 from (2016-03-12), what is changelog for new version?

When building from source what using XCode version and SDK?

What is requires support target for versions of OS X?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

Announcements

  • Similar Content

    • By Mieze
      This project is dedicated to Lucy, my lovely little Tyrannofelis Rex. 
       

       
      LucyRTL8125Ethernet is an open source driver for the Realtek RTL8125 family of 2.5GBit Ethernet controllers.
       
      Key Features of the Driver
      Supports all versions of Realtek's RTL8125 2.5GBit Ethernet Controllers found on recent boards. Support for multisegment packets relieving the network stack of unnecessary copy operations when assembling packets for transmission. No-copy receive and transmit. Only small packets are copied on reception because creating a copy is more efficient than allocating a new buffer. TCP, UDP and IPv4 checksum offload (receive and transmit). TCP segmentation offload over IPv4 and IPv6. Support for TCP/IPv4, UDP/IPv4, TCP/IPv6 and UDP/IPv6 checksum offload. Supports jumbo frames up to 9000 bytes (strongly recommended for 2.5GBit operation). Fully optimized for Catalina (doesn't work with Mojave and below). Note that older versions of macOS might not support 2.5GB Ethernet. Supports Wake on LAN (untested). Supports VLAN (untested). Support for Energy Efficient Ethernet (EEE) which can be disabled by setting enableEEE to NO in the drivers Info.plist without rebuild. The default is YES. The driver is published under GPLv2.  
      Current Status
      The driver has been tested successfully under Catalina (10.15.4 and above) and, according to first tests, is working stable. I haven't experienced any Kernel Panics during my tests and is working stable on my primary work machine. The driver has been designed to work with Catalina but might also work with Mojave, provided you build from source with Xcode 10.. Please keep in mind that support for 2.5GBit Ethernet was introduced in Mojave (or maybe High Sierra?) so that there is no way to make it work with Sierra or below.  
      Known Issues
      Using autoselect medium it seems to prefer negotiating a connection speed of 1Gbit with my switch so that I had to select 2.5GBit/s manually in order to achieve this speed but it might be different with other switches.   Installation
      You might want to install the driver to /L/E as usual but it's also ok to use Clover's injection function (installation in the EFI folder). Use your favorite kext installation tool for installation or perform the installation manually (for Clover injection). It's your call!  
      Troubleshooting
      Make sure you have followed the installation instructions especially when you have issues with certain domains while the others are working fine. Use the debug version to collect log data when trying to track down problems. The kernel log messages can be retrieved with "log show --predicate "processID == 0" --debug" in order to retrieve kernel logs. Include the log data when asking for support or giving feedback. I'm an engineer, not a clairvoyant. Don't copy and paste large amounts of log data to your post. Create an archive with the log data and attach it to your post. In case you don't want to make your log data publicly accessible, contact me via PM and I will provide you a mail address to send it directly to me.  Delete the following files: /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist /Library/Preferences/SystemConfiguration/preferences.plist In Terminal run netstat -s in order to display network statistics. Carefully examine the data for any unusual activity like a high number of packets with bad IP header checksums, etc. In case auto-configuration of the link layer connection doesn't work it might be necessary to select the medium manually in System Preferences under Network for the interface. Use Wireshark to create a packet dump in order to collect diagnostic information. Keep in mind that there are many manufacturers of network equipment. Although Ethernet is an IEEE standard, different implementations may show different behavior causing incompatibilities. In case you are having trouble try a different switch or a different cable.  
      Changelog
      Version 1.0.0d6 (2020-06-14) Fixed chip recognition. Version 1.0.0d3 (2020-04-20) First working development release.  
      Getting the driver
      Source code can be found on GitHub: https://github.com/Mieze/LucyRTL8125Ethernet You'll find the lastest prebuilt binary here in this thread (see below).  
       
    • By Yosa Tristian
      Can someone help me?
      When I turn on the USB Wireless Adapter (Wifi Dongle), my mouse is lagging (like quick ejecting & rejecting).
      When I turn off the Wifi Dongle, my mouse runs smooth again.
       
      Mouse: Fantech G13 Rhasta II
      Wifi Dongle: TPLink TL-WN725N
      Wifi Dongle Driver : https://github.com/chris1111/Wireless-USB-Adapter
       
      And if you don't mind, can you check my hackintosh configuration? maybe something isn't right yet
      Send me Yosas-MacBook-Pro.zip
    • By Mieze
      Key Features of the Driver
      Supports Qualcomm Atheros AR816x, AR817x, Killer E220x, Killer E2400 and Killer E2500. Support for multisegment packets relieving the network stack of unnecessary copy operations when assembling packets for transmission. No-copy receive and transmit. Only small packets are copied on reception because creating a copy is more efficient than allocating a new buffer. TCP, UDP and IPv4 checksum offload (receive and transmit). Support for TCP/IPv6 and UDP/IPv6 checksum offload. Makes use of the chip's TCP Segmentation Offload (TSO) feature with IPv4 and IPv6 in order to reduce CPU load while sending large amounts of data. Fully optimized for Mountain Lion, Mavericks and Yosemite (64bit architecture) but should work with Lion (only 64bit) too, provided you build from source with the 10.7 SDK. Wake on LAN support. VLAN support used to be broken in older versions but is working since version 2.3.2. The driver is published under GPLv2.
    • By miliuco
      Install macOS 10.15 Catalina on Gigabyte P55-USB3 with Radeon RX 580 graphics card using a USB device created with the createinstallmedia command and Clover as bootloader. Instructions to install macOS 10.14 Mojave on this computer are almost identical, replacing Catalina app with Mojave, so this article is suitable for both versions of macOS. The Gigabyte P55-USB3 motherboard (and some others from the same brand with the P55 / H55 chipset) have made it easy to build a hackintosh and install macOS since 10 years ago. Although it is an old motherboard, the behavior with Mojave or Catalina is very good after changing the classic hard drive (HDD) for a solid state drive (SSD).

      Components of the hackintosh
      Gigabyte GA-P55-USB3 motherboard: P55 chipset, 1156 socket, ALC892 audio, Gigabit RTL8111D network, DDR3 RAM Intel Core i5-750 processor for socket 1156: 4 cores, 8MB cache, clock rate 2.66 GHz Fenvi FV-T919 wireless + Bluetooth card: PCI-Express, wifi is ac type, detected by macOS as Airport and Apple Bluetooth Radeon RX 580 8 GB graphics card: works OOB but with a few details to be considered, it has its own article.  
      Previous requirements
      Install macOS Catalina app in /Applications folder USB flash drive with at least 16GB prepared from Disk Utility with MBR partition scheme and formatted as Mac Os Plus (on older Gigabyte boards like mine, USB sticks partitioned with GUID scheme instead of MBR usually hang the system when booting) Recent version of Clover (I have used r5117) Recent versions of Lilu (at least 1.4.4) and WhateverGreen (at least 1.3.9) to fine-tune the behavior of the graphics card Recent version of RealtekRTL8111 (I have used 2.2.2) FaceSMC version 6.26-322 (newer versions disable automatic mounting of USB devices on my system).  
      Create install USB
      Run this command from Terminal (assuming the target device is called USB):
      Bash: sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/USB /Applications/Install\ macOS\ Catalina.app
      Clover must be installed on the USB memory, I choose the following options:
      Bootloader > Install boot0af on the MBR CloverEFi > CloverEFI 64-bit SATA BIOS Drivers, 64 bit > Recommended drivers > FSInject + SMCHelper + XhciDxe BIOS Drivers, 64 bit > File System drivers > ApfsDriverLoader Install RC scripts on selected volume Optional RC scripts > Disable sleep proxy client.  
      You have to copy 4 kexts to the EFI/CLOVER/kexts/Other folder of the USB device: FaceSMC 6.26-322, Lilu 1.4.4, WhateverGreen 1.3.9 and RealtekRTL8111 2.2.2. Regarding the config.plist file, the most significant is:
      Boot > kext-dev-mode = 1 in Boot arguments GUI > Theme embedded, EmbeddedThemeType Dark, Screen Resolution 1920x1080, Preboot in Hide Volume Graphics > blank, nothing is checked except if foxbox solution is used to have more than 2 connectors enabled RT Variables > 0x28 in BooterConfig and 0x67 in CsrActiveConfig SMBios > iMac14,2 Sytem Parameters> Yes in Inject Kexts and check Inject System ID.  
      Install macOS Catalina

      Boot from the USB device and choose Install macOS from Install macOS Catalina. The installation program runs until the PC restarts. Here choose Install macOS from HDD (the name of the volume you are installing macOS on). With RX 580 graphics card, the screen goes black in this second phase of the installation, it is a phase in which the user has nothing to do until the PC is restarted so you can let it work until the Clover menu again. You have to choose Boot macOS from HDDto boot the installed system from the hard disk, the screen is recovered and you can configure the account and the initial options. From this moment the screen works fine.

      In summary:
      Boot from USB > Clover menu > Install macOS from Install macOS Catalina > screen works fine Boot from USB > Clover menu > Install macOS from HDD > black screen Boot from USB > Clover menu > Boot macOS from HDD > screen works fine.  
      Install Clover and kexts on the hard drive

      Clover needs to be installed on the disk where we just installed macOS. Options are the same as when installing it on the USB memory. You also have to copy the 4 kexts (FaceSMC 6.26-322, Lilu 1.4.4, WhateverGreen 1.3.9 and RealtekRTL8111 2.2.2) into the EFI/CLOVER/kexts/Other folder on the EFI partition of the disk. And review the config.plist file remembering the comments for the USB.

      If everything goes well, the computer starts from the hard disk with a running copy of macOS Catalina.
       
       

×