Jump to content

PCGenRTL8139Ethernet v1.1.0 (8.4.1) & v1.2.0 (8.8.1) released


orByte
 Share

129 posts in this topic

Recommended Posts

Tonight, I will add my network card Ven/Dev ID in that file to see if it works.

 

Ven: 1106 Dev: 3106

 

So all I have to do is to add this 0x11063106 in that IOPCIMatch string, right? <_<

 

Yes, that's it. But after you edit the file as 'root', you will need to fix permissions and invalidate the extension cache. Try this

sudo su
nano -w <path-to-kext>/Contents/Info.plist
(edit file, save and exit from editor)
chown -R root:wheel <path-to-kext>
chmod -R 755 <path-to-kext>
touch /System/Library/Extensions

then you can do kextload -v <path-to-kext> (and hopefully that'll be fine)
exit (from sudo su)

 

Best

Link to comment
Share on other sites

ethernet: family specific matching fails

 

com_orByte_driver_RTL8139: vendorID = 0x1106 deviceID = 0x3106 revisionID = 0x0086

 

com_orByte_driver_RTL8139: found PIO accessor at bc01

 

com_orByte_driver_RTL8139: found MMIO accessor at FDBFF000

 

com_orByte_driver_RTL8139: using PIO access mode...

 

com_orByte_driver_RTL8139: io access at csrBase=bc00.

 

com_orByte_driver_RTL8139: Software reset failed...

 

com_orByte_driver_RTL8139: Attempting hard reset...

 

com_orByte_driver_RTL8139: Software reset failed...

 

com_orByte_driver_RTL8139: Attempting hard reset...

 

com_orByte_driver_RTL8139: Continuing Operations...

 

com_orByte_driver_RTL8139: Software reset failed...

 

com_orByte_driver_RTL8139: Attempting hard reset...

 

com_orByte_driver_RTL8139: Continuing Operations...

 

com_orByte_driver_RTL8139: Software reset failed...

 

com_orByte_driver_RTL8139: Attempting hard reset...

 

com_orByte_driver_RTL8139: Continuing Operations...

 

(105: coreservicesd)tfp: failed on 0:

 

Finally system detected this card, but after dmesg I got errors showing above, please advise. (I put vendor iD first then dev ID, it was wrong. should be reversed. Just figured that out)

Edited by envying
Link to comment
Share on other sites

Finally system detected this card, but after dmesg I got errors showing above, please advise. (I put vendor iD first then dev ID, it was wrong. should be reversed. Just figured that out)

 

It looks like a register level incompatibility. The hard reset seems to be working, but if there are other register differences, then this driver will not work with your card. Hint: if the error messages stop after a while, try setting up the card from System Prefencences> Networking. If the error messages never stop, then chances are that OSX keeps resetting the card because it cannot talk to it. In this case, you re best of spending a few pounds on a Realtek 8139 plugin-card.

 

Best

Link to comment
Share on other sites

It looks like a register level incompatibility. The hard reset seems to be working, but if there are other register differences, then this driver will not work with your card. Hint: if the error messages stop after a while, try setting up the card from System Prefencences> Networking. If the error messages never stop, then chances are that OSX keeps resetting the card because it cannot talk to it. In this case, you re best of spending a few pounds on a Realtek 8139 plugin-card.

 

Best

 

 

Really appreciate your response, at least, I know now I have to give it up. Cause messages just keep coming... Or I have to stay in darkness when I am in OSX86 and do all the networking stuff in my Winxp. :thumbsup_anim:

Link to comment
Share on other sites

Thank god! I finally got my internet working now!

 

Though my wife took away my 19"LCD. I decided to switch my Dlink card with her Genuine Realtek 8139 Card! :hysterical::hysterical:;):thumbsup_anim:

 

Meanwhile, just found out that DLink DFE-538TX is using a Via Rhine Chipset but not like some other guys said it is a Realtek 8139 chipset. It is clearly stated in my wife's Fedora Linux Box. :whistle:

Link to comment
Share on other sites

  • 3 weeks later...

hello i'm pablo from argentina(sorry, my english sucks!)

 

i have a MSI 865 PE Neo 2v (S478) mobo with a Celeron D 2,56ghz and 512mb ddr400 and a Nvidia fx 5200 128mb agp and i have JaS 10.4.8 fully working with qe & ci...it has an onboard realtek 8139 ethernet and i have another realtek rtl8139 pci card for internet sharing with my other pc...

 

the onboard ethernet is working native but i cant get the pci rtl 8139 working...any ideas???

Link to comment
Share on other sites

hello i'm pablo from argentina(sorry, my english sucks!)

 

i have a MSI 865 PE Neo 2v (S478) mobo with a Celeron D 2,56ghz and 512mb ddr400 and a Nvidia fx 5200 128mb agp and i have JaS 10.4.8 fully working with qe & ci...it has an onboard realtek 8139 ethernet and i have another realtek rtl8139 pci card for internet sharing with my other pc...

 

the onboard ethernet is working native but i cant get the pci rtl 8139 working...any ideas???

 

When asking for help, please post system log and screenshot of System Preferences>Network.

cat /var/log/system.log | grep RTL

 

Best

Link to comment
Share on other sites

(use PCGenRTL8139Ethernet-1.2.0)

I have the problem with my RTL8139/810x Family (VEN_10EC DEV_8139) ( MB ATI chip set) . I sure that I had deleted AppleRTL8139Ethernet.kext. But after reboot, sytem stil be hang. Then I try to change key

<key>ForceMMIOAccess</key>

<false/>

to

<key>ForceMMIOAccess</key>

<true/>

 

to ForceMMIOAccess but system still hang after reboot (no difference before change that key to TRUE).

 

My compouter: Toshiba Satellite M55-S139

ATI X200M - Work fine

ATI AC97 sound - Work fine

Atheros AG5005G Wireless - Work fine

Realtek RTL8139/810x Family - System hang ;)

 

