Jump to content

AppleIntelE1000e.kext for 10.8/10.7/10.6/10.5


hnak
 Share

751 posts in this topic

Recommended Posts

If you plan to get a new NIC, Marvell 88E8053 works best within my experience, as it is natively supported by Apple. Realtek 8168/8169 should work with Apple or R1000.kext. Of course, you may try Intel 8257x though they are more expensive.

What about a PCI card with native support? I don't need gig-e for OSX, just the ability to access 'the internet' (30mbit connection) and my network for moving a few files around. Basically I most need to be able to use Logic and my 'real' mac is dead leaving me with just a 2006 iMac that has the 'bad logic board' issue obscuring half the screen with lines and a shutoff issue under high load. That machine was never intended to be primary use anyway, but it's not very capable of runnnig modern DAW software without extended workarounds in my workflow.

 

Also I'm guessing you did more than just package up the E1000e src into the 82566MM project structure, I haven't yet diff'd your E1000e src against the one from sourceforge to compare, but I did some reading about the differences between linux, bsd, darwin & OSX's kernel drivers and it doesn't seem like I can simply run a make (or build under XCode) and have it all 'just work'. Doing a kernel driver might be more than I take take on for a 'first OSX coding project'...?

 

Btw apologies for cluttering up this thread, but having played with OSX for 2 years on this box without 82575 support, I am ready to move forward in some way. Especially as I'm sans a 'real' Mac for 3-4 months now...

Link to comment
Share on other sites

What about a PCI card with native support?

I think that Realtek 8169 is easier to get than other 100-base NICs ( and sold at very affordable price ) even if you do not need Gigabit.

 

Also I'm guessing you did more than just package up the E1000e src into the 82566MM project structure, I haven't yet diff'd your E1000e src against the one from sourceforge to compare, but I did some reading about the differences between linux, bsd, darwin & OSX's kernel drivers and it doesn't seem like I can simply run a make (or build under XCode) and have it all 'just work'. Doing a kernel driver might be more than I take take on for a 'first OSX coding project'...?

The original idea was to keep up with Linux driver update easily as possible.

So I use most of Linux C files with no modification other than netdev.c, which implements Linux driver interface and must be ported to IONetworking framework ( AppleIntelE1000e.cpp ), though I tried to copy the original code as much as possible. I took the basic structure of the framework interface from 82566MM project.

 

I wrote kcompat.h so that Linux C files can be compiled ( almost ) without modidication. I hope you can utilize kcompat.h to compile igb-xxx files and use AppleIntelE1000e.cpp as the starting point.

Link to comment
Share on other sites

I think that Realtek 8169 is easier to get than other 100-base NICs ( and sold at very affordable price ) even if you do not need Gigabit.

Thanks. I'll see if I can find a reputable build using that chip, all I care about really is stability so I can get some work done for now while I fiddle with the onboard NICs in my spare time.

 

The original idea was to keep up with Linux driver update easily as possible.

So I use most of Linux C files with no modification other than netdev.c, which implements Linux driver interface and must be ported to IONetworking framework ( AppleIntelE1000e.cpp ), though I tried to copy the original code as much as possible. I took the basic structure of the framework interface from 82566MM project.

 

I wrote kcompat.h so that Linux C files can be compiled ( almost ) without modidication. I hope you can utilize kcompat.h to compile igb-xxx files and use AppleIntelE1000e.cpp as the staring point.

Thank you for the pointers, I did some parallel working directories of 82566MM, your src dir, the sources for E1000e, igb & what was use for 82566MM so I can compare (and created a kernel iokit framework to work on igb.) I appreciate all the input, very informative!

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...

It took me a while to set up sleep-capable PC.

 

I uploaded 1.0.2b, which does not cause KP at least in my environment.

It is a crude implementation, which does disable/stop interface on suspend ( as if it was kextunload-ed ) and start/enable on resume.

Link to comment
Share on other sites

It took me a while to set up sleep-capable PC.

 

I uploaded 1.0.2b, which does not cause KP at least in my environment.

It is a crude implementation, which does disable/stop interface on suspend ( as if it was kextunload-ed ) and start/enable on resume.

 

Thank you! but 1.0.2b 's link is normal ? i can not access to it :)

