Workaround for Mac OS X Conflicts between DisplayLink and USB ethernet
Posted on 16. Jun, 2010 by Bernie Thompson in Using
[ Update April 27th, 2011. DisplayLink has fixed this issue in the production version 1.6 release of their Mac drivers. Please download the latest Mac drivers from DisplayLink ]
Plugable uses DisplayLink chips for USB graphics, and ASIX chips for USB Ethernet functionality. And we have both chips in devices like our Plugable USB 2.0 Universal Docking Station.
Unfortunately, on Mac OS X, there is a conflict between recent DisplayLink drivers 1.5+ and the Apple drivers (AppleUSBEthernet) for ASIX chips. The DisplayLink drivers appear to open other USB devices as part of enumeration. As a side effect, this causes USB ethernet devices to show as “disconnected” upon return from system boot or hibernate.
That’s in addition to other graphics and ethernet driver compatibility breaks that Apple’s recent OS X 10.6 updates have introduced, including breaking AppleUSBEthernet for non-Apple USB ethernet hardware.
Until these issues settle down and are fixed in the drivers from DisplayLink, ASIX, and Apple, here is a workaround for the current issues with the ethernet function of the Plugable Universal Docking Station:
Step 1 is to download and install ASIX drivers that are compatible with recent Mac OS X 10.6: http://plugable.com/wp-content/uploads/2010/04/AppleDefaultDriver_v2.1.5.zip
Step 2 is to copy the following script to a file (call it “install”), and run “sudo ./install”
#!/bin/bash sudo echo "#!/bin/bash" > /usr/bin/plugable-eth-reset sudo echo kextunload -b com.apple.driver.AppleUSBEthernet >> /usr/bin/plugable-eth-reset sudo echo kextload -b com.apple.driver.AppleUSBEthernet >> /usr/bin/plugable-eth-reset sudo chown root /usr/bin/plugable-eth-reset sudo chmod o+x /usr/bin/plugable-eth-reset sudo defaults write com.apple.loginwindow LoginHook /usr/bin/plugable-eth-reset
Now, logging out and logging back in will automatically reload the ethernet driver. Unfortunately, this does not cover the return from low-power cases. Unless we find an improvement to the workaround, you’ll have to log out/log in or just run “sudo /usr/bin/eth-reset” so trigger the script.
As there may be variations in systems out there, please comment if you get different results, and we’ll post an update here at Plugable if (as we hope) this is fixed more directly in the DisplayLink or ASIX drivers in the future.
And, generally if you’re a Mac OS X user, please be cautious about OS updates which might break 3rd party hardware drivers. If you have non-Apple USB hardware, consider deferring updates until there’s time for other people to report on forums about compatibility.



Hi,
Here is an alternative approach – this also solves the problems returning from hibernation.
Use “SleepWatcher” (http://www.bernhard-baehr.de/) to run scripts before sleep and after wakeup.
SleepWatcher download (http://www.bernhard-baehr.de/sleepwatcher_2.1.tgz)
I’m using a Toshiba DynaDock DVI (includes ethernet) and have the problems that you’ve described above.
Works with newest Mac OS X 10.6.4 – just tested it.
/Uffe
Works great for me
Hi again,
FYI:
Alternative (non-Apple) ASIX ethernet drivers are available from here:
http://www.sustworks.com/site/news_usb_ethernet.html
I use this driver in combination with SleepWatcher – as mentioned above.
They work with newest Mac OSX 10.6.4 – just tested
/Uffe
Uffe – Thank you for posting about using sleepwatcher to work around the problem more completely!