BCM4313 support

Eric McCorkle eric at shadowsun.net
Fri Aug 19 02:20:13 UTC 2011


On 8/18/11 9:35 PM, richo wrote:
> On 18/08/11 13:49 -0400, Eric McCorkle wrote:
>> On 8/17/11 7:12 PM, Adrian Chadd wrote:
>>> On 18 August 2011 02:51, Eric McCorkle<eric at shadowsun.net> wrote:
>>>
>>>>
>>>> I have been working on porting the BroadCom linux driver. I don't
>>>> have much
>>>> time to work on it, though, and it's a rather daunting task.
>>>
>>> Cool! Is there anything we can do to help?
>>>
>>
>> Well, my objective is a working BCM 4322 (the card on macbooks)
>> driver. Someone who better understands linux drivers could take a look
>> at the wrapper code for the linux driver, and might be able to port it.
>>
>> More info: The broadcom linux driver consists of a closed-source
>> object file, compiled with standard linux kernel calling conventions,
>> and a bunch of linux wrapper code. It appears that the Broadcom
>> engineers did a relatively good job; the object file makes calls to
>> the kernel via an osl (presumably OS layer) interface, which seems
>> pretty generic. One of the headers appears to define the linux
>> instance of this layer, but it would seem others exist (probably for
>> windows, for instance). The rest of the code is simply linux driver
>> stuff that sets up interfaces, etc.
>>
>> The closed source .o file itself isn't stripped at all, and between
>> the known compiler flags and the headers that give types for
>> everything, there's enough information for complete
>> reverse-compilation. I've been working on this myself, but I have very
>> limited time to devote to it.
>
> Is what you have so far available anywhere?
>
> I've been putting off learning more about drivers for some time, and have a
> macbook 3,1 that I want to install FreeBSD on. I can probably kill two
> birds
> with one stone.
>
> I also have some older hardware with a broadcom nic of some kind (uses the
> b43 driver on linux) that I can fiddle with.
>
> Cheers
>
> richo
>

I haven't gotten far enough into the reverse compilation yet to warrant 
publishing anything.  I put a bandaid over the issue by using a USB 
wireless device, and I've been fixing other issues wrt running on a 
macbook.  But I do plan to publish it all eventually.  Also, the code's 
all in Haskell, not that that should dissuade anyone.

A MacBook 3,1 has the Atheros card, if I'm not mistaken, which is 
supported (one major headache you don't have to deal with).  I could 
talk more about where I am with running on a macbook, but we should 
probably take this over to -mobile for that, since it doesn't have 
anything to do with wireless.


More information about the freebsd-wireless mailing list