Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 May 2008 15:02:54 -0500
From:      Walter <walterk1@earthlink.net>
To:        Questions <freebsd-questions@FreeBSD.org>
Subject:   Re: Buffalo/Broadcom wireless N card
Message-ID:  <482C96EE.1070206@earthlink.net>
In-Reply-To: <4820F2FF.4050503@earthlink.net>
References:  <4820F2FF.4050503@earthlink.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Walter wrote:

> I'm trying to compile support for a wireless router into FBSD 7
> using instructions off a FBSD help page I can't locate just now.
> (I'm working on building a network bridge.)
>
> none0@pci0:0:10:0:    class=0x028000 card=0x03531154 chip=0x432914e4 
> rev=0x01 hdr=0x00
>    vendor     = 'Broadcom Corporation'
>    device     = 'BCM43XNG 802.11n Network Adapter'
>    class      = network
>
> When it boots in the machine which has the card (I compiled
> on another computer) it blows out with a kernel error (writing
> not a non-existent page, I think) when the device shows up.
> It shows as device bge0 but identified as BCM 5701 (iirc).
>
> Can someone point me in the right direction?  Has anyone
> gotten this card to work?
>
With help from the List I got this to work:

The answer, maybe not the BEST answer, but the answer that
works, is to use the Windows XP driver and FBSD's 'ndis'.  My
goal was to build a FBSD router with wireless access to my COTS
wireless router to provide network access in another part of the house.

Get the driver files (.sys & .inf) either from the CD that came with
the card or from the Buffalo web site:
http://www.buffalotech.com/support/downloads/

Then, per instructions from the Handbook (11.8.2)
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/config-network-setup.html
run 'ndisgen' on the driver files:

# ndisgen netg300n.inf cbg300n.sys

A .ko file will be generated: cbg300n_sys.ko.  It can be loaded
using 'kldload ./cbg300n_sys.ko' but I wanted it loaded at boot.
So, as 11.8.2 says, copy this file to /boot/modules and add the
following line to /boot/loader.conf:

   cbg300n_sys_load="YES"

Also, as I wanted WPA encryption, I added two other lines to
loader.conf:
   wlan_ccmp_load="YES"
   wlan_tkip_load="YES"
The wireless setup instructions are in the handbook section 29;
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-wireless.html

Then in /etc/rc.conf add this:
   ifconfig_ndis0="WPA DHCP"
The device 'ndis0' is created by the ndis driver when it handles a
Windows driver.  I guess if you have more than one Windows
device and driver you get to sort out the various ndis0/1/2/3/4/5/etc.
If you don't want WPA just use "DHCP" and you don't need the
two extra lines above in loader.conf.

For WPA you need to create the WPA config file:
/etc/wpa_supplicant.conf:
   network={
      ssid="<your wireless network name>"
      psk="<your personal access key>"
   }

Somehow, it all magically started working.  (No doubt due to the
hard work of many FBSD coders.)

I hope I didn't leave out any major part.  I'm posting this not only
so other can benefit if they run into a similar problem, but in case
this box burns (HD fails) I'll have a record of what I did to recreate
it. <g>

Thank you again to those that helped.

Walter



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?482C96EE.1070206>