PDA

View Full Version : BCM5754/M,BCM5755/M,BCM5787/M,BCM5906/M NIC driver for 10.6 (32/64) [update 22/5]


adlan
02-12-2011, 05:45 AM
10.6.X Broadcom NIC driver for BCM5754/M,BCM5755/M,BCM5787/M,BCM5906/M (32/64)

i've decided to scratch an itch and develop a driver for my nic(5787m). Although there has been a working driver for the card, it is a hexedited version which i thought is not a permanent solution plus no source code is accessible. well, if it did, this project wouldn't exist :).

This driver is implemented based on the BCM5722 Programmer's Guide provided in Broadcom's open source developer resource. Additional information is gleaned from Linux(tg3) and FreeBSD(if_bge) driver. Since the manual covers more than one model, I decided to include support for some of the models documented.

It should support the following models:

BCM5722
BCM5754
BCM5754M
BCM5755
BCM5755M
BCM5787
BCM5787M #
BCM5906 #
BCM5906M #


# - tested

Features not implemented as of this release:

Wake-on-LAN


Installation

Install to /System/Library/Extensions.

Either manually copy it to S/L/E and repair permissions or simply use KextWizard (http://www.kexts.com/view/1068-latest_kext_wizard_from_janek202.html) (kexts.com mirror)

Issues

Please report any issues you found at https://github.com/adlan/BCM5722D/issues

Contributing

Source code is available at https://github.com/adlan/BCM5722D

Credits

broadcom for releasing the programmer's guide
authors of Linux(tg3) and FreeBSD(if_bge) driver
early beta testers from insanelymac forum (acero,Hacktrix2006,quadomatic,queshaolangman,Zpro od)


Disclaimer
This driver is neither supported nor endorsed by Broadcom. Zombies may invade your house and I take no responsibility for whatever happens. Use at your own risk

Update
Fix device detection problem affected to those who have cards with alphabets in its device id(5722,5754,5755,5787). Thanks to FredWst (http://osx86.co/member.php?u=90020393) for spotting the culprit

enjoy!

chinasky
02-15-2011, 11:03 PM
Laptop lenovo n500, with a bcm5906M. Working fine, no kp at the moment.

Thank you!

adlan
02-16-2011, 02:13 PM
Laptop lenovo n500, with a bcm5906M. Working fine, no kp at the moment.

Thank you!

glad to hear that! :)

pat98usb
02-16-2011, 11:03 PM
Can you make it work for also for broadcom bmc57780 ,, pci14e4,1692
Thanks

quinielascom
02-17-2011, 12:45 AM
Thanks seem work fine, tested with BCM5787M.

Is possible set your driver to display nothing in system log ?

In my system log I have:


BCM5722D (Build date/time: Feb 11 2011 16:21:32)
BCM5722D (setupDriver:920): MSI index on 1
BCM5722D (resetAdapter:144): 4B657654 to B49A89AB in 2687 iterations
my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
my_name_adlan_BCM5722D: Loaded successfully
BCM5722D (setPowerState:84): Changing power state from 1 to 0
my_name_adlan_BCM5722D: Ethernet address 00:11:22:33:44:55
BCM5722D (resetAdapter:144): 4B657654 to B49A89AB in 2638 iterations
BCM5722D (setMedium:471): Change medium: kIOMediumEthernetAuto
BCM5722D (setMedium:496): Change medium: kLinkDuplexNegotiate
BCM5722D (configureLinkAdvertisement:364): advertiseFe: 5E1
BCM5722D (configureLinkAdvertisement:365): advertiseGe: 300
BCM5722D (startAutoNegotiation:522): Adv reg: 5E1

adlan
02-17-2011, 05:41 AM
Can you make it work for also for broadcom bmc57780 ,, pci14e4,1692
Thanks

sorry, i'm afraid that is not possible for me now. I'll release the source code, so anybody interested can try to work on it if possible.

adlan
02-17-2011, 05:51 AM
Thanks seem work fine, tested with BCM5787M.

Is possible set your driver to display nothing in system log ?

In my system log I have:


BCM5722D (Build date/time: Feb 11 2011 16:21:32)
BCM5722D (setupDriver:920): MSI index on 1
BCM5722D (resetAdapter:144): 4B657654 to B49A89AB in 2687 iterations
my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
my_name_adlan_BCM5722D: Loaded successfully
BCM5722D (setPowerState:84): Changing power state from 1 to 0
my_name_adlan_BCM5722D: Ethernet address 00:11:22:33:44:55
BCM5722D (resetAdapter:144): 4B657654 to B49A89AB in 2638 iterations
BCM5722D (setMedium:471): Change medium: kIOMediumEthernetAuto
BCM5722D (setMedium:496): Change medium: kLinkDuplexNegotiate
BCM5722D (configureLinkAdvertisement:364): advertiseFe: 5E1
BCM5722D (configureLinkAdvertisement:365): advertiseGe: 300
BCM5722D (startAutoNegotiation:522): Adv reg: 5E1


no :D, i'll upload a non-chatty version later.
thank you for testing!

limiter121
02-27-2011, 06:58 PM
I have a Lenovo B550 laptop with a BCM5906M and it works great.

Thanks a lot !

adlan
02-28-2011, 04:26 PM
I have a Lenovo B550 laptop with a BCM5906M and it works great.

Thanks a lot !

great, thanks! :)

adminio
03-01-2011, 03:56 PM
Thanks! I have a Acer5315 w/BCM5906M works!

Dabluest
03-04-2011, 10:37 PM
You got my 5906M card working (even in Lion)! I'm almost speechless. I never thought that would happen! You rock! Thank you. :)

webwolf
03-05-2011, 07:57 PM
Hi,
I have a Dell XPS m1330, Hardware Info reports a 5906M network card, but I tried to install your driver without success: I can't see any new interface in System Preferences / Network.
In /var/log the only mention I found is in system.log:
com.apple.kextd[10]: BCM5722D.kext has no Info.plist file.
com.apple.kextcache[591]: BCM5722D.kext has no Info.plist file.

Any idea?
Thank you
Marco

adlan
03-06-2011, 04:24 PM
Hi,
I have a Dell XPS m1330, Hardware Info reports a 5906M network card, but I tried to install your driver without success: I can't see any new interface in System Preferences / Network.
In /var/log the only mention I found is in system.log:
com.apple.kextd[10]: BCM5722D.kext has no Info.plist file.
com.apple.kextcache[591]: BCM5722D.kext has no Info.plist file.

Any idea?
Thank you
Marco

from the log, I see the the kext failed to load because there is no Info.plist file, can you verify that the installed kext does indeed not contain Info.plist? if it is, try removing and reinstalling the kext? verify the downloaded kext too.

Terminal,
ls /System/Library/Extensions/BCM5722D.kext/Contents

adlan
03-06-2011, 04:35 PM
Thanks! I have a Acer5315 w/BCM5906M works!

glad to hear that :)

You got my 5906M card working (even in Lion)! I'm almost speechless. I never thought that would happen! You rock! Thank you. :)

oooh, on Lion too? great! hey, where did you get that? :-$


thanks!

Dabluest
03-07-2011, 05:37 AM
glad to hear that :)



oooh, on Lion too? great! hey, where did you get that? :-$


thanks!

A certain green devil ;)

abiogenesis
03-13-2011, 01:41 PM
OMG i've found this thread and I'm ruined.
Because I was writing my own driver for bcm5906m too :)
I started reading 5722-PG101-R.pdf and if_bge.c in January and just today got working rx and tx without checksum offloading support, multicast and power state switching.

And now I don't know what to do, either to delete my http://code.google.com/p/osx-bcm5906m/ project which is still under construction, or finish the driver and upload it there, but now it doesn't make any sense
:confused:

adlan
03-14-2011, 04:23 PM
OMG i've found this thread and I'm ruined.
Because I was writing my own driver for bcm5906m too :)
I started reading 5722-PG101-R.pdf and if_bge.c in January and just today got working rx and tx without checksum offloading support, multicast and power state switching.

And now I don't know what to do, either to delete my http://code.google.com/p/osx-bcm5906m/ project which is still under construction, or finish the driver and upload it there, but now it doesn't make any sense
:confused:

ugh, sorry to hear that,
initially, i developed this driver for my card(5787m), since bcm5906 is also documented in the manual, i decided to support the model.

since you have started, don't stop! just finish it, take this as an exercise for you, it gives you experience and it can be beneficial to you and the community in the future. surely it seems like a waste of time, but it's your choice. if it were for me, i would go for that route ;)

adlan
03-14-2011, 04:36 PM
A certain green devil ;)

got that :D

rals2007
03-15-2011, 12:33 AM
adlan

Superb!

Better to have a log with only,

my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
my_name_adlan_BCM5722D: Ethernet address 00:11:22:33:44:55

This way, much cleaner.

Thanks

adlan
03-16-2011, 03:28 AM
adlan

Superb!

Better to have a log with only,

my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
my_name_adlan_BCM5722D: Ethernet address 00:11:22:33:44:55

This way, much cleaner.

Thanks

i've uploaded the non-chatty version.

thanks! :)

rals2007
03-16-2011, 01:18 PM
adlan

Can you also please update the source.

Thanks :)

abiogenesis
03-17-2011, 01:14 AM
Hi, it's me again :)
Thanks to your code I've fixed a couple of my bugs and I think I've found one in your setMulticastList function.


for (i = 0; i < count; i++) {
crc = computeCRC32((const UInt8 *) addrs, 6);
...
}

Here, according to 5722-PG101-R.pdf, crc should be calculated for every address in the array, so it would be "addrs + i" or "&addrs[i]".

adlan
03-17-2011, 09:13 AM
Hi, it's me again :)
Thanks to your code I've fixed a couple of my bugs and I think I've found one in your setMulticastList function.

Here, according to 5722-PG101-R.pdf, crc should be calculated for every address in the array, so it would be "addrs + i" or "&addrs[i]".

my bad, how could I missed that
thanks for pointing that out :)

Medienmensch
03-18-2011, 12:35 PM
I have a Lenovo G560 with this Wlan Card.

That would be so great!

And if not, what Wlan Card would you recomend me to buy for use in osx?

Thanks!

volgin7
03-20-2011, 03:03 AM
Excellent! Works for (LAN) BCM 5906M on the Lenovo S12 :)
Thank's!

adlan
03-20-2011, 04:59 PM
is it possible to make a Driver for BCM4357 rev1 ?

I have a Lenovo G560 with this Wlan Card.

That would be so great!

And if not, what Wlan Card would you recomend me to buy for use in osx?

Thanks!

right now, all i can say as is it's not possible. no public api documentation is available and also i don't know if any datasheet/programmer manual/open source driver is available for that model.

I recommend buying external wireless usb adapter and I personally use dlink dwa-110. you can find more supported models in the Hardware Compatibility List at OSx86 project wiki (http://wiki.osx86project.org/wiki/index.php/Main_Page)

adlan
03-20-2011, 05:00 PM
Excellent! Works for (LAN) BCM 5906M on the Lenovo S12 :)
Thank's!


glad to hear that, thanks! :)

parlae
03-20-2011, 08:54 PM
Thanks, thanks, thanks!!! It is really unbelievable that someone have done this at last! :)
keep up the good work!
Work's great on my lenovo s10e 4086RLG :cool:

Can you make it work for also for broadcom bmc57780 ,, pci14e4,1692
Thanks

I think that's the airport driver as it says below that device ID airport.kext or something. Ethernet isn't shown at all until u install this kext, and after that u will have 2 ethernet cards: airport pci14e4 and ethernet.

quinielascom
03-20-2011, 09:02 PM
i've uploaded the non-chatty version.

Thanks !

Another thing, Please, do you can compile your driver for Leopard 10.5.x too?

tmacyunn
03-25-2011, 02:21 AM
Hi adlan, I have a problem in the 10.6.7, when I put the laptop to sleep for a hour or a little longer the driver can't work, network disconnect. After using Kextload command to unload and reload it work come back.
Is it a problem of system ? maybe we should compile it in the 10.6.7, I have try repair permissions and rebuild kernel caches

Thanks.

Edit:
I try to compile the sources code under 32bit 10.6.7 with xcode 3.2.5 and get some warnings like :
BCM5722D-18e3e93/BCM5722D.cpp:536: warning: implicit conversion shortens 64-bit value into a 32-bit value

adlan
03-25-2011, 03:50 AM
Hi adlan, I have a problem in the 10.6.7, when I put the laptop to sleep for a hour or a little longer the driver can't work, network disconnect. After using Kextload command to unload and reload it work come back.
Is it a problem of system ? maybe we should compile it in the 10.6.7, I have try repair permissions and rebuild kernel caches

Thanks.

Edit:
I try to compile the sources code under 32bit 10.6.7 with xcode 3.2.5 and get some warnings like :
BCM5722D-18e3e93/BCM5722D.cpp:536: warning: implicit conversion shortens 64-bit value into a 32-bit value


I'll investigate this further. Can you provide the log message after waking up from sleep?

For the warning message, you can just ignore it as there are some conversion which requires a 64bit value to be broken into 2 32bit value to fit it into the hardware registers.

tmacyunn
03-25-2011, 09:58 AM
Here is:

Friday, March 25, 2011 4:49:52 PM Asia/Shanghai
Mar 25 16:49:57 yuns-MacBook-Pro kernel[0]: System Sleep
Mar 25 16:50:17 yuns-MacBook-Pro kernel[0]: Wake reason =
Mar 25 16:50:17 yuns-MacBook-Pro kernel[0]: System Wake
Mar 25 16:50:17 yuns-MacBook-Pro kernel[0]: ApplePS2ALPSGlidePoint: ABMod Waking up Touchpad setting setTapEnable to 1
Mar 25 16:50:17 yuns-MacBook-Pro kernel[0]: USB (EHCI):Port 3 on bus 0xfa connected or disTconnectedhe USB d:ev porticSC(e 0x301US8B Op03ti)
Mar 25 16:50:17 yuns-MacBook-Pro kernel[0]: cal Mouse (Port 1 of Hub at 0x5d000000) may have caused a wake by issuing a remote wakeup (2)
Mar 25 16:50:18 yuns-MacBook-Pro kernel[0]: USBMSC Identifier (non-unique): 20060413092100000 0xbda 0x158 0x5195

And i notice when wakeup from sleep, the system preference shows network is connected, but actually it doesn't.

This is the kext logs you release before:

Mar 19 22:51:18 yuns-MacBook-Pro kernel[0]: System Sleep
Mar 19 22:51:27 yuns-MacBook-Pro kernel[0]: Wake reason =
Mar 19 22:51:27 yuns-MacBook-Pro kernel[0]: System Wake
Mar 19 22:51:27 yuns-MacBook-Pro kernel[0]: ApplePS2ALPSGlidePoint: ABMod Waking up Touchpad setting setTapEnable to 1
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: USB (EHCI):Port 3 on bus 0xfa connected or disconnected: portSC(0x301803)
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: The USB device USB Optical Mouse (Port 1 of Hub at 0x5d000000) may have caused a wake by issuing a remote wakeup (2)
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: BCM5722D (setPowerState:84): Changing power state from 0 to 1
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: BCM5722D (resetAdapter:144): 4B657654 to B49A89AB in 0 iterations
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: BCM5722D (setMedium:471): Change medium: kIOMediumEthernetAuto
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: BCM5722D (setMedium:496): Change medium: kLinkDuplexNegotiate
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: BCM5722D (configureLinkAdvertisement:364): advertiseFe: 1E1
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: BCM5722D (configureLinkAdvertisement:365): advertiseGe: 0
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: BCM5722D (startAutoNegotiation:522): Adv reg: 1E1
Mar 19 22:51:28 yuns-MacBook-Pro kernel[0]: USBMSC Identifier (non-unique): 20060413092100000 0xbda 0x158 0x5195
Mar 19 22:51:29 yuns-MacBook-Pro kernel[0]: BCM5722D (setupPHY:100): Auxillary status: F53F
Mar 19 22:51:29 yuns-MacBook-Pro kernel[0]: BCM5722D (setupFlowControl:621): flowControl: 0
Mar 19 22:51:29 yuns-MacBook-Pro kernel[0]: my_name_adlan_BCM5722D: Link up: 100 MBps, full duplex. Flow control: disabled

Astarael
04-06-2011, 04:01 PM
Hi adlan,
I have just tested your kext - it makes my BCM5787M work. Moreover in "System Profiler" I can see correct information about the card (while using 10.6.3 modified BCM5701 plugin i got pci14e4,1693 instead of real name despite of DSDT patches I added).

But there's one problem - after loading the kext my system slowed down a lot. I barely managed to type sudo kextunload BCM5722D.kext in terminal. I didn't got such effects after loading hexedited plugin.
About 5 minutes later I used kextload command and got slow down again - but the negative effect was much lighter, I'd say about one tenth of first one.
Maybe it might have something to do with code optimizations? I really dunno.

I keep my fingers crossed for this project - who knows, how long 10.6.3 kext is going to work? It may get broken in Lion or even next update.

Regards,
Astarael

PS Sorry for my English, still learning ;)

adlan
04-07-2011, 04:26 AM
Hi adlan,
I have just tested your kext - it makes my BCM5787M work. Moreover in "System Profiler" I can see correct information about the card (while using 10.6.3 modified BCM5701 plugin i got pci14e4,1693 instead of real name despite of DSDT patches I added).

But there's one problem - after loading the kext my system slowed down a lot. I barely managed to type sudo kextunload BCM5722D.kext in terminal. I didn't got such effects after loading hexedited plugin.
About 5 minutes later I used kextload command and got slow down again - but the negative effect was much lighter, I'd say about one tenth of first one.
Maybe it might have something to do with code optimizations? I really dunno.

I keep my fingers crossed for this project - who knows, how long 10.6.3 kext is going to work? It may get broken in Lion or even next update.

Regards,
Astarael

PS Sorry for my English, still learning ;)

hi,
can you try this kext,

http://cl.ly/3e3l2N2t1n242a3O0T0I

and send me the log? take the line starting with BCM5722D

PS no problem, me too :)

Domenic211
04-15-2011, 05:07 PM
Hi guys I've got an Acer Aspire 2920 with broadcom BCM5787M.
I tried to add the file in attachment of this post "BCM5722D.kext" in system\library\extesion but after reboot my lan still don't work... :(.


PC: Acer Aspire 2920 ( Intel Core 2 Duo chipset: intel 965)
Mac Os X: 10.6.6i By hazard

p.s.: I have also tried to install max os x 10.6.2 but the result is the same with this kext my lan don't working.... in mac manager as Ethernet Cards don't result anything.

p.p.s. after added the kext file in library directory displays a message :
System extesion cannot be used
The system extension " /System/library ........." was installed improperly and cannot be used.
Please try reinstalling it....


what's my problem?
thank u guys
greetings from Italy

adlan
04-16-2011, 07:29 AM
Hi guys I've got an Acer Aspire 2920 with broadcom BCM5787M.
I tried to add the file in attachment of this post "BCM5722D.kext" in system\library\extesion but after reboot my lan still don't work... :(.


PC: Acer Aspire 2920 ( Intel Core 2 Duo chipset: intel 965)
Mac Os X: 10.6.6i By hazard

p.s.: I have also tried to install max os x 10.6.2 but the result is the same with this kext my lan don't working.... in mac manager as Ethernet Cards don't result anything.

p.p.s. after added the kext file in library directory displays a message :
System extesion cannot be used
The system extension " /System/library ........." was installed improperly and cannot be used.
Please try reinstalling it....


what's my problem?
thank u guys
greetings from Italy

hi,

usually that error message pops up when kext doesn't have the proper permission. To fix this, you need to change the kext permission

either run disk utility then repair permission

or in terminal,


cd /System/Library/Extensions
sudo chmod -R 755 BCM5722D.kext
sudo chown -R 0:0 BCM5722D.kext


a simpler solution is to install using Kext Helper (http://www.kexts.com/downloads.php?do=file&id=250) (as of this reply, the main site is currently down. the link points to kexts.com download)

Astarael
04-18-2011, 05:18 PM
hi,
can you try this kext,

http://cl.ly/3e3l2N2t1n242a3O0T0I

and send me the log? take the line starting with BCM5722D

PS no problem, me too :)

Hi, sorry it took me so long, I've been very busy recently.
Anyway, I placed the kext you gave me in /S/L/E, then chmod and chown it and loaded it with kextload. This is what I got in system Console: 11-04-18 18:13:12 sudo[255] astarael : TTY=ttys000 ; PWD=/Users/astarael ; USER=root ; COMMAND=/sbin/kextload /System/Library/Extensions/BCM5722D.kext/
11-04-18 18:13:13 kernel BCM5722D (Build date/time: Mar 25 2011 23:28:49)
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Loaded successfully
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Ethernet address 00:1e:37:24:13:81
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel BCM5722D (setMedium:367): Change medium: kIOMediumEthernetAuto
11-04-18 18:13:14 kernel BCM5722D (setMedium:392): Change medium: kLinkDuplexNegotiate
11-04-18 18:13:14 kernel BCM5722D (configureLinkAdvertisement:567): advertiseFe: 5E1
11-04-18 18:13:14 kernel BCM5722D (configureLinkAdvertisement:568): advertiseGe: 300
11-04-18 18:13:14 kernel BCM5722D (startAutoNegotiation:590): Adv reg: 5E1 I'm not sure if it is what you wanted :-|

PS I wouldn't advise using KextHelper in Snow Leopard - it doesn't work well. You might want to test KextWizard instead (I won't post a link 'cos I'm not sure if it is permitted :P)

scritchy
04-18-2011, 09:56 PM
I have device 14e4:167b Broadcomm 5755 onboard nic on an hp xw6600 machine. The kext appears to fail to do anything at all. There is no mention of it in any of the logs in var/log

i've tried deleting and reinstalling the kext with both kext helper b7 and kext wizard, and rebuilding kext cache. I've tried using the zip file attachee to this thread, and rebuilding the kext from the source. No difference. I verified the device id w/ dpci manager.

Not sure what else to try?

it "works" with the hacked 5701 kext floating around, in that it gets an ip and can connect, but the hacked 5701 has horrible upload problems that make it incredibly slow or times out, which is why I arrived here.

Any ideas?

Astarael
04-19-2011, 03:12 PM
After you start your system, try to type in the terminal kextstat | grep BCM and see if there are any results. If not - kext in fact is not being loaded at all...
Did you trierd to force it with kextload command?

adlan
04-19-2011, 03:52 PM
sorry for the delay, sometimes i didn't notice new post on this thread.

Hi, sorry it took me so long, I've been very busy recently.
Anyway, I placed the kext you gave me in /S/L/E, then chmod and chown it and loaded it with kextload. This is what I got in system Console:

11-04-18 18:13:12 sudo[255] astarael : TTY=ttys000 ; PWD=/Users/astarael ; USER=root ; COMMAND=/sbin/kextload /System/Library/Extensions/BCM5722D.kext/
11-04-18 18:13:13 kernel BCM5722D (Build date/time: Mar 25 2011 23:28:49)
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Loaded successfully
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Ethernet address 00:1e:37:24:13:81
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel BCM5722D (setMedium:367): Change medium: kIOMediumEthernetAuto
11-04-18 18:13:14 kernel BCM5722D (setMedium:392): Change medium: kLinkDuplexNegotiate
11-04-18 18:13:14 kernel BCM5722D (configureLinkAdvertisement:567): advertiseFe: 5E1
11-04-18 18:13:14 kernel BCM5722D (configureLinkAdvertisement:568): advertiseGe: 300
11-04-18 18:13:14 kernel BCM5722D (startAutoNegotiation:590): Adv reg: 5E1 I'm not sure if it is what you wanted :-|

PS I wouldn't advise using KextHelper in Snow Leopard - it doesn't work well. You might want to test KextWizard instead (I won't post a link 'cos I'm not sure if it is permitted :P)

did the problem still persist?
is that the only message logged for the kext? and after that your system starts slowing down?

PS, yeah, kexthelper freeze on exit that it requires force quitting, though i didn't bother looking for another since the app still does what it should do :D. Anyway thank you for the advice, I'll try the app you mentioned and update the first post.

adlan
04-19-2011, 04:12 PM
I have device 14e4:167b Broadcomm 5755 onboard nic on an hp xw6600 machine. The kext appears to fail to do anything at all. There is no mention of it in any of the logs in var/log

i've tried deleting and reinstalling the kext with both kext helper b7 and kext wizard, and rebuilding kext cache. I've tried using the zip file attachee to this thread, and rebuilding the kext from the source. No difference. I verified the device id w/ dpci manager.

Not sure what else to try?

it "works" with the hacked 5701 kext floating around, in that it gets an ip and can connect, but the hacked 5701 has horrible upload problems that make it incredibly slow or times out, which is why I arrived here.

Any ideas?

try as what Astarael said, try loading the kext manually, and look for any fail message logged. if the kext is loading, it should at least log a build date/time message.

actually there has been a report on the same behavior as this. i'm still investigating what causes this problem and most likely come to a dead end.

btw, do you have a vanilla or distro install?

Astarael
04-19-2011, 05:00 PM
I didn't wan to say it to early, but now it seems to be fine... Somehow :P
The kext is loaded since about 24 hours and slow-down event didn't occur. At least so far :D
While searching BCM in Console I got more results now. These is all I got since I have loaded the kext. 11-04-18 18:13:12 sudo[255] astarael : TTY=ttys000 ; PWD=/Users/astarael ; USER=root ; COMMAND=/sbin/kextload /System/Library/Extensions/BCM5722D.kext/
11-04-18 18:13:13 kernel BCM5722D (Build date/time: Mar 25 2011 23:28:49)
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Loaded successfully
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Ethernet address 00:1e:37:24:13:81
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel BCM5722D (setMedium:367): Change medium: kIOMediumEthernetAuto
11-04-18 18:13:14 kernel BCM5722D (setMedium:392): Change medium: kLinkDuplexNegotiate
11-04-18 18:13:14 kernel BCM5722D (configureLinkAdvertisement:567): advertiseFe: 5E1
11-04-18 18:13:14 kernel BCM5722D (configureLinkAdvertisement:568): advertiseGe: 300
11-04-18 18:13:14 kernel BCM5722D (startAutoNegotiation:590): Adv reg: 5E1
11-04-18 22:04:02 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 22:04:02 kernel BCM5722D (setPowerState:84): Changing power state from 1 to 0
11-04-19 06:01:56 kernel BCM5722D (setPowerState:84): Changing power state from 0 to 1
11-04-19 06:01:57 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-19 06:01:57 kernel BCM5722D (setMedium:367): Change medium: kIOMediumEthernetAuto
11-04-19 06:01:57 kernel BCM5722D (setMedium:392): Change medium: kLinkDuplexNegotiate
11-04-19 06:01:57 kernel BCM5722D (configureLinkAdvertisement:567): advertiseFe: 5E1
11-04-19 06:01:57 kernel BCM5722D (configureLinkAdvertisement:568): advertiseGe: 300
11-04-19 06:01:57 kernel BCM5722D (startAutoNegotiation:590): Adv reg: 5E1
11-04-19 14:39:59 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-19 14:39:59 kernel BCM5722D (setPowerState:84): Changing power state from 1 to 0
11-04-19 14:39:59 kernel BCM5722D (setPowerState:84): Changing power state from 0 to 1
11-04-19 14:39:59 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-19 14:39:59 kernel BCM5722D (setMedium:367): Change medium: kIOMediumEthernetAuto
11-04-19 14:39:59 kernel BCM5722D (setMedium:392): Change medium: kLinkDuplexNegotiate
11-04-19 14:39:59 kernel BCM5722D (configureLinkAdvertisement:567): advertiseFe: 5E1
11-04-19 14:39:59 kernel BCM5722D (configureLinkAdvertisement:568): advertiseGe: 300
11-04-19 14:39:59 kernel BCM5722D (startAutoNegotiation:590): Adv reg: 5E1
11-04-19 14:52:49 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-19 14:52:49 kernel BCM5722D (setPowerState:84): Changing power state from 1 to 0
11-04-19 14:53:03 kernel BCM5722D (setPowerState:84): Changing power state from 0 to 1
11-04-19 14:53:03 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-19 14:53:03 kernel BCM5722D (setMedium:367): Change medium: kIOMediumEthernetAuto
11-04-19 14:53:03 kernel BCM5722D (setMedium:392): Change medium: kLinkDuplexNegotiate
11-04-19 14:53:03 kernel BCM5722D (configureLinkAdvertisement:567): advertiseFe: 5E1
11-04-19 14:53:03 kernel BCM5722D (configureLinkAdvertisement:568): advertiseGe: 300
11-04-19 14:53:03 kernel BCM5722D (startAutoNegotiation:590): Adv reg: 5E1 PS I hardly ever connect via ethernet, but I tested the drive before and connection was fine. Now I see controller in ifconfig output and system profile so I think it shall work too. Anyway, I will do some tests once I get back home for Easter.

adlan
04-19-2011, 05:38 PM
I didn't wan to say it to early, but now it seems to be fine... Somehow :P
The kext is loaded since about 24 hours and slow-down event didn't occur. At least so far :D
While searching BCM in Console I got more results now. These is all I got since I have loaded the kext. 11-04-18 18:13:12 sudo[255] astarael : TTY=ttys000 ; PWD=/Users/astarael ; USER=root ; COMMAND=/sbin/kextload /System/Library/Extensions/BCM5722D.kext/
11-04-18 18:13:13 kernel BCM5722D (Build date/time: Mar 25 2011 23:28:49)
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Model: BCM5787M NetLink (TM) Gigabit Ethernet
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Loaded successfully
11-04-18 18:13:14 kernel my_name_adlan_BCM5722D: Ethernet address 00:1e:37:24:13:81
11-04-18 18:13:14 kernel BCM5722D (resetAdapter:145): 4B657654 to B49A89AB in 0 iterations
11-04-18 18:13:14 kernel BCM5722D (setMedium:367): Change medium: kIOMediumEthernetAuto
..


PS I hardly ever connect via ethernet, but I tested the drive before and connection was fine. Now I see controller in ifconfig output and system profile so I think it shall work too. Anyway, I will do some tests once I get back home for Easter.

that's what i want to hear! :D


..
11-04-19 14:39:59 kernel BCM5722D (setPowerState:84): Changing power state from 1 to 0
11-04-19 14:39:59 kernel BCM5722D (setPowerState:84): Changing power state from 0 to 1
..
11-04-19 14:52:49 kernel BCM5722D (setPowerState:84): Changing power state from 1 to 0
11-04-19 14:53:03 kernel BCM5722D (setPowerState:84): Changing power state from 0 to 1


regarding the log message, i'm quite curious of what is happening.. seeing a lot of sudden power state changes and didn't see any link state announcement.

anyway, thank you for testing :)

Astarael
04-19-2011, 05:44 PM
I think these power state changes are here because I used sleep a few times. So no need to worry, also your kext doesn't break sleep ;)

ronin510
04-20-2011, 12:37 AM
I've been using your kext for my Lenovo S10 (with a BCM5906). So far, it's been working great!

On your "not implemented" list you have:
BCM5906/M - Isochronous Send Ring

I was wondering what that actually means for us BCM56906 users? Do we lose any common feature/functionality?

Also, I get 6MB/sec when transferring data from the ethernet connection. What do other people get?

adlan
04-20-2011, 03:19 PM
I think these power state changes are here because I used sleep a few times. So no need to worry, also your kext doesn't break sleep ;)

the small time difference between on and off state is what made me curious.
since you didn't have any problems with it, i'll just ignore the curiosity :D

adlan
04-20-2011, 04:14 PM
I've been using your kext for my Lenovo S10 (with a BCM5906). So far, it's been working great!

On your "not implemented" list you have:
BCM5906/M - Isochronous Send Ring

I was wondering what that actually means for us BCM56906 users? Do we lose any common feature/functionality?

Also, I get 6MB/sec when transferring data from the ethernet connection. What do other people get?

hey, glad to hear that!

the isochronous send ring is just a performance enhancement on the transmit side, it's great for data streaming. I don't remember stumbling upon that feature implementation while reading tg3(linux) and if_bge(*bsd) source code though (maybe I missed it, but I'm quite sure about it).

I don't know how much other people got since nobody put it up and I didn't ask for it either. Although I did do some benchmarking using tools like netperf (http://www.netperf.org/netperf/) and iperf (http://iperf.sourceforge.net/). Generally I can say its performance is on par with the available driver with only slight difference. If you want the result, I can post it later as I need to dive deep into the disk looking for it :D.

michalskie
04-25-2011, 03:30 AM
i have a lenovo g530

i installed the kext and got a kernel panic .
:(

adlan
04-26-2011, 03:21 AM
i have a lenovo g530

i installed the kext and got a kernel panic .
:(

hi, sorry for the delay

can you provide me your
- card model
- method of os installation (vanilla/distro(hazard,iatkos,etc)

derekj0571
04-30-2011, 06:44 AM
Your kext works flawlessly (So Far)
I just add the HID for the BCM 57778 (1691) and off to the races.
Throughput so far seems good.

If I were you, just add the same to your distro and will include this card.

Oh yes, this is a DVD Retail install of OSX Server 10.6 with Combo Update 10.6.7

adlan
05-03-2011, 04:01 AM
Your kext works flawlessly (So Far)
I just add the HID for the BCM 57778 (1691) and off to the races.
Throughput so far seems good.

If I were you, just add the same to your distro and will include this card.

Oh yes, this is a DVD Retail install of OSX Server 10.6 with Combo Update 10.6.7

hi, sorry for the delay, been away on holiday

great!, I didn't expect that, if it works flawlessly, I'll add it to the supported models list.

thank you for testing! :)

ludacrisvp
05-03-2011, 04:58 PM
Does not work on the Dell PowerEdge T110 (brand new Intel Xeon server)
14e4:165A kext appears to be able to be manually loaded but will not auto load and will not 'see' the device. LSPCI can see the card it is the BCM5722.
So since the kext will not attach to the card there is no network support

adlan
05-04-2011, 05:53 AM
Does not work on the Dell PowerEdge T110 (brand new Intel Xeon server)
14e4:165A kext appears to be able to be manually loaded but will not auto load and will not 'see' the device. LSPCI can see the card it is the BCM5722.
So since the kext will not attach to the card there is no network support

I assume you've tried adding 14E4,165A to the IONameMatch array in Info.plist.

Despite the project name, I actually left BCM5722 out of the supported model list and didn't considered it while developing. I'll check the programmer manual and send you the kext to test if there is any modification to the code to support this model as soon as possible (probably this weekend).

anibalin
05-07-2011, 10:09 PM
Hi mate, I tried the kext on this box but the kext is not even loaded (s/l/e)
I also put the kext in ionetworkingfamily,kext/contents/plugins but no luck either (ionetworkingfamily does get loaded).
10.6.7 x64

lspci -nn turns: 14e4_167a rev 02

thanks in advance for any help.

ludacrisvp
05-15-2011, 03:10 AM
I did actually get it to almost work. I had to manually set the MAC address for my work network to allow DHCP on my corporate network to assign an IP for me. It starts to load a webpage and KP! With complaints about IONetworking.kext. If I don't try to load a page I get about 5 mins of uptime prior to KP with same error. If I don't assign a MAC it still does the same thing with the KP. This was done last week sometime. I got fed up with it and bought the apple USB to Ethernet adapter for the air. However I might do some testing of more kexts on the built in adapter when I get back to work on Monday.

ronin510
05-15-2011, 04:53 AM
Sorry if this has been mentioned in the forum already, but I only pay attention to this thread.

It seems some posts/updates were deleted since the last time I visited. The site perhaps reloaded from a backup? The first post/kext is out of date again. Maybe this is why you thought you uploaded a newer version, but the site was reverted back to a previous state.

adlan
05-17-2011, 04:32 AM
Sorry if this has been mentioned in the forum already, but I only pay attention to this thread.

It seems some posts/updates were deleted since the last time I visited. The site perhaps reloaded from a backup? The first post/kext is out of date again. Maybe this is why you thought you uploaded a newer version, but the site was reverted back to a previous state.

yeah, just noticed that. some of the post is missing and the front page has the old content although I've updated it recently.

adlan
05-17-2011, 05:03 AM
I did actually get it to almost work. I had to manually set the MAC address for my work network to allow DHCP on my corporate network to assign an IP for me. It starts to load a webpage and KP! With complaints about IONetworking.kext. If I don't try to load a page I get about 5 mins of uptime prior to KP with same error. If I don't assign a MAC it still does the same thing with the KP. This was done last week sometime. I got fed up with it and bought the apple USB to Ethernet adapter for the air. However I might do some testing of more kexts on the built in adapter when I get back to work on Monday.

actually I have no idea about your problem, sorry. Did you try the latest kext I sent?

anyway, I just noticed the spec on your sig, are you installing it on leopard? I don't know if it will work on that without a recompilation and modification of Info.plist.

fyooo
05-17-2011, 09:33 AM
I can't see anything about BCM in my system.log and even my /var/log directory

bash-3.2# pwd
/var/log
bash-3.2# grep BCM *
bash-3.2# ls /System/Library/Extensions/BCM5722D.kext/Contents/
Info.plist MacOS Resources
bash-3.2#

rals2007
05-17-2011, 02:17 PM
adlan

Source is synced with your latest binary release ?

adlan
05-17-2011, 04:07 PM
adlan

Source is synced with your latest binary release ?

yes, i just updated the kext in the first post with the new build based on the latest commit

adlan
05-17-2011, 04:15 PM
I can't see anything about BCM in my system.log and even my /var/log directory

If the kext is loaded, it should at least shows a build date/time. So that means the kext isn't loaded. Actually I didn't have the chance to see the image of error message you posted before, can you post it again?

fyooo
05-18-2011, 02:27 AM
If the kext is loaded, it should at least shows a build date/time. So that means the kext isn't loaded. Actually I didn't have the chance to see the image of error message you posted before, can you post it again?

I just tried to load this kext manually in terminal:

bash-3.2# kextload BCM5722D.kext/
/Users/oo/Downloads/BCM5722D.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8).
bash-3.2#

adlan
05-18-2011, 05:23 AM
I just tried to load this kext manually in terminal:

bash-3.2# kextload BCM5722D.kext/
/Users/oo/Downloads/BCM5722D.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8).
bash-3.2#



you need to change the kext ownership/permissions , else kextd will not load the kext.


sudo chown -R root:wheel BCM5722D.kext
sudo chmod -R 755 BCM5722D.kext

fyooo
05-18-2011, 08:47 AM
you need to change the kext ownership/permissions , else kextd will not load the kext.


sudo chown -R root:wheel BCM5722D.kext
sudo chmod -R 755 BCM5722D.kext


Thanks, adlan
Maybe I should show my NIC information first:
14e4;
Broadcom Corporation;
167a;
NetXtreme BCM5754 Gigabit Ethernet PCI Express;
Network controller;
Ethernet controller

So now I change the permission of the kext file:

oos-iMac:Downloads oo$ ls BCM5722D.kext/
Contents
oos-iMac:Downloads oo$ sudo chown -R root:wheel BCM5722D.kext
oos-iMac:Downloads oo$ sudo chmod -R 755 BCM5722D.kext
oos-iMac:Downloads oo$ sudo kextload BCM5722D.kext

It seems nothing happen.
THe log is:

oos-iMac:Downloads oo$ grep BCM /var/log/*
/var/log/system.log:May 18 15:35:29 oos-iMac sudo[155]: oo : TTY=ttys000 ; PWD=/Users/oo/Downloads ; USER=root ; COMMAND=/usr/sbin/chown -R root:wheel BCM5722D.kext
/var/log/system.log:May 18 15:35:40 oos-iMac sudo[156]: oo : TTY=ttys000 ; PWD=/Users/oo/Downloads ; USER=root ; COMMAND=/bin/chmod -R 755 BCM5722D.kext
/var/log/system.log:May 18 15:35:49 oos-iMac sudo[157]: oo : TTY=ttys000 ; PWD=/Users/oo/Downloads ; USER=root ; COMMAND=/sbin/kextload BCM5722D.kext
oos-iMac:Downloads oo$


Thank you all the same:)
1570

rals2007
05-19-2011, 01:58 AM
fyooo

You fix it where you installed the kexts.

chmod -R 755 /System/Library/Extensions/BCM5722D.kext
chown -R root:wheel /System/Library/Extensions/BCM5722D.kext
touch /System/Library/Extensions

fyooo
05-19-2011, 04:04 AM
fyooo

You fix it where you installed the kexts.

chmod -R 755 /System/Library/Extensions/BCM5722D.kext
chown -R root:wheel /System/Library/Extensions/BCM5722D.kext
touch /System/Library/Extensions

I'd tried to use KextHelper to install this kext, but it can not work.
I can't see any information about BCM in system.log

adlan
05-19-2011, 09:24 AM
I'd tried to use KextHelper to install this kext, but it can not work.
I can't see any information about BCM in system.log

try loading it using kextutil with high verbosity level and put its output here


sudo kextutil -v 4 BCM5722D.kext

fyooo
05-19-2011, 12:02 PM
try loading it using kextutil with high verbosity level and put its output here


sudo kextutil -v 4 BCM5722D.kext


Thanks, that's what it shows:

oos-iMac:Downloads oo$ sudo kextutil -v 4 BCM5722D.kext
Password:
Kext library architecture set to x86_64.
Kext library recording diagnostics for: validation authentication dependencies warnings.
BCM5722D.kext appears to be loadable (not including linkage for on-disk libraries).
Loading BCM5722D.kext.
Reading load info for all kexts.
Reading loaded kext info from kernel.
Adding /Users/oo/Downloads/BCM5722D.kext to mkext.
/Users/oo/Downloads/BCM5722D.kext added 79552-byte noncompressed executable to mkext.
Created mkext for architecture x86_64 containing 1 kexts.
Loading BCM5722D.kext.
(kernel) Received request from user space to load kext my.name.adlan.BCM5722D.
(kernel) Recorded kext my.name.adlan.BCM5722D as a candidate for inclusion in prelinked kernel.
(kernel) Loading kext my.name.adlan.BCM5722D.
(kernel) Allocated link buffer for kext my.name.adlan.BCM5722D at 0xffffff7f8076f000 (28672 bytes).
(kernel) Kext my.name.adlan.BCM5722D executable loaded; 7 pages at 0xffffff7f8076f000 (load tag 95).
(kernel) Kext my.name.adlan.BCM5722D calling module start function.
(kernel) Kext my.name.adlan.BCM5722D registered class my_name_adlan_BCM5722D.
(kernel) Kext my.name.adlan.BCM5722D has IOService subclass my_name_adlan_BCM5722D; enabling autounload.
(kernel) Kext my.name.adlan.BCM5722D is now started.
(kernel) Kext my.name.adlan.BCM5722D sending 1 personality to the IOCatalogue and starting matching.
(kernel) Kext my.name.adlan.BCM5722D loaded.
Successfully loaded BCM5722D.kext.
BCM5722D.kext successfully loaded (or already loaded).

After that, I checked the system.log file:

oos-iMac:Downloads oo$ grep BCM /var/log/system.log
May 19 19:56:04 oos-iMac sudo[152]: oo : TTY=ttys000 ; PWD=/Users/oo/Downloads ; USER=root ; COMMAND=/usr/bin/kextutil -v 4 BCM5722D.kext
oos-iMac:Downloads oo$


It seems to be success, but I still can't connect to internet.

adlan
05-19-2011, 04:40 PM
Thanks, that's what it shows:

...

After that, I checked the system.log file:

oos-iMac:Downloads oo$ grep BCM /var/log/system.log
May 19 19:56:04 oos-iMac sudo[152]: oo : TTY=ttys000 ; PWD=/Users/oo/Downloads ; USER=root ; COMMAND=/usr/bin/kextutil -v 4 BCM5722D.kext
oos-iMac:Downloads oo$


It seems to be success, but I still can't connect to internet.

you searched in the wrong file, the log entry will be in kernel.log
can you also post here the output of ifconfig after the kext is loaded?

thanks :)

toja
05-20-2011, 01:23 AM
can is version wake on lan?

fyooo
05-20-2011, 02:33 AM
you searched in the wrong file, the log entry will be in kernel.log
can you also post here the output of ifconfig after the kext is loaded?

thanks :)

adlan, thanks:)

Once again
oos-iMac:Downloads oo$ sudo kextutil -v 4 BCM5722D.kext
Password:
Kext library architecture set to x86_64.
Kext library recording diagnostics for: validation authentication dependencies warnings.
BCM5722D.kext appears to be loadable (not including linkage for on-disk libraries).
Loading BCM5722D.kext.
Reading load info for all kexts.
Reading loaded kext info from kernel.
Adding /Users/oo/Downloads/BCM5722D.kext to mkext.
/Users/oo/Downloads/BCM5722D.kext added 79552-byte noncompressed executable to mkext.
Created mkext for architecture x86_64 containing 1 kexts.
Loading BCM5722D.kext.
(kernel) Received request from user space to load kext my.name.adlan.BCM5722D.
(kernel) Recorded kext my.name.adlan.BCM5722D as a candidate for inclusion in prelinked kernel.
(kernel) Loading kext my.name.adlan.BCM5722D.
(kernel) Allocated link buffer for kext my.name.adlan.BCM5722D at 0xffffff7f807a5000 (28672 bytes).
(kernel) Kext my.name.adlan.BCM5722D executable loaded; 7 pages at 0xffffff7f807a5000 (load tag 95).
(kernel) Kext my.name.adlan.BCM5722D calling module start function.
(kernel) Kext my.name.adlan.BCM5722D registered class my_name_adlan_BCM5722D.
(kernel) Kext my.name.adlan.BCM5722D has IOService subclass my_name_adlan_BCM5722D; enabling autounload.
(kernel) Kext my.name.adlan.BCM5722D is now started.
(kernel) Kext my.name.adlan.BCM5722D sending 1 personality to the IOCatalogue and starting matching.
(kernel) Kext my.name.adlan.BCM5722D loaded.
Successfully loaded BCM5722D.kext.
BCM5722D.kext successfully loaded (or already loaded).


And nothing found in kernel.log:
oos-iMac:Downloads oo$ grep BCM /var/log/kernel.log
oos-iMac:Downloads oo$ sudo ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
inet 127.0.0.1 netmask 0xff000000
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
oos-iMac:Downloads oo$

VIVXIX
05-21-2011, 10:10 AM
I always need to use IPv6 proxy for connecting to internet.
However,I find the driver may has some problem of IPv6 proxy,
which is that the connection of IPv6 proxy becomes disconnected sooner or later.
I can figure out it is not cause by the proxy.
But I found a temper solution that ifconfig the en0 down and up.

FredWst
05-21-2011, 05:09 PM
adlan, thanks:)

Once again
oos-iMac:Downloads oo$ sudo kextutil -v 4 BCM5722D.kext
Password:
Kext library architecture set to x86_64.
Kext library recording diagnostics for: validation authentication dependencies warnings.
BCM5722D.kext appears to be loadable (not including linkage for on-disk libraries).
Loading BCM5722D.kext.
Reading load info for all kexts.
Reading loaded kext info from kernel.
Adding /Users/oo/Downloads/BCM5722D.kext to mkext.
/Users/oo/Downloads/BCM5722D.kext added 79552-byte noncompressed executable to mkext.
Created mkext for architecture x86_64 containing 1 kexts.
Loading BCM5722D.kext.
(kernel) Received request from user space to load kext my.name.adlan.BCM5722D.
(kernel) Recorded kext my.name.adlan.BCM5722D as a candidate for inclusion in prelinked kernel.
(kernel) Loading kext my.name.adlan.BCM5722D.
(kernel) Allocated link buffer for kext my.name.adlan.BCM5722D at 0xffffff7f807a5000 (28672 bytes).
(kernel) Kext my.name.adlan.BCM5722D executable loaded; 7 pages at 0xffffff7f807a5000 (load tag 95).
(kernel) Kext my.name.adlan.BCM5722D calling module start function.
(kernel) Kext my.name.adlan.BCM5722D registered class my_name_adlan_BCM5722D.
(kernel) Kext my.name.adlan.BCM5722D has IOService subclass my_name_adlan_BCM5722D; enabling autounload.
(kernel) Kext my.name.adlan.BCM5722D is now started.
(kernel) Kext my.name.adlan.BCM5722D sending 1 personality to the IOCatalogue and starting matching.
(kernel) Kext my.name.adlan.BCM5722D loaded.
Successfully loaded BCM5722D.kext.
BCM5722D.kext successfully loaded (or already loaded).


And nothing found in kernel.log:
oos-iMac:Downloads oo$ grep BCM /var/log/kernel.log
oos-iMac:Downloads oo$ sudo ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
inet 127.0.0.1 netmask 0xff000000
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
oos-iMac:Downloads oo$


Hi i was having the same trouble with BCM 5754 on dell optiplex 745. 10.6.7 retail install

lspci -nn result:
03:00.0 Ethernet controller [0200]: Broadcom Corporation NetXtreme BCM5754 Gigabit Ethernet PCI Express [14e4:167a] (rev 02)

I fixe this changing in info.plist of kext this line:
pci14e4,167A -> pci14e4,167a

Deep sleep working

it made some weeks i search, now both i386 and x86_64 working fine. :)

Fred

adlan
05-22-2011, 07:24 AM
Hi i was having the same trouble with BCM 5754 on dell optiplex 745. 10.6.7 retail install

lspci -nn result:
03:00.0 Ethernet controller [0200]: Broadcom Corporation NetXtreme BCM5754 Gigabit Ethernet PCI Express [14e4:167a] (rev 02)

I fixe this changing in info.plist of kext this line:
pci14e4,167A -> pci14e4,167a

Deep sleep working

it made some weeks i search, now both i386 and x86_64 working fine. :)

Fred

hey, thanks!

I really have no idea what's causing that problem and now you found the culprit.
my bad, I totally missed that and to be honest, at first look I wouldn't have thought that would cause a problem..


my observation, I may be wrong.

.. and indeed it is. I've gone through the xnu source code and manually tracing function calls for the kext loading process. In the matching process, the values in IONameMatch array is compared using strncmp() function. This string comparison function is case-sensitive, so comparing 14e4,167a and 14e4,167A will yield false result and thus the matching process will fail.

The kext will load if it's load manually but it will sits there doing nothing since the matching process has failed thus no initialization process is initiated.



thanks a million again FredWst! :)

adlan
05-22-2011, 07:25 AM
can is version wake on lan?

still on TODO list ;)

FredWst
05-22-2011, 11:32 AM
Hello,

I've installed Lion on my optiplex 745.

BCM5722 is also working for my BCM 5754.

Fred

Ps: ATI 4350 is also working without green apple and qe/ci enable.

adlan
05-22-2011, 11:47 AM
I always need to use IPv6 proxy for connecting to internet.
However,I find the driver may has some problem of IPv6 proxy,
which is that the connection of IPv6 proxy becomes disconnected sooner or later.
I can figure out it is not cause by the proxy.
But I found a temper solution that ifconfig the en0 down and up.

it works on 5706 too? great! problem is expected, though. :)

I'll look at it when I have time. However, I do hope others to contribute to add support for other model if possible. But, since project documentation is currently sparse, I'm not expecting any ;)

anyway, thank you for testing!

VIVXIX
05-22-2011, 01:55 PM
it works on 5706 too? great! problem is expected, though. :)

I'll look at it when I have time. However, I do hope others to contribute to add support for other model if possible. But, since project documentation is currently sparse, I'm not expecting any ;)

anyway, thank you for testing!

I am sorry, I make a mistake.It 's bcm5906.,not BCM5706.
:'(:'(:'(:'(:'(

fyooo
05-23-2011, 04:31 AM
hey, thanks!

I really have no idea what's causing that problem and now you found the culprit.
my bad, I totally missed that and to be honest, at first look I wouldn't have thought that would cause a problem..


my observation, I may be wrong.

.. and indeed it is. I've gone through the xnu source code and manually tracing function calls for the kext loading process. In the matching process, the values in IONameMatch array is compared using strncmp() function. This string comparison function is case-sensitive, so comparing 14e4,167a and 14e4,167A will yield false result and thus the matching process will fail.

The kext will load if it's load manually but it will sits there doing nothing since the matching process has failed thus no initialization process is initiated.



thanks a million again FredWst! :)

adlan&FredWst
It works!
Thank you so much!

VIVXIX
05-24-2011, 01:45 AM
adlan&FredWst
It works!
Thank you so much!

Thanks .I think the IPv6 proxy problem posted before just disappear.
The ifconfig en0 down and ifconfig en0 up commons dos't need anymore.

adlan
05-24-2011, 03:40 PM
Hello,

I've installed Lion on my optiplex 745.

BCM5722 is also working for my BCM 5754.

Fred

Ps: ATI 4350 is also working without green apple and qe/ci enable.

great!


I am sorry, I make a mistake.It 's bcm5906.,not BCM5706.
:'(:'(:'(:'(:'(

^_^, no problem mate :)


adlan&FredWst
It works!
Thank you so much!

Thanks .I think the IPv6 proxy problem posted before just disappear.
The ifconfig en0 down and ifconfig en0 up commons dos't need anymore.

glad to hear that!

cephalopod
05-27-2011, 05:33 PM
Hi Adlan... thanks for your work on this, I've been suffering with hex-editing the original 5701 kext trying to get my card working (device ID 1681). I thought on the off-chance I'd try your kext and with an Info.plist addition it picked it up straight away - really impressed!

I just have to sort out the blank MAC address and give it some proper testing.

cephalopod
06-02-2011, 10:21 AM
Hi Adlan... thanks for your work on this, I've been suffering with hex-editing the original 5701 kext trying to get my card working (device ID 1681). I thought on the off-chance I'd try your kext and with an Info.plist addition it picked it up straight away - really impressed!

I just have to sort out the blank MAC address and give it some proper testing.

Oddly, on reboot with a link the MAC address is identified but the speed isn't negotiated properly... on first attempt to do anything with the interface/driver it drops the connection permanently, preventing reconfiguration; only resuming use after another reboot. Any ideas Adlan please?

adlan
06-02-2011, 03:47 PM
Hi Adlan... thanks for your work on this, I've been suffering with hex-editing the original 5701 kext trying to get my card working (device ID 1681). I thought on the off-chance I'd try your kext and with an Info.plist addition it picked it up straight away - really impressed!

I just have to sort out the blank MAC address and give it some proper testing.

Oddly, on reboot with a link the MAC address is identified but the speed isn't negotiated properly... on first attempt to do anything with the interface/driver it drops the connection permanently, preventing reconfiguration; only resuming use after another reboot. Any ideas Adlan please?

sorry for the lateness, been quite busy for the last few days.

anyway I checked the linux and *bsd driver, it seems that, there are some fixes/additional initialization steps/different register value for that model. maybe it has something to do with that, I'll try to include those changes and send you the kext to test this weekend.

thank you for testing! :)

ifumi
06-04-2011, 03:49 AM
thank's adlan, you rock..

thank god to show me the page 7 & 8 ;) now time to work with GMA3000, hope work soon.

many thank's adlan.

tc2468
06-09-2011, 08:38 PM
I have device 14e4:167b Broadcomm 5755 onboard nic on an hp xw6600 machine. The kext appears to fail to do anything at all. There is no mention of it in any of the logs in var/log

i've tried deleting and reinstalling the kext with both kext helper b7 and kext wizard, and rebuilding kext cache. I've tried using the zip file attachee to this thread, and rebuilding the kext from the source. No difference. I verified the device id w/ dpci manager.

Not sure what else to try?

it "works" with the hacked 5701 kext floating around, in that it gets an ip and can connect, but the hacked 5701 has horrible upload problems that make it incredibly slow or times out, which is why I arrived here.

Any ideas?


Try this one, it works for my HP xw4400 works with the onboard broadcom 167b. I've tried it with 10.6.2 - 10.6.7

fiatitude
06-17-2011, 01:41 PM
Dear Adlan,

Thanks for your driver. Able to install and detect BCM5787 but DHCP wasn't able to grab a valid IP keep geting 169.x.x.x. Even static IP i was not able to connect to Internet.

Any idea what went wrong?

jpt1105
06-17-2011, 04:47 PM
www.hra-13.com

cephalopod
06-22-2011, 05:07 PM
sorry for the lateness, been quite busy for the last few days.

anyway I checked the linux and *bsd driver, it seems that, there are some fixes/additional initialization steps/different register value for that model. maybe it has something to do with that, I'll try to include those changes and send you the kext to test this weekend.

thank you for testing! :)

Thanks adlan... appreciate life is hectic - keen to test when you're ready.

zoso
06-27-2011, 07:54 PM
Thanks for all the hard work on this one ceph.

Successful install with a BCM5755M on a Dell Precision M4300.

Astarael
07-15-2011, 05:24 PM
I've got one more thing to test for those, who have problem with loading the kext. I've been recently helping with os x installation on lenovo y530 (or sth like that) and installing the kext was not enough to make BCM5906M ethernet card work. Adding Device (LAN) in DSDT solved the problem (there was no ethernet device at all) and ethernet works fine.

ce_infmac
07-25-2011, 04:34 PM
Hi

tried it on Lion with a BCM57781 (14e4:16b1).
Changed the info.plist - driver loads - ifconfig shows en0, link speed is fine, but no packets are sent or received.
Any idea?

Thanks,
Christian

UserOSX
07-28-2011, 02:30 PM
Onboard Broadcom® 5754 Gigabit Ethernet LAN solution 10/100/1000 Ethernet (Dell Optiplex 745 desktop PC) works fine (as of now) on H@ckint0sh OS X Lion 10.7 with your BCM5722D.kext.zip

ethernet:

Type: Ethernet Controller
Bus: PCI
Vendor ID: 0x14e4
Device ID: 0x167a
Subsystem Vendor ID: 0x1028
Subsystem ID: 0x01da
Revision ID: 0x0002
Link Width: x1
BSD name: en1
Kext name: BCM5722D.kext
Location: /System/Library/Extensions/BCM5722D.kext
Version: 1


Indeed the problem with your earlier revision lied in the upper case alphabetical characters in device ID string. They needed to be lower case.

Thanks a million times for your time and effort.

ludacrisvp
07-28-2011, 03:25 PM
Hey, we used Xcode to compile the kext again using your latest sources. The best we can get now is 100BaseTX Full-Duplex. Using the kext from May it loaded up as half duplex 100BaseTX. It does seem to drop out the connection after a few hours and requires the kext to be unloaded and reloaded. This is on a Dell poweredge T110.

Any ideas on getting 1000BaseT Full duplex working?
I tried forcing the setting but it will either show cable unplugged or it does a self assigned IP and manually setting it does nothing. Now on a side note it doesn't need the MAC address manually set anymore, it is able to pick it up from the hardware.

Another side note... Do you know of any working pci-e GigE LAN cards that will work in osx? As work will buy the card that will work for the machine.

analot
07-28-2011, 04:52 PM
Thank you , working great on my Dell Optiplex 330(Y)
http://i12.photobucket.com/albums/a240/analot/ScreenShot2011-07-28at114640PM.png

majamudo
08-09-2011, 07:20 PM
Hi adlan, all,

after having no solution for my onboard nic i decided to give it a try and changed/added my device id to info.plist, like some other here as well ;).

The result is as follow:

en1: flags=8822<BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
options=3<RXCSUM,TXCSUM>
ether 00:25:22:bc:b8:9b
media: <unknown type>


Do you think there is any chance to get this working somehow?

Any help is much appreciated. Many thanks
M

majamudo
08-09-2011, 08:41 PM
after some more testing I now get following:

en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=3<RXCSUM,TXCSUM>
ether 00:25:22:bc:b8:9b
inet6 fe80::225:22ff:febc:b89b%en1 prefixlen 64 scopeid 0x5
inet 169.254.217.110 netmask 0xffff0000 broadcast 169.254.255.255
media: autoselect (1000baseT <half-duplex>)
status: active

of course...it still doesn't work. but why is it different now?

M

PinInCalgary
08-16-2011, 05:30 AM
Thank you!!! Works on my Dell Gx745 SFF with a BCOM 5754

Vendor Id: 0x14e4
Device Id: 0x167a
Subsystem Vendor Id: 0x1028
Revision Id: 0x0002
Link Width: x1

aaronson
08-17-2011, 03:57 AM
Hi Adlan,

I inserted the 1677 to the kext plist. The driver loads, assigns the correct MAC address, but does not transmit and recieve.

Is there anything else I should do?

Thanks.

antikus
08-22-2011, 12:28 AM
Adlan,

Would it be possible to add support for BCM5723? I added the device id (165b) to plist. The kext gets loaded, but when I try to use it I get

serviceRxInterrupt:1036): replaceOrCopyPacket returns 0
and a bunch of messages like
outputPacket:568: 1514 -> 2 segments, 1 free, consumer index: 59

Thank you.

m4f1050
08-25-2011, 03:13 PM
Congratulations! Great job!

Works perfect! :)

Off topic: I am using a DELL 390 (with this nic and a Quadro NVS 285 do you happen to have any info/link for Quadro NVS 285? It's all I need for a smoothly running hackintosh with DELL 390 and OS X 10.6.8 (upgraded from iATKOS S3 v2 using 10.6.8 Combo Update 1.1)

Thanks!!!

reysillo
09-12-2011, 04:40 PM
Hello Adlan

I am very interested in getting the latest kext of BCM5722D, but I have no idea, how compile or make your GIT repository code, you can give me a hand?


thanks for that wonderful work

niclo43
09-23-2011, 08:30 PM
my lan detected,, but no internet connection or cannot ping to another pc on net,,

i am add in Info.plist

--------
<string>pci14e4.16b5</string>
---------

it's detect my lan,, but cannot get connection,,

danybr
10-09-2011, 12:44 PM
I've tried this on my Acer Aspire 2920.

It works!

After 2 weeks I was looking for suitable driver, now works!

Thank you. I love you!

jahsmurf
10-17-2011, 11:02 AM
Thanks for sharing your work, ethernet now working on HP XW4400 dual core hackintosh :)

onelife
10-24-2011, 05:00 AM
Sleep not working?

Only unload&load kext after sleep to get it work again?

ocw-inf
11-23-2011, 05:30 PM
Driver works on
- Packard Bell LJ65
- Broadcom Netlink (TM) Gigabit Ethernet
- BCM5784M

Lion 10.7.2
- Iatkos L2

waldrondigital
11-29-2011, 05:31 PM
Dell Precision 390 owner! Happy as can be. Your kext is the only one that works 100%!! Thank you x 1000000

nveronesi
01-13-2012, 06:51 PM
I confirm my Ethernet Broadcom 5784M on on my Acer Aspire 5738G Dual core is working as well!!

- Broadcom Netlink (TM) Gigabit Ethernet
- BCM5784M

Lion 10.7.2
- Iatkos L2

I'm happy! Great job, man! Thanks! :):):):)

waldrondigital
01-17-2012, 12:30 AM
Is there any progress on getting this Kext to operate at gigabit speeds... the best I can get is 100baseTX.

It was my cable... the driver works fine at gigabit.

THANKS!

privateprotected
01-22-2012, 10:52 PM
Before I say something to you,
did someone say that you are damn good developer who
developer these drivers.. If no one haven't done that then I would
love to say that you ARE ----IING good.... Please excuse my language.

This damn thing took me 4 days to find these drivers and after doing
what you have said in this thread, it worked like a CHARM.....

I do appreciate from the bottom of my heart that you developed and shared
this with other users. I mean it.

Though I am also a software developer and mostly develop applications
in Microsoft technologies i.e. .Net etc and was keen to start
some software development for iPhone, I just couldn't get the drivers of this damn
LAN.

You are a saviour, once again thank you very much for developing and
sharing this with us...... THanks.

cparm
01-26-2012, 01:46 PM
Thx adlan,

works great on my lenovo S20 at works :)



Disclaimer
This driver is neither supported nor endorsed by Broadcom. Zombies may invade your house and I take no responsibility for whatever happens. Use at your own risk



lol, don't worry i've got some plants for these Zombies :)

h224nh
02-25-2012, 07:50 AM
Thanks adlan for the great driver.
I get stuck with Broadcom BCM5786 [14e4:169a]
I am not sure what should be edited in your source code, could you please show me how to do it ?
Thank.

Updated:
Luckily, I added [14e4:169a] definition to plist, recompile and install IONetworkingFamily.kext of my friend, and now everything works like charm.

silicman
03-11-2012, 03:21 AM
Just want to say thank, adlan, love you!!!!

Your driver work for my Ethernet card, the Broadcom 5752, which on the old guy DELL 490 with some minor fix.

I did 2 minor fix on your kext to support Broadcom 5752:

1. infor.plist. I replace <string>pci14e4,167A</string> with <string>pci14e4,1600</string>
2. BCM5722D. I hex this file, looking for "7A 16" then replace all with "00 16". (flip word anyway).

Finally, I put them inside IONetworking kext which replace the original one. Reinstall this kext. Re-build cache. Re boot. Viola!!!

No kernal panic, MAC address just there, DHCP ok, even though I haven't plug in network yet.


Which OS I run huh? iAtKos L2 (Lion 10.7.2).

Thank you so much, adlan.

mikegoh
03-29-2012, 11:24 PM
Work like charm for acer aspire 2920. The next i have been looking for..

chefk0k
04-07-2012, 09:14 PM
Thanks a lot for you work on making this driver.

I need a working Kext for the desktop version of this network card: Broadcom BCM5784. (Without the M)
Is there any way to modify this kext for it to work on the non-M version?
I'm on OSX 10.6.8. (AMD)

Unrealized
04-13-2012, 05:48 PM
Thanks a lot for you work on making this driver.

I need a working Kext for the desktop version of this network card: Broadcom BCM5784. (Without the M)
Is there any way to modify this kext for it to work on the non-M version?
I'm on OSX 10.6.8. (AMD)

Modifying the .plist is your best bet :)

squinn66
05-15-2012, 09:07 PM
Hardware:
Dell PowerEdge T110
2.39 Quad Core Intel Xeon
4GB 1333 DDR3
Nvidia GeForce 7300GT
OS: OS X Lion 10.7

I have a Broadcom Nextreme Gigabit network controller and i tried putting in the BCM5722D.kext using Kextdrop but the internet will not work. I look under the Network setting and none appear. Any suggestions. Thanks for your help. Any more information needed let me know.

lilcheshirecat
05-21-2012, 05:11 AM
Thank you so much. I finally have internet.

lilbiscuit
06-04-2012, 11:36 PM
Used kextWizard 3.7.10 and installed and rebooted in 1 min.

At first glance, worked perfectly. DHCP, mac address, until....

UPDATE: Networking stops working after awaking from sleep, as others have said. I didn't see that resolved in the thread...did I miss something?


OSX Lion 10.7.4
Dell Precision T5400
(2) Intel X5450 XEON Quad Core CPUs
4 GM RAM
Broadcom 5754
M-Audio Revolution 7.1 (work in progress)
nvidia Quadro FX 4600 (work in progress)

symbiote187
07-15-2012, 09:56 PM
Thank you very much for your hard work in developing this driver!

I have a small problem though, I have a BCM5755 and everything works but the driver crashes after copying lots of data over the LAN (roughly 100GB or 60k packets). Unloading the driver and reloading does not fix it and I have to reboot to get networking back.

Any ideas why this is happening and anything I can try to get it fixed?

Lion 10.7.4
HP xw6600
BCM5755 onboard

righteye
08-05-2012, 06:38 PM
Downloaded the source code and made some slight changes + added the BCM5784M 0x1698 device, compiled for ML ...
Still have 6 Semantic Issues and 5 Logic errors in the code but the compilation went fine. It works but after some intense usage, as symbiote187 pointed out, it stops working and the only solution is to reboot.
I am not a coder so ... but i really appreciate your involvement on this and i Thank You!

ghostanime2001
08-22-2012, 12:20 AM
I have the same device and vendor ID for ethernet as this kext 14e4:1698. But will my ethernet work since my wireless card is unsupported (1510 AGN) ??? I am trying to get my ethernet to work on a Dell Studio 1555 running on P8600 CPU and 512 MB ATI mobility 4570. Thanks for anyone's reply.

righteye
08-23-2012, 03:05 PM
I have the same device and vendor ID for ethernet as this kext 14e4:1698. But will my ethernet work since my wireless card is unsupported (1510 AGN) ??? I am trying to get my ethernet to work on a Dell Studio 1555 running on P8600 CPU and 512 MB ATI mobility 4570. Thanks for anyone's reply.

Try this one http://www.osx86.net/downloads.php?do=file&id=3074 if you are using ML