Link to comment
Share on other sites

Thank you , fix source!

 

i test it , improve kernel panic. but after s3 sleep wake up, ethernet is linkdown (not active).

 

dmesg is no output linkup messsage. no ip address.

 

AppleIntelE1000e.kext (1.0.2b)

bash-3.2# dmesg

AppleIntelE1000e(Info): Link is Up 100 Mbps Full Duplex, Flow Control: None
IOHIDSystem::relativePointerEventGated: VBL too high (20004354), capping to 20000000
	 0 [Time 1265572832] [Message System Sleep
(S3 Sleep)
Wake reason = 
System Wake
Previous Sleep Cause: 0
USB (EHCI):Port 1 on bus 0x1a has remote wakeup from some device
USBF:	864.420	AppleUSBEHCI[0xb9f7000]::ResumeUSBBus - controller took (9) turns to get going

 

example nvenet's message on my Mac mini(early 2009). there is Mac mini in same network environment.

 

nvenet (1.0.69)

bash-3.2# dmesg
NVEthernet: Ethernet address 00:26:b0:e9:d6:76
NVEthernet::setLinkStatus - Valid but not Active
Ethernet [nvenet]: Link up on en0, 100-Megabit, Full-duplex, No flow-control, Debug [796d,0000,0de1,0005,41e1,0000]
NVEthernet::setLinkStatus - link Valid and Active
(S3 Sleep)
Wake reason = OHC1
System Wake
Previous Sleep Cause: 5
USB (OHCI):Port 7 on bus 0x4 has remote wakeup from some device
NVEthernet::setLinkStatus - Valid but not Active
Ethernet [nvenet]: Link up on en0, 100-Megabit, Full-duplex, No flow-control, Debug [796d,0000,0de1,0005,41e1,0000]
NVEthernet::setLinkStatus - link Valid and Active

 

i think Link Speed's 0 Mbit/s is releated. i check router setting , but doses'nt improve.

 

before s3 sleep

img20100208051104.png

 

after s3 sleep

img20100208051115.png

Link to comment
Share on other sites

  • 3 weeks later...

test 1.0.2b and sometimes there is a falling with kernel panic and the mouse cursor stops, in 10.5.8 and 10.6 too. How it occurs on my system: I have created more than three network locations and when there is a switching between them there is a panic. At first I change locations in network preferences then put Apply button = KP. Any idea? please help!

Link to comment
Share on other sites

Thanks.. at least my Intel d945gtp board see the on board card now.. What a struggle to get it to work under SL..

 

Yeah.. it works after removing the other AppleIntel82xxx.kext's out of IONetwokingFamily..

Link to comment
Share on other sites

test 1.0.2b and sometimes there is a falling with kernel panic and the mouse cursor stops, in 10.5.8 and 10.6 too. How it occurs on my system: I have created more than three network locations and when there is a switching between them there is a panic. At first I change locations in network preferences then put Apply button = KP. Any idea? please help!

I just updated the first post to 1.0.3, sleep-enabled.

Switching network configuration may cause disable/enable sequence similar to sleep.

Link to comment
Share on other sites

I just updated the first post to 1.0.3, sleep-enabled.

Switching network configuration may cause disable/enable sequence similar to sleep.

Great news! Now I to continue driver testing. I will write in case of problems later. Big to you thanks for the help!

Link to comment
Share on other sites

  • 3 weeks later...
AppleIntelE1000e.kext 32/64 for 10.6.

 

This driver is based on Intel Wired Ethernet for Linux ( e1000.sourceforge.net ) and 82566mm OSX driver ( 82566mm-osx-driver.googlecode.com ). As it uses ( almost as is ) Linux driver's source code, the license is GPL.

 

The base Linux driver is e100e-1.1.2 and can work with Intel PCI Express ethernet chips like 82578 used with P55 chipset.

( I tested 82573 and 82578 only as I do not have other NICs. )

 

List of the IDs supported by original driver:

 

0x105E,0x105F,0x1060,0x10D9,0x10DA,0x10A4,0x10D5,0x10A5,0x10BC,0x107D,

0x107E,0x107F,0x10B9,0x108B,0x108C,0x109A,0x10D3,0x10F6,0x150C,0x1096,

0x1098,0x10BA,0x10BB,0x1501,0x1049,0x104A,0x104B,0x104C,0x10C4,0x10C5,

0x104D,0x10BF,0x10F5,0x10CB,0x10BD,0x10E5,0x294C,0x10C0,0x10C3,0x10C2,

0x10CC,0x10CD,0x10CE,0x10DE,0x10DF,0x10EA,0x10EB,0x10EF,0x10F0

 

 

0x104B and 0x10F6 are supported by Apple's Intel82574L.kext ( so removed from this driver's Info.plist ).

 

