Broadcom BCM4312 not working.

Hello there.

I'm a new FreeBSD user but am enjoying everything about it so far. I have FreeBSD installed on a Compaq Presario CQ40 and as it is a laptop I wish to have wireless connectivity. The wireless network card is a Broadcom BCM4312. I have loaded the if_bwn.ko module and ifconfig has recognized a new interface. I then followed the manual and created the wlan0 interface and put it up. But ifconfig wlan0 scan prints nothing.

Furthermore there is a button above my keyboard that allows you to enable and disable the wireless card, now even though the new interface exists the light on the
aforementioned button is red, when running Arch Linux and even Windows on this machine the light would be blue if the network card was working. I have tried ndisgen but upon loading the kernel module it throws errors.

ifconfig output
Code:
┌──[ki113d]─[~]
└──> ifconfig
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
	options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
	ether 00:23:5a:b3:b3:ce
	inet 10.10.10.35 netmask 0xffffff00 broadcast 10.10.10.255
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
	media: Ethernet autoselect (100baseTX <full-duplex>)
	status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
	options=3<RXCSUM,TXCSUM>
	inet6 ::1 prefixlen 128 
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8 
	inet 127.0.0.1 netmask 0xff000000 
	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
bwn0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 2290
	ether 00:21:00:e5:63:23
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
	media: IEEE 802.11 Wireless Ethernet autoselect mode 11b
	status: associated
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
	ether 00:21:00:e5:63:23
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
	media: IEEE 802.11 Wireless Ethernet autoselect (autoselect)
	status: no carrier
	ssid "" channel 1 (2412 MHz 11b)
	country US authmode OPEN privacy OFF txpower 30 bmiss 7 scanvalid 60
	bgscan bgscanintvl 300 bgscanidle 250 roam:rssi 7 roam:rate 1 wme
	bintval 0

pciconf output regarding network cards.
Code:
siba_bwn0@pci0:9:0:0:	class=0x028000 card=0x137d103c chip=0x431514e4 rev=0x01 hdr=0x00
    vendor     = 'Broadcom Corporation'
    device     = 'BCM4312 802.11b/g LP-PHY'
    class      = network
re0@pci0:10:0:0:	class=0x020000 card=0x30fe103c chip=0x813610ec rev=0x02 hdr=0x00
    vendor     = 'Realtek Semiconductor Co., Ltd.'
    device     = 'RTL8101E/RTL8102E PCI Express Fast Ethernet controller'
    class      = network
    subclass   = ethernet

Any help getting my wireless card to would would be greatly appreciated. I apologize if I haven't posted any helpful information but I can't figure out what else to provide.

Thanks in advance.
Ki113d.
 
Yes it seems to be working now. I can't actually connect to a network at this very second but I can scan for networks. Thank you again :)
 
Thank you for your help wblock@. You have helped me get my card off the ground but a firmware issue has arisen. :S I have edited /etc/rc.conf to allow for automation of network setup etc. But every now and then my card goes down. This is the only information I get and it's from # dmesg
Code:
siba_bwn0: <Broadcom BCM4312 802.11b/g Wireless> mem 0x91100000-0x91103fff irq 18 at device 0.0 on pci9
bwn0 on siba_bwn0
bwn0: WLAN (chipid 0x4312 rev 15) PHY (analog 6 type 5 rev 1) RADIO (manuf 0x17f ver 0x2062 rev 2)
bwn0: DMA (64 bits)
bwn0: Using 1 MSI messages
wlan0: Ethernet address: 00:21:00:e5:63:23
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
wlan0: ieee80211_new_state_locked: pending INIT -> SCAN transition lost
drm0: <ATI Radeon HD 3200 Graphics> on vgapci0
info: [drm] MSI enabled 1 message(s)
info: [drm] Initialized radeon 1.31.0 20080613
info: [drm] Setting GART location based on new memory map
info: [drm] Loading RS780/RS880 Microcode
info: [drm] Resetting GPU
info: [drm] writeback test succeeded in 1 usecs
bwn0: Fatal DMA error: 0x800 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)
bwn0: Fatal DMA error: 0x400 0 0 0 0 0
bwn0: HW reset: DMA error
bwn0: firmware version (rev 478 patch 104 date 0x8701 time 0x657)

I can find no information regarding this issue that is helpful in any way.
 
Hello,

I know this is quite an old topic, but I just got the exact same problem with a Broadcomm BCM4312 chipset. Everything is setup properly (installed sysutils/b43-fwcutter and net/bwn-firmware-kmod, added siba_bwn_load="YES" and if_bwn_load="YES" and bwn_v4_lp_ucode_load="YES" in /boot/loader.conf, plus the usual wireless configuration), it works for a while and then suddenly these DMA errors flooding the console and the wireless becoming unusable.

In case someone finds this thread, this additional setting in /boot/loader.conf might help: hw.bwn.usedma=0
EDIT: no, sorry, I've found this and it looked right but next reboot proved me wrong, I could not boot and had to remove this setting. Hope there will be a reliable solution some time...
 
Thanks! I must own I didn't dare post anything there.
Problem is also, I have no idea how to trigger these DMA errors: they show up only randomly, so I'm afraid that so far, I cannot give enough details to help developers correcting them. Except for the fact that hw.bwn.usedma=0 makes the OS not bootable. (Should I really bother them with that?)

Well I'm been experiencing so many difficulties with this chipset (since the start in 2011 when Linux ran this laptop for the first time, and anytime I installed another Linux distro or sometimes even only upgraded it) that the easiest way to fix it is probably to disable it and buy a reliable dongle.
 
Back
Top