Jump to content

1.2 Tulip Ethernet Driver for 10.4.3 and up


  • Please log in to reply
71 replies to this topic

#1
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
Hello all!

I've been trying to build a tulip driver for 8f1111a as I have a Linksys 100tx v4 card.

Using the XCode tools under 10.4.3 8f1111a I was able to compile the following kext compiled from tulip 1.2

However, it will not load due to a failed dependency:
com.apple.iokit.IONetworkingFamily

Does anyone know how to fulfil this dependency?

My suspicion is its on the opendarwin disk. If necessary I will download and install this to find the file. Just hoping someone has it already to save me some work.

Added: See next post for how to create a soft link for making it load.

Edit 11/07 This kext still works in Leopard 10.5.1
creating soft link to make it load has been unnecessary since 10.4.4

Several people have commented that DHCP does not work. Set a fixed IP address manually.

However DHCP does work for me in 10.5.1 and 10.4.10

The Tulip.1.2 file is exactly the same driver, but with info.plist edited to include support for other cards said to work with Linux tulip driver.
I do not own any other tulip cards than Linksys 100tx v4.1, so I have not tested other cards

The source code is freely available and should be linked.
http://sourceforge.n...s/darwin-tulip/

I recompiled with xcode tools 3.0 and it compiles cleanly. However, what would be really helpful is to upgrade it to a 10.5 kext. Xcode 3.0 permits this, but then build gives many errors and it appears beyond me to update this kext.

Here is a link to the Linux User Manual for Tulip Driver.
Among other things it contains a list of compatible cards.
http://people.nl.lin.../tulip-user.pdf

Easiest way to find a card likely to work with this driver is to google "tulip ethernet pci card"

As of Leopard 10.5.1 after install of Security Update 2007-009, DHCP stopped working.
A fix (involving manual setup) is here:
http://forum.insanel...&...st&p=548525

Still works up to 10.5.5
Broken 10.5.6 and up

As I have a kext now for my onboard ethernet, I am not maintaining this old driver.

Attached Files



#2
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
Hi Everyone! I got this to work. This is how to do it:

1) Download and unzip above tulip.kext

2) Do the following:
sudo bash
enter password
cp -R tulip.kext /System/Library/Extensions
cd /System/Library/Extensions
ln -s IONetworkingFamily.kext com.apple.iokit.IONetworkingFamily.kext

3) Reboot

4) Run System Preferences, Network to set up your network.

I have joy now! Merry Christmas! BTW OS X 10.4.3 1111a with Maxxuss v4 kernel runs much faster native on SSE2 than 10.4.1

#3
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Thank you very very much for your information!!

My only problem is that I am very new to the scene, so I don't exactly understand how to follow your instructions. Could you point me towards where I could find an explanation of those commands, or give me a basic tutorial on where they should be run?

I am not totally inept, but rather very new to the mac concept.

Thanks very very much!!

#4
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Ok, I thought I figured out how to do this. I put the tulip.kext file under /System/Library/Extensions. I ran Terminal, I typed sudo bash, logged in, typed each line and pressed enter afterwards (exactly as you have typed. At the end, I receive a message that says: "bash: In: command not found". Did I do something wrong?

Could it have to do with the fact that I am currently running 10.4.1 and this will not work with anything but 10.4.3? If that is the case, did I do everything right otherwise? What message would I receive at the end if it happened successfully?

Thanks again!

Hi Everyone! I got this to work. This is how to do it:

1) Download and unzip above tulip.kext

2) Do the following:
sudo bash
enter password
cp -R tulip.kext /System/Library/Extensions
cd /System/Library/Extensions
ln -s IONetworkingFamily.kext com.apple.iokit.IONetworkingFamily.kext

3) Reboot

4) Run System Preferences, Network to set up your network.

I have joy now! Merry Christmas! BTW OS X 10.4.3 1111a with Maxxuss v4 kernel runs much faster native on SSE2 than 10.4.1



#5
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
Welcome to osx86project then!

It may surprise you, but I am a Mac n00b too. Never ran a Mac before I got OS X to run on my PC. However, I have run FreeBSD for years. Since Apple appropriated FreeBSD 4.4 for the guts of OS X, basic UNIX commands (like ln for link) still work.

I learned FreeBSD commands from a book "FreeBSD The Complete Reference" available at Amazon.

To get to the BSD command line you run Terminal under OS X. Double click on your root disk, double click applications, Double click utilities folder, double click Terminal.

I recommend then right clicking on Terminal in dock and picking Keep in dock so the command line is accessible.

Once in terminal you can type the commands in my post to get tulip running.

If you want to access documentation for BSD commands, type man <command>. For example, man ln would access the man page on link.

The only thing really different in OS X is compiling. Under FreeBSD or Linux you would, for instance, use the make command to compile tulip. However, that appears not to work for things written in Apples GUI XCode Tools. The BSD or Linux community wouldn't stand for that inconsistency, but Apple does what it wants.

#6
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
Louse76, my kext is compiled for 10.4.3 8f1111. It will not work for 10.4.1 unless you recompile it.

This wiki worked for me when I was running 10.4.1 to get tulip going:
http://wiki.osx86pro...etworking_Tulip

By the way ln is small case LN. I think you tried IN which would not work.

Command line BSD gives feedback only when you screw up. If you did everything right, it would say nothing, just give another command prompt, but your ethernet would work when you reboot.

#7
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Oh thank you thank you thank you again! You are correct, I did use 'IN' instead of 'LN'. I am glad to know that is the case, so when I try and do it on 10.4.3 later today or tomorrow, I will not have any troubles.

Also, I believe I might try this on 10.4.1 if my install of 10.4.3 is not ready. I see that the instructions in the link that you provided are similar but slightly different. I should be able to go about it in exactly the same way, command for command, is that correct?

#8
skater

skater

    InsanelyMac Protégé

  • Members
  • Pip
  • 39 posts
Wmarsh , I followed your guide and still unable to access network ( built in ethernet on my laptop is Realtek 1389 family ) .
Woul you have any idea about anything I could have missed ?

#9
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts

Wmarsh , I followed your guide and still unable to access network ( built in ethernet on my laptop is Realtek 1389 family ) .
Woul you have any idea about anything I could have missed ?


Well, I really didn't write a guide. I just told people how I got the kext to load.

Once the kext loads, you still have to configure your network. Click on System Preferences, then Network. I don't remember what I did after that but it was pretty obvious.

If the kext doesn't load for you, there are several possibilities:
1) If you are using a build other than 10.4.3 8f1111 or 8f1111a(g) you have to compile the source code for your version. The source code is posted on sourceforge. Here is the link:
http://sourceforge.n...?group_id=51598

2) I don't know if Tulip supports Realtek 1389 or not. I suspect this is your problem, as I see no mention of tulip being needed for realtek cards on the wiki's HCL. I have only used tulip for my computer with its Linksys 100tx card. You could check the HCL on the wiki. You could also see if Linux uses the tulip driver for your ethernet on your computer. I don't have the expertise to rewrite the driver to add support for other cards.

3) It could be that your ethernet is supported but the device ids aren't in the info.plist so the kext doesn't load. In this case you could edit the info.plist to force it to load. I did this with the Macvidia driver under 10.4.1 and I remember it was easy, but I don't remember how I did it.



Oh thank you thank you thank you again! You are correct, I did use 'IN' instead of 'LN'. I am glad to know that is the case, so when I try and do it on 10.4.3 later today or tomorrow, I will not have any troubles.

Also, I believe I might try this on 10.4.1 if my install of 10.4.3 is not ready. I see that the instructions in the link that you provided are similar but slightly different. I should be able to go about it in exactly the same way, command for command, is that correct?


My recollection from 10.4.1 is that tulip worked without creating a softlink. However, I used the 1.0.0 tulip driver then, as a compiled version was downloadable from sourceforge at the time. (It isn't there anymore.) I tried to pull my old kext off my VMWare backup for you -- for me VMWare is so much slower than native that I finally gave up, sorry. I think 10.4.3 8f1111g works much better native than 10.4.1, so I wouldn't bother with 10.4.1 now.

#10
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Ok, I now have 10.4.3, and I still don't seem to be able to get this to work. Let me tell you exactly what I am doing.

First, I drag the tulip.kext file from my flash drive into the /System/Library/Extensions folder. It asks me to authenticate so I do so (I don't actually have to enter a password because I don't have a password, but it lets me authenticate).

Then I go to the Terminal. I type 'sudo bash' and press enter. It prompts me for a password. Again, since I don't have one, I press enter and it appears to accept it. the line changes to '~ root#'. I then type 'cp -R tulip.kext /System/Libary/Extensions' and I get the message 'cp: tulip.kext: No such file or directory'.

Am I doing something wrong so far?

Also, from the card itself (right in front of me), it is a Linksys LNE 100TX Version 4.1. Also below those numbers on the chip it says 0121WDAHK22432.1, incase that means anything. Other numbers on the card include: A/N: PCB-E574-AB5 and P/N: E574 Rev.AB and START: 2001/2/10. There is also another somewhat large chip that reads: TAIMAG HE-012D 0118 (on three seperate lines).

Please help, I really want to get this mac online!!

BTW, I am reinstalling 10.4.3 to make sure nothing that I did to try and get the Marvell onboard Gigabit LAN is causing an issue with this.

#11
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Ok, I am trying this again with a fresh install and typing this as I go.

I redownloaded the file attached to this thread and put it on my Flash Drive.

I unzipped it on the Mac on the Desktop.

I put it in /System/Library/Extensions and had to authenticate.

I opened Terminal and followed your instructions above as such:

sudo bash
entered password
cp -R tulip.kext /System/Library/Extensions

and I get the message:

cp: tulip.kext: No such file or directory

I also tried with cd thinking maybe it was a misprint, didn't help. What am I missing? Please please help!!

BTW, I would like to take a screenshot, but that seems like a whole other issue for me to learn. I found the link below:

http://www.macwrite....screenshots.php

Isn't anything easy on Macintosh? I'll leave it at that.

#12
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts

Ok, I am trying this again with a fresh install and typing this as I go.

I redownloaded the file attached to this thread and put it on my Flash Drive.

I unzipped it on the Mac on the Desktop.

I put it in /System/Library/Extensions and had to authenticate.

I opened Terminal and followed your instructions above as such:

sudo bash
entered password
cp -R tulip.kext /System/Library/Extensions

and I get the message:

cp: tulip.kext: No such file or directory

I also tried with cd thinking maybe it was a misprint, didn't help. What am I missing? Please please help!!

BTW, I would like to take a screenshot, but that seems like a whole other issue for me to learn. I found the link below:

http://www.macwrite....screenshots.php

Isn't anything easy on Macintosh? I'll leave it at that.


Sounds like you are using the GUI tool to put the kext into system/library/extension
I used unix command lines from terminal, which does exactly the same thing.
If you already moved it you can't cp it because its no longer there.

I think you need to make your soft link, then reboot and set up your network.

To be more explicit.

1) Open terminal

2)
sudo bash
enter password
SKIP THIS YOU ALREADY DID IT: cp -R tulip.kext /System/Library/Extensions
cd /System/Library/Extensions
ln -s IONetworkingFamily.kext com.apple.iokit.IONetworkingFamily.kext

3) Reboot

4) Run System Preferences, Network to set up your network.

#13
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Thanks again very much for your reply. I apologize that you have to be so explicit in directing me towards a resolution.

I read this last night, but unfortunately didn't have a chance to give it a try. I will be quite excited if I can see this working!!

Also, I see in posts when loading drivers that one should 'repair permissions' after doing certain things. I found out how to do this, but I am not exactly sure what this does. Is this anything that would be necessary for this purpose?

And I just found out this morning that I will be needing to learn some UNIX commands for my work (supporting a new school that uses some UNIX), so hopefully that should help me out in the future and lighten up my dependency on smart folk like yourself...

Thanks again!

#14
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Ok, I was just able to accomplish what you outlined in your instructions.

Unfortunately, I am still having a problem.

Since I had already put the .kext file into the /System/Library/Extensions folder, I deleted it and restarted the computer to start fresh.

I once again unzipped the file
Put the new file into /System/Library/Extensions
Authenticated to be able to put the file into that folder
Opened Terminal
sudo bash
authenticated
cd /System/Library/Extensions
ln -s IONetworkingFamily.kext com.apple.iokit.IONetworkingFamily.kext

After entering the last command, basically nothing happens, as I believe should be the case, it just goes to a new line.

I then restarted, and I again get the System extension cannot be used mention pointing towards the tulip.kext file. I tried it multiple times with the same problem.

Any other ideas? Maybe it is not recognizing the card properly? Maybe it has to do with it having an issue with my non-usable Marvell onboard LAN? Should I try another PCI slot?

Also, there should not be any relevance to me dragging and dropping the file into /System/Library/Extensions vs using the command line, right?

Thanks again for any help...

#15
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
Well, Louse76, you've reached the limits of my knowledge.

You can repair permissions many ways. I am used to it so might have forgetten that step was necessary. Its a reasonable step to try. If you don't have the run bit set on your kext it won't load.
See this thread:
http://forum.osx86pr...st=

You can try disabling your onboard lan in the bios.

You can try another PCI slot.

Tulip cards are cheap. You could probably buy a used one on ebay for $5. This is what I did when I got frustrated trying to get my sound card to work -- I replaced my Turtle Beach card with a $5 CMI8738 card and it works better, not just in OS X, but its better supported in OS/2 and FreeBSD.

If you really want to learn Unix commands, install Linux as its more user friendly than hunting for the BSD documentation in OS X. I like SUSE. You can download it free from opensuse.org.

#16
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
I just wanted to say thanks again for giving me so much help! I found a Realtek 8139 card for $6 shipped and just received it yesterday, so I'm going to give up on my Linksys. I hear it should work out of the box, but we shall see (crossing fingers).

:D

#17
Louse76

Louse76

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
Hey there, I just wanted to say that I plugged in the card and I am posting this within the Mac OS right now!!

#18
capran

capran

    InsanelyMac Protégé

  • Members
  • PipPip
  • 94 posts
Nice! Got mine working now! First NIC that works! W00t!

10.4.4, Shuttle SN95G5, Netgear LNE100TX.

#19
durex

durex

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts
2 things:

Can this be used with 10.4.4?

Also this doesnt make sense to me:
ln -s IONetworkingFamily.kext com.apple.iokit.IONetworkingFamily.kext

Now Im no Mac user (yet) but my *NIX knowledge knows that ln -s is creating a soft link. Well if thats the case here then this should be making a link "IONetworkingFamily.kext" to "com.apple.iokit.IONetworkingFamily.kext"... the problem is there is no "com.apple.iokit.IONetworkingFamily.kext"... at least that I could find anyway... Is this really what the syntax is suppose to be or am I missing something here?


TIA!

#20
schrepfler

schrepfler

    InsanelyMac Protégé

  • Members
  • PipPip
  • 57 posts
Hi,
I've tried to compile the 1.2 release (this is 1.0.2 right?) with make install yet although the files are copied it doesn't work. This release however works. Can you guys compile 1.2 and release it here as well?
Is there something that needs to be done with 1.2 besides compiling?





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   Web hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy