Jump to content

Realtek 8168/8111 solution


DaemonES
 Share

871 posts in this topic

Recommended Posts

Hi guys.

More than one weak ago I\'ve started writing driver for Realtek controllers. At this time I have some results, I've not tested all features, cause I have no such opportunity, but MacOS successfully communicate with WinXP system through my driver.

It works on RTL8169, RTL8168, RTL8110, RTL8111, RTL8100, RTL8101 chips and their modifications.

 

I have some driver programming skills under WinXP, but MacOS and IOKit are new things for me, so be careful when using my driver. You can freely load it and unload, but only once at one system boot (cause more loads may cause system crash, I\'m planning to fix it). Use sh scenarios for loading/unloading driver.

 

Now I\'m planing to add such features:

- Manual MTU control (now it fixed at 1500).

- Jumbo frame support.

- Wake on magic packet.

 

Thanks to the:

- author of Linux R1000 driver.

- NeoPheus for installer. Great job, thanks.

 

Share your knowledge so much as you can.

 

Compiled with XCode 2.4 on OSX 10.4.6 JaS Install DVD.

Visit to project page for the latest driver and installer.

https://sourceforge.net/projects/realtekr1000/

Edited by DaemonES
  • Like 1
Link to comment
Share on other sites

Ok, version 1.01.

- Minor fixes to avoid memory leaks.

- Fixed bug with multiple loading/unloading.

- Fixed bug with ouput packet dropping.

- Implemented some features, like link status and speed reporting.

 

Dynamic MTU implemented, but not active.

 

First you must load debug version (in terminal type sh loaddebug). If everything is OK type sh unloaddebug. After that install release version (sh installrelease). Release version faster, that debug, cause debug version logging every packet and every OS system call.

 

See attachment in head post.

Link to comment
Share on other sites

Thanks ^^

 

it works fine^^

 

when i use sh senario, there is some error message (about permission/ownership)

so i try to do step by step.

 

before "sudo kextload -t RealtekR1000.kext"...

type "cd /System/Library/Extensions"

and...everythings gonna be happy^^

 

 

ASROCK ConroeXfire eSata2 ... onboard Realtek Lan card ^^

Link to comment
Share on other sites

Ok, I'm really new with this so don't eat me :(

 

I loaded the driver and nothing bad happens, the network utility tells me the interface en0 is rtl8168/8111b so this is good

 

nothing runs though; link status says "inactive" and there's no led activity

 

I also noticed that in system profiler the realtekr1000 extension has an unsatisfied dependency (com.apple.iokit.IONetworkingFamily no valid version can be found)... I have version 1.5.0 running...

 

am i missing something?

Link to comment
Share on other sites

hoooah Fine :(

TopazBar ok waiting for results.

 

sunriis try to unload kext, and than load it with ket -t:

sudo -s

cd /System/Library/Extensions

kextunload RealtekR1000.kext

kextload -t RealtekR1000.kext

 

Terminal will show you additional info.

Link to comment
Share on other sites

hoooah Fine :censored2:

TopazBar ok waiting for results.

 

sunriis try to unload kext, and than load it with ket -t:

sudo -s

cd /System/Library/Extensions

kextunload RealtekR1000.kext

kextload -t RealtekR1000.kext

 

Terminal will show you additional info.

 

I only can say: IT WORKS FOR ME!!!!

This is great, thank you very very very much!

Its a RTL8111B!

Wow this is amazing! :pirate2:

Link to comment
Share on other sites

I only can say: IT WORKS FOR ME!!!!

This is great, thank you very very very much!

Its a RTL8111B!

Wow this is amazing! :sorcerer:

still no go for me...

 

I tried to reload with -t option, it says loaded succesfully, but it still says link status inactive

Link to comment
Share on other sites

DaemonES,

 

I finally got the cable I needed, and I'm posting this message using your driver thru RTL8111B chip.

 

Man, this is way COOL. Good job !!!!

 

EDIT: I just open up a terminal and typed "./installrelease". Then after about 20 seconds later, OSX configured network, and I'm online.

Link to comment
Share on other sites

OK. Let's try something else...

1. Open terminal window:

tail -f /var/log/system.log

And then ok.

2. Open new terminal shell and load debug version of kext.

3. After few minutes copy all info from first terminal and send it to me DaemonES at gmail dot com.

Link to comment
Share on other sites

I only can say: IT WORKS FOR ME!!!!

This is great, thank you very very very much!

Its a RTL8111B!

Wow this is amazing! :angel:

 

I am also trying to get this to work on my askrock conroe945g-dvi but it doesn't seem to be working. Can you tell me exactly what you did to install the driver? I downloaded the 1.02 drivers, unzipped it, opened a terminal and ran the shell script "installrelease". It said the driver loaded successfully, but it's not showing up in the networking control panel nor system profiler.

 

Thansk!

Link to comment
Share on other sites

OK. Let's try something else...

1. Open terminal window:

tail -f /var/log/system.log

And then ok.

2. Open new terminal shell and load debug version of kext.

3. After few minutes copy all info from first terminal and send it to me DaemonES at gmail dot com.

 

mail sent, thanks for the help :angel:

Link to comment
Share on other sites

sunriis You NIC card also reports that link is down (OSX may reports wrong link state), but driver works well (i.e. starts and enables NIC). It maybe due several reasons:

1. Damaged Ethernet cable.

2. Your router (or another machine) can’t autonegotiate.

 

Try to set NIC speed and duplex manually (Network options -> Built in Ethernet – last tab).

Link to comment
Share on other sites

 Share

×
×
  • Create New...