Current version: 1.0.19 1.0.15 (as of 2018-12-10)
Realtek GBE USB
- Gigabit ethernet
- USB hub
- Launch
System Preferences
->Network
- See
USB 10/100/1000 LAN
- https://i.imgur.com/Bm7D0Ld.png (mirror)
- https://i.imgur.com/wcMZFh8.png (mirror)
- Launch
System Information
(also known asSystem Profiler
) ->Hardware
->USB
- https://i.imgur.com/NJi9yC4.png (mirror)
- Launch
System Information
(also known asSystem Profiler
) ->Software
->Extensions
- https://i.imgur.com/64QCxxS.png (mirror)
- Launch a terminal/shell
ioreg -p IOUSB -w0
ioreg -p IOUSB -w0 -l
: For more info
+-o Root <class IORegistryEntry, id 0x100000100, retain 14>
+-o Root Hub Simulation Simulation@14000000 <class AppleUSBRootHubDevice, id 0x1000002fa, registered, matched, active, busy 0 (6 ms), retain 13>
+-o USB2.0 Hub @14100000 <class AppleUSBDevice, id 0x1000002fb, registered, matched, active, busy 0 (43 ms), retain 14>
+-o Apple Internal Keyboard / Trackpad@14400000 <class AppleUSBDevice, id 0x1000002ff, registered, matched, active, busy 0 (96 ms), retain 22>
+-o USB3.0 Hub @14500000 <class AppleUSBDevice, id 0x100000363, registered, matched, active, busy 0 (54 ms), retain 15>
| +-o USB 10/100/1000 LAN@14540000 <class AppleUSBDevice, id 0x100000418, registered, matched, active, busy 0 (73 ms), retain 18>
+-o Bluetooth USB Host Controller@14300000 <class AppleUSBDevice, id 0x1000003d8, registered, matched, active, busy 0 (58 ms), retain 24>
Terminal output snippet from `ioreg -p IOUSB -w0 -l`
+-o USB3.0 Hub @14500000 <class AppleUSBDevice, id 0x100000363, registered, matched, active, busy 0 (54 ms), retain 15>
| | {
| | "sessionID" = 2480892594
| | "iManufacturer" = 1
| | "bNumConfigurations" = 1
| | "idProduct" = 2066
| | "bcdDevice" = 37009
| | "Bus Power Available" = 900
| | "USB Address" = 5
| | "bMaxPacketSize0" = 9
| | "iProduct" = 2
| | "iSerialNumber" = 0
| | "bDeviceClass" = 9
| | "Built-In" = No
| | "locationID" = 340787200
| | "bDeviceSubClass" = 0
| | "bcdUSB" = 768
| | "USB Product Name" = "USB3.0 Hub "
| | "PortNum" = 5
| | "non-removable" = "no"
| | "IOCFPlugInTypes" = {"9dc7b780-9ec0-11d4-a54f-000a27052861"="IOUSBFamily.kext/Contents/PlugIns/IOUSBLib.bundle"}
| | "bDeviceProtocol" = 3
| | "IOUserClientClass" = "IOUSBDeviceUserClientV2"
| | "IOPowerManagement" = {"DevicePowerState"=0,"CurrentPowerState"=3,"CapabilityFlags"=65536,"MaxPowerState"=4,"DriverPowerState"=3}
| | "Device Speed" = 3
| | "USB Vendor Name" = "VIA Labs, Inc. "
| | "idVendor" = 8457
| | "IOGeneralInterest" = "IOCommand is not serializable"
| | "IOClassNameOverride" = "IOUSBDevice"
| | }
| |
| +-o USB 10/100/1000 LAN@14540000 <class AppleUSBDevice, id 0x100000418, registered, matched, active, busy 0 (73 ms), retain 18>
| {
| "sessionID" = 3379212797
| "iManufacturer" = 1
| "bNumConfigurations" = 2
| "idProduct" = 33107
| "bcdDevice" = 12288
| "Bus Power Available" = 900
| "USB Address" = 8
| "bMaxPacketSize0" = 9
| "iProduct" = 2
| "iSerialNumber" = 3
| "bDeviceClass" = 0
| "Built-In" = No
| "locationID" = 341049344
| "bDeviceSubClass" = 0
| "bcdUSB" = 768
| "USB Product Name" = "USB 10/100/1000 LAN"
| "PortNum" = 4
| "non-removable" = "no"
| "IOCFPlugInTypes" = {"9dc7b780-9ec0-11d4-a54f-000a27052861"="IOUSBFamily.kext/Contents/PlugIns/IOUSBLib.bundle"}
| "bDeviceProtocol" = 0
| "IOUserClientClass" = "IOUSBDeviceUserClientV2"
| "IOPowerManagement" = {"ChildrenPowerState"=4,"DevicePowerState"=0,"CurrentPowerState"=4,"CapabilityFlags"=32768,"MaxPowerState"=4,"DriverPowerState"=4}
| "Device Speed" = 3
| "USB Vendor Name" = "Realtek"
| "idVendor" = 3034
| "IOGeneralInterest" = "IOCommand is not serializable"
| "USB Serial Number" = "002427FE48F6"
| "IOClassNameOverride" = "IOUSBDevice"
| }
|
- Launch a terminal/shell
ifconfig
en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>
ether 00:24:27:fe:48:f6
inet 192.168.1.135 netmask 0xffffff00 broadcast 192.168.1.255
media: autoselect (1000baseT <full-duplex,flow-control>)
status: active
The driver is located at
/System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleRTL815X*.kext
/Library/Extensions/AppleRTL815X*.kext
Here are the namespaces:
com.realtek.driver.AppleRTL815XEthernet
com.realtek.driver.AppleRTL815XComposite
See http://osxdaily.com/2015/06/24/load-unload-kernel-extensions-mac-os-x/
With normal operation with only the network cable plugged in, I only see com.realtek.driver.AppleRTL815XEthernet
loaded.
# Unload
sudo kextunload /Library/Extensions/AppleRTL815XEthernet109.kext
sudo kextunload /Library/Extensions/AppleRTL815XComposite109.kext
# Load
sudo kextload /Library/Extensions/AppleRTL815XEthernet109.kext
sudo kextload /Library/Extensions/AppleRTL815XComposite109.kext
# Find if loaded
kextstat | grep com.realtek.driver.AppleRTL815XEthernet
kextstat | grep com.realtek.driver.AppleRTL815XComposite
Perhaps clear the Kernel cache
sudo rm -rf /System/Library/Caches/com.apple.kext.caches
I got a new USB ethernet adapter because the old one had lots of issues (hence the gist in the first place). But it still uses the same Realtek 8153 chip although am using the native driver though now, AppleUSBECM.kext
In terms of my previous issues, I remember that when I clicked the little lock in the browser to view the cert, it would crash my computer. But the disconnects that required a restart were the bigger issue. (personal reference link)
I'm currently running macOS Mojave 10.14
@sinak yes I'm seeing this behaviour on my M1 MacBook Pro. I have an OWC Thunderbolt 4 Dock with the Realtek ethernet chipset and I also have a Plugable USBC-E2500 with a slightly different revision of the Realtek chipset that supports 2.5 Gbps. With the OWC built-in adapter, the driver extension com.apple.DriverKit.AppleUserECM.dext loads. Curiously, with the Plugable adapter plugged into the same OWC dock, /System/Library/Extensions/AppleUSBNCM.kext loads and appears to be used instead.
So neither requires third party drivers to work. Moreover, they both work reliably for me. But the Plugable adapter exhibits much less CPU overhead: roughly half of one M1 performance core when speed testing. The AppleUserECM driver extension shows CPU usage of over 150% in the same situations. This high CPU load appears to cause significant bottlenecking of transfer rates on my gigabit connection (600-700 Mbps on the OWC dock vs 940 Mbps with the Plugable adapter) and -- I suspect -- interferes with other USB traffic causing dropouts with my external USB DAC.
I'm not sure how Plugable managed to do it, but I'd love to find a way to get the OWC dock to use the old kernel extension that the Plugable adapter is using. I suspect it might perform the same (drastically better).