Please help me !

 

(Sorry for my English)

Link to comment
Share on other sites

My god, I have solved the problem :withstupid: . The problem is : have 2 AppleRTL8139Ethernet.kext in two difference location, the 1st locate in /System/Library/Extensions/ and the 2nd one locate in /System/Library/Extensions/IONetworkingFamily.kext/Contents/Plugins/

I have just delete the 2nd one but there's still the 1st one. I dont know why there're 2 of the same kext in 2 difference location.

 

I found this problem when I check system infomation (Apple>About this MAC>More Info>Software>Extensions). It's so lucky to me :thumbsup_anim:

 

And now, I want to say thanks to all of you, especially orByte, the writer of this driver (Perfect driver :star_smile::star_smile::star_smile::star_smile::star_smile: ).

 

-----------------------------------------------------------------------------

My compouter: Toshiba Satellite M55-S139

ATI X200M - Work fine

ATI AC97 sound - Work fine

Atheros AG5005G Wireless - Work fine

Realtek RTL8139/810x Family - Work fine

:thumbsup_anim:

Link to comment
Share on other sites

  • 2 weeks later...

Hi,

 

Have been following this thread closely for some time and tried doing everything that is mentioned here. The suggested device ID's exist in the Info.plist file and I've followed the install instructions. All system log outputs say that AppleRTL8139Ethernet.kext is loaded. The first time, I loaded it manually and it even showed "RTL8139 PCI Adapter......Sending 1 personality to kernel....etc" (Something like that - can't remember the exact words as I am posting this from my Linux box)

 

But the Network Status page is still blank. I also grep-ed the system logs for orByte but there is no occurence although the kext is loaded successfully.

 

I am running 10.4.8 (8.8.1) on an AMD Athlon 64 3000+. The motherboard is an MSI RS480M2-IL and has on board ethernet using the 8139. (Confirmed this on Linux as I can see the 8139too driver.)

 

ACFan/kfriis, any progress? Your problem seemed similar to mine.

 

orByte, can you help?

 

Thanks in advance to anyone who might write in.

Link to comment
Share on other sites

Hey orByte,

 

It works. I was doing something inanely silly - I don't even want to talk about it. But it works and that is important! Thanks a lot and sorry for the trouble.

 

Just for the record, am using an AMD Athlon 64 3000+ on an MSI RS480M2-IL mobo. Am posting this from Safari!

Link to comment
Share on other sites

Hey orByte,

 

It works. I was doing something inanely silly - I don't even want to talk about it. But it works and that is important! Thanks a lot and sorry for the trouble.

 

Just for the record, am using an AMD Athlon 64 3000+ on an MSI RS480M2-IL mobo. Am posting this from Safari!

 

Great news!! (& Sorry for late late reply). Was it that you needed to configure the network before the connection showed up? This seems to be a security feature of Darwin.

 

 

Best

 

 

Typing sudo dmseg in the Terminal gives me following msg,

 

Skipping duplicate extension "com.orByte.driver.PCGenRTL8139Ethernet" with older/same version (1.2.0 -> 1.2.0).

What i'm doing wrong??

 

kext could be loading twice.

 

QUICK WAY (it may not work) - assuming corrupt cache...

----------------------

touch /System/Library/Extensions
rm /System/Library/Extensions/Extensions.kextcache
rm /System/Library/Extensions/Extensions.mkext
shutdown -r now

 

SLOW WAY

-----------------------

Make sure you only have one PCGenRTL8139Ethernet.kext in the /System/Library/Extensions folder and all its sub-folders. Then do the above. How do you check? use 'grep' or 'find'.

 

Best

Link to comment
Share on other sites

i have only one PCGenRTL8139Ethernet.kext in the /System/Library/Extensions folder and all its sub-folders.

 

But the other one i have in /System/Library/Extensions/IONetworkingFamily.kext/Contents/Plugins/ and i hope its not wrong, is it??

 

kextload command gives me hopeful results as below

 

RTL8139 PCI Adapter

kextload: sending 1 personality to the kernel

kextload: matching started for /System/Library/Extensions/IONetworkingFamily.kext/Contents/Plugins/PCGenRTL8139Ethernet.kext

 

but after restarting nothing works, i'm pissed off.

 

how can i add hardware id to kext? and to which kext exactly should i add it?

 

Edit:-

 

"sudo dmesg" command some times shows nothing related to 8139 and some times gives Skipping duplicate extension as above.

 

48hg32v.jpg

 

I get above msg from kextload but after restart it is not catching the card...

Link to comment
Share on other sites

orByte releases RTL8139 modified source code & semi-retirement announced

 

Hi everybody!

 

Continuing on the semi-retirement track... As announced here are the full sources for the RTL8139 driver.

 

Thanks a lot for all the comments and help I have received in the past few months since I started working on the Darwin RTL8139 drivers. Sadly, I am having almost no time left to work on this project. Initally I had only released the source code as diffs. However, I am now releasing the full project, in the hope that someone else will pick up the project and continue working on it. I am now left with only the Uli526x network driver on my list of things to to.

 

These projects are best suited to people who are already familiar with programming & Darwin compilation.

 

Of interest is the coding for a dynamic MMIO/PIO selection class, which binds at run-time. This is quite different from the Linux code, which selects MMIO/PIO operation mode at compile time. It is also different from the standard Apple Darwin code, which is limited to PIO only.

 

One important technical note: the ioAccessor and its derivative classes defined in RTL8139IO.h should really be renamed to RTL8139ioAccessor, and so on. I have done this in the Uli driver. Why? The IO namespace is relatively flat, so all these names MUST be unique. Otherwise another kext using the same namespace will fail to load. Of course with the RTL8139 specifier the name becomes unique.

 

Another option might be to create nested classes, and nest the ioAccessor class under the kext class name, which is always unique. But this creates all sorts of problems. In fact, Apple does not do this. Nor would I recommend anyone else to try it. It is best to stick with a flat space, unique names, and use forward declarations if needed.

 

Instructions

---------------------------

 

1.PCGenRTL8139Ethernet-4-src.zip MD5 = c279a157b53dfb1533f31095137631b6

 

Requires: XCODE 2.4.1, Kernel 8.8.1, Semthex OK, 10.4.8. Consult the original diff & bundle for modified files & FAQ.

 

2. PCGenRTL8139Ethernet-3-src.zip MD5 = b4337fe9fdcd3e4594abcfe980696e72

 

Requires: XCODE 2.3, Kernel 8.4.1, 10.4.7. Consult the original diff & bundle for modified files & FAQ.

 

 

Again, thank you very much

Best

 

i have only one PCGenRTL8139Ethernet.kext in the /System/Library/Extensions folder and all its sub-folders.

 

But the other one i have in /System/Library/Extensions/IONetworkingFamily.kext/Contents/Plugins/ and i hope its not wrong, is it??

 

kextload command gives me hopeful results as below

 

RTL8139 PCI Adapter

kextload: sending 1 personality to the kernel

kextload: matching started for /System/Library/Extensions/IONetworkingFamily.kext/Contents/Plugins/PCGenRTL8139Ethernet.kext

 

but after restarting nothing works, i'm pissed off.

 

how can i add hardware id to kext? and to which kext exactly should i add it?

 

Edit:-

 

"sudo dmesg" command some times shows nothing related to 8139 and some times gives Skipping duplicate extension as above.

 

48hg32v.jpg

 

I get above msg from kextload but after restart it is not catching the card...

 

Does kext load after restart? If yes, go to System Preferences> Network>Configure, and follow on-screen instructons.

 

Best

Link to comment
Share on other sites

No, it doesn't. after restart System Preferences> Network> shows "Built in Ethernet" Failed...

 

what do you get for

dmesg | grep 8139

 

what happens if you configure the built in ethernet. I have a suspicion that the problem is elsewhere. If there were a kext issue, it would not even load the first time.

 

Possibly corrupt extension caches

 

You could also try

rm /System/Library/Extensions/Extensions.mkext
rm /System/Library/Extensions/Extensions.kextcache
chown -R root:wheel /System/Library/Extensions
chmod -R 755 /System/Library/Extensions
touch  /System/Library/Extensions
shutdown -r now

 

Best

Link to comment
Share on other sites

 Share

×
×
  • Create New...