InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   10.X (http://infinitemac.com/forumdisplay.php?f=36)
-   -   BCM5754/M,BCM5755/M,BCM5787/M,BCM5906/M NIC driver for 10.6 (32/64) [update 22/5] (http://infinitemac.com/showthread.php?t=6946)

adlan 02-12-2011 05:45 AM

BCM5754/M,BCM5755/M,BCM5787/M,BCM5906/M NIC driver for 10.6 (32/64) [update 22/5]
 
1 Attachment(s)
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:
  1. BCM5722
  2. BCM5754
  3. BCM5754M
  4. BCM5755
  5. BCM5755M
  6. BCM5787
  7. BCM5787M #
  8. BCM5906 #
  9. 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 (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 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

Quote:

Originally Posted by chinasky (Post 52745)
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:

Code:

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

Quote:

Originally Posted by pat98usb (Post 52752)
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

Quote:

Originally Posted by quinielascom (Post 52753)
Thanks seem work fine, tested with BCM5787M.

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

In my system log I have:

Code:

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

Quote:

Originally Posted by limiter121 (Post 52846)
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

Dell XPS m1330
 
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

Quote:

Originally Posted by webwolf (Post 52943)
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

Quote:

Originally Posted by adminio (Post 52866)
Thanks! I have a Acer5315 w/BCM5906M works!

glad to hear that :)

Quote:

Originally Posted by Dabluest (Post 52936)
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

Quote:

Originally Posted by adlan (Post 52953)
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

Quote:

Originally Posted by abiogenesis (Post 53099)
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

Quote:

Originally Posted by Dabluest (Post 52961)
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

Quote:

Originally Posted by rals2007 (Post 53141)
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.

Quote:

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

Quote:

Originally Posted by abiogenesis (Post 53219)
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

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!

volgin7 03-20-2011 03:03 AM

Works in the Lenovo S12
 
Excellent! Works for (LAN) BCM 5906M on the Lenovo S12 :)
Thank's!

adlan 03-20-2011 04:59 PM

Quote:

Originally Posted by Medienmensch (Post 53240)
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

adlan 03-20-2011 05:00 PM

Quote:

Originally Posted by volgin7 (Post 53270)
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:

Quote:

Originally Posted by pat98usb (Post 52752)
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

Quote:

Originally Posted by adlan (Post 53165)
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 :
Code:

BCM5722D-18e3e93/BCM5722D.cpp:536: warning: implicit conversion shortens 64-bit value into a 32-bit value

adlan 03-25-2011 03:50 AM

Quote:

Originally Posted by tmacyunn (Post 53398)
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 :
Code:

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:
Code:

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:
Code:

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

Quote:

Originally Posted by Astarael (Post 53562)
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

Quote:

Originally Posted by Domenic211 (Post 53683)
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,

Code:

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 (as of this reply, the main site is currently down. the link points to kexts.com download)

Astarael 04-18-2011 05:18 PM

Quote:

Originally Posted by adlan (Post 53572)
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:
Code:

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.

Quote:

Originally Posted by Astarael (Post 53719)
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:

Code:

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

Quote:

Originally Posted by scritchy (Post 53722)
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.
Code:

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

Quote:

Originally Posted by Astarael (Post 53731)
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.
Code:

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

Code:

..
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

Quote:

Originally Posted by Astarael (Post 53733)
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

Quote:

Originally Posted by ronin510 (Post 53735)
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 and iperf. 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

Quote:

Originally Posted by michalskie (Post 53794)
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

BCM 57778 support
 
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