2010/2/28: Sleep support.

1.0.3

 

Thank you for this driver, my Dell StudioXPS i7 with built-in NIC 82567LV-2 work perfect with Sleep in Snow 10.6.2

 

AppleIntelE1000e.kext 32/64 for 10.6.

 

This driver is based on Intel Wired Ethernet for Linux ( e1000.sourceforge.net ) and 82566mm OSX driver ( 82566mm-osx-driver.googlecode.com ). As it uses ( almost as is ) Linux driver's source code, the license is GPL.

 

The base Linux driver is e100e-1.1.2 and can work with Intel PCI Express ethernet chips like 82578 used with P55 chipset.

( I tested 82573 and 82578 only as I do not have other NICs. )

 

List of the IDs supported by original driver:

 

0x105E,0x105F,0x1060,0x10D9,0x10DA,0x10A4,0x10D5,0x10A5,0x10BC,0x107D,

0x107E,0x107F,0x10B9,0x108B,0x108C,0x109A,0x10D3,0x10F6,0x150C,0x1096,

0x1098,0x10BA,0x10BB,0x1501,0x1049,0x104A,0x104B,0x104C,0x10C4,0x10C5,

0x104D,0x10BF,0x10F5,0x10CB,0x10BD,0x10E5,0x294C,0x10C0,0x10C3,0x10C2,

0x10CC,0x10CD,0x10CE,0x10DE,0x10DF,0x10EA,0x10EB,0x10EF,0x10F0

 

 

0x104B and 0x10F6 are supported by Apple's Intel82574L.kext ( so removed from this driver's Info.plist ).

 

2010/2/28: Sleep support.

1.0.3

Link to comment
Share on other sites

AppleIntelE1000e.kext 32/64 for 10.6.

 

This driver is based on Intel Wired Ethernet for Linux ( e1000.sourceforge.net ) and 82566mm OSX driver ( 82566mm-osx-driver.googlecode.com ). As it uses ( almost as is ) Linux driver's source code, the license is GPL.

 

The base Linux driver is e100e-1.1.2 and can work with Intel PCI Express ethernet chips like 82578 used with P55 chipset.

( I tested 82573 and 82578 only as I do not have other NICs. )

 

List of the IDs supported by original driver:

 

0x105E,0x105F,0x1060,0x10D9,0x10DA,0x10A4,0x10D5,0x10A5,0x10BC,0x107D,

0x107E,0x107F,0x10B9,0x108B,0x108C,0x109A,0x10D3,0x10F6,0x150C,0x1096,

0x1098,0x10BA,0x10BB,0x1501,0x1049,0x104A,0x104B,0x104C,0x10C4,0x10C5,

0x104D,0x10BF,0x10F5,0x10CB,0x10BD,0x10E5,0x294C,0x10C0,0x10C3,0x10C2,

0x10CC,0x10CD,0x10CE,0x10DE,0x10DF,0x10EA,0x10EB,0x10EF,0x10F0

 

 

0x104B and 0x10F6 are supported by Apple's Intel82574L.kext ( so removed from this driver's Info.plist ).

 

2010/2/28: Sleep support.

1.0.3

 

Well, i read the whole thread, and realized there are many looking this kext for 10.5.X.

As i was in the need too, and its nowhere to be found, i went on, and compiled it.

 

So far, it is running flawlessly on an Alienware m15x under 10.5.8, on an Intel 82577LC (10eb:8086) network card.

 

Big thanks to the coder.. And below the link for anyone who might need it. :)

 

E100e kext for 10.5.X

Link to comment
Share on other sites

Well, i read the whole thread, and realized there are many looking this kext for 10.5.X.

As i was in the need too, and its nowhere to be found, i went on, and compiled it.

 

So far, it is running flawlessly on an Alienware m15x under 10.5.8, on an Intel 82577LC (10eb:8086) network card.

 

Big thanks to the coder.. And below the link for anyone who might need it. :(

 

E100e kext for 10.5.X

Hey man, I too have an Alienware M15X but I use SL 10.6.3. So far everything works great but I cannot get the DVD Drive working although it's recognized in the Serial-ATA part of System Profiler. Does your DVD drive work under Leopard?

Link to comment
Share on other sites

  • 2 weeks later...

I use 82578DC Ethernat controller on my Intel Mainboard DH57JG / H57 chip set with GeForce 8400 GS / core i3 530.

 

The AppleIntelE1000e.kext 1.03 Ethernet driver works very good, but after Sleep Modus the Ethernet controllers is red and does not work any more.

 

Is there a better .kext for chip set H57? Or is the problem due to Core i3 (unsupported).

 

Has anyone an idea how to fix it?

Link to comment
Share on other sites

  • 4 weeks later...
  • 3 weeks later...

I have a Zotac H55 ITX motherboard, which has a 82578DM (0x10EF8086) ethernet controller in it. This works with the AppleIntelE1000e.kext, however when it's under stress it seems to die. It stays listed as green in the network preferences, but wont send any packets. I have to uplug and replug the cable to get it to respond again.

 

I initially noticed this problem while streaming media via DLNA to my PS3 while I had torrents running. Both work fine alone, but combined they cause this problem. I did some testing with scp between two computers, and again, 1 scp transfer works fine (running on 100mbit, so 10-11MB/s transfer), but if i start up a 2nd, then I get the same problem. Sometimes even while browsing while the 1 scp transfer is going this will happen. I've done this test with a direct cable (so ruling out a problem with the router).

 

My system was installed using the [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] method from tonymacx86, and the latest available [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url]. I've tried both 32bit and 64bit kernel modes (set using [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url]) with no changes, and I've tried forcing the card to run at various speeds all to no avail. I've not played with MTU settings, as I don't know enough about it to properly play.

 

Anyone else have this problem, or have any ideas on what i can do to fix it? Is there anyway I can enable some debug mode to get a better idea of what is happening?

 

Thanks

.tristan

 

some output from kextstat

50	1 0xffffff7f80843000 0x1a000	0x1a000	com.apple.iokit.IONetworkingFamily (1.9) <7 6 5 4 3 1>
52	0 0xffffff7f8087b000 0x10000	0x10000	com.insanelymac.driver.AppleIntelE1000e (1.0.1) <50 9 5 4 3 1>

Link to comment
Share on other sites

  • 3 weeks later...
Well, i read the whole thread, and realized there are many looking this kext for 10.5.X.

As i was in the need too, and its nowhere to be found, i went on, and compiled it.

 

So far, it is running flawlessly on an Alienware m15x under 10.5.8, on an Intel 82577LC (10eb:8086) network card.

 

Big thanks to the coder.. And below the link for anyone who might need it. :)

 

E100e kext for 10.5.X

 

It doesn't work for me :( I have an AW m15x too with Intel 82577LC. I'm on iatkos v7 10.5.7 - HELP?

Link to comment
Share on other sites

  • 1 month later...

Hello Dreamwatcher

I have the same audio system )nVidia 10de:0be3), you will work with SL? Can you help?

Excuse my English

Thanks

 

01:00.1 Audio device [0403]: nVidia Corporation Unknown device [10de:0be3] (rev a1)
Link to comment
Share on other sites

  • 4 weeks later...
I have just updated to 1.2.8 - I changed the version number so that it matches the original e1000e for Linux.

 

I noticed that the latest version is 1.2.10. -- updated.

 

Hi, I'm currently using the kext from ktbos and it's working ok except I can't set jumbo frames.

I've tried your kext, It does let me set the frames but actually It's not working with my card (82574L PCI-E, device id 0x10d3). It is detected and I can set all the network parameters but I cannot ping anything.

Any advice? Thanks!

Link to comment
Share on other sites

 Share

×
×
  • Create New...