[wireless-next][PATCH 0/3][ANNOUNCE] b43 the first Linux driver supporting HT-PHY (BCM4331)!

Rafał Miłecki zajec5 at gmail.com
Sat Aug 27 09:47:10 EDT 2011


2011/8/27 James Anslow <james at jamesanslow.net>:
> On 27/08/11 14:22, Rafał Miłecki wrote:
>> 2011/8/27 James Anslow <james at jamesanslow.net>:
>>> On 27/08/11 11:22, Rafał Miłecki wrote:
>>>> 2011/8/27 James Anslow <james at jamesanslow.net>:
>>>>> On 26/08/11 19:41, Rafał Miłecki wrote:
>>>>>> After improving DMA (the important patch for BCM4331 is my one) we can finally
>>>>>> enable support for HT-PHY. The whole code has been written from MMIO dumps
>>>>>> grabbed from ndiswrapper+windows driver, but seems to be stable and was tested
>>>>>> by 3 people. Unfortunately there are still some missing conditions that can't
>>>>>> be fixed without RE the closed driver or having Broadcom co-operating. However
>>>>>> it seems we live with that well enough for basic usage :)
>>>>>>
>>>>>> BCM4331 doesn't have any Linux driver yet, both: wl and brcm80211 don't support
>>>>>> it. So we can be really proud of it ;) Ah, and I should mention that ndiswrapper
>>>>>> was frequently reported to lock up machines when working with this card (see
>>>>>> Ubuntu's forum about MacBook 8.1).
>>>>>>
>>>>>> To use b43 with BCM4331 you will need to grab the newest b43-fwcutter and
>>>>>> extract firmware from some recent closed source driver. See our wiki page in
>>>>>> few hours for nice howto.
>>>>>>
>>>>>> Big thanks go to David Woodhouse for providing me access to his MacBook, letting
>>>>>> grab the dumps, test patches and debugging a lot of hard cases with me (and
>>>>>> sometime without ;) ).
>>>>>>
>>>>>> Larry Finger (1):
>>>>>>   b43: Relax requirement for descriptors to be in the DMA zone
>>>>>>
>>>>>> Rafał Miłecki (2):
>>>>>>   b43: use 8K buffers for 64-bit DMA to workaround hardware bug
>>>>>>   b43: make HT-PHY support experimental
>>>>>>
>>>>>>  drivers/net/wireless/b43/Kconfig |    6 +++---
>>>>>>  drivers/net/wireless/b43/dma.c   |   31 ++++++++++++++++---------------
>>>>>>  drivers/net/wireless/b43/dma.h   |    3 ++-
>>>>>>  3 files changed, 21 insertions(+), 19 deletions(-)
>>>>>>
>>>>> I've checked the wiki page and downloads area but the latest version of
>>>>> fwcutter that I could find was from several days ago.
>>>>>
>>>>> Can anyone direct me towards the latest b43-fwcutter download as
>>>>> mentioned above?
>>>>>
>>>>> Can't wait to get 4331 support!
>>>> Just use the howto for kernel 3.2 (I know it's a little tricky for now
>>>> to use 3.2, wireless-next is also OK for that howto):
>>>> http://wireless.kernel.org/en/users/Drivers/b43#Other_distributions_not_mentioned_above
>>>>
>>>> You have to:
>>>> 1) Clone git repository wireless-next
>>>> 2) Apply 3 patches from this patchset
>>>> 3) Compile kernel with B43_PHY_HT
>>>> 4) Install firmware (I think you already started that part)
>>>>
>>>> b43-fwcutter in 015 version is alright for extracting 666.2 firmware.
>>>>
>>> Thanks for your support on this.
>>>
>>> I'm not too knowledgeable when it comes to kernel development. However,
>>> I am eager to learn.
>>>
>>> I've cloned the repo and have wireless-next.
>>>
>>> Can you tell me where I will find these 3 patches to apply them to
>>> wireless-next?
>> You can find them on b43-dev ML archive. You can copy them and paste
>> into 3 separated text files.
>>
>> However to make it easier to you, I've also uploaded them to http server:
>> http://files.zajec.net/enable-ht/0001-b43-Relax-requirement-for-descriptors-to-be-in-the-D.patch
>> http://files.zajec.net/enable-ht/0002-b43-use-8K-buffers-for-64-bit-DMA-to-workaround-hard.patch
>> http://files.zajec.net/enable-ht/0003-b43-make-HT-PHY-support-experimental.patch
>>
>> Save all that 3 files on your disk and then do:
>>
>> cd /foo/bar/wireless-next
>> git am 0001-b43-Relax-requirement-for-descriptors-to-be-in-the-D.patch
>> git am 0002-b43-use-8K-buffers-for-64-bit-DMA-to-workaround-hard.patch
>> git am 0003-b43-make-HT-PHY-support-experimental.patch
>>
>> After that use "make menuconfig", enable BCMA, enable support for BCMA
>> in b43 and enable HT support in b43.
>>
> Thanks for your help.
>
> Will I find the ability to enable support for BCMA and HT support in the
> menuconfig file or elsewhere?

Yes. menuconfig has great feature of searching. Just enter "/" key and
type phase you're looking for. For example type "/BCMA" and press
ENTER. What you want is:
Device Drivers -> Broadcom specific AMBA -> BCMA support
Device Drivers -> Broadcom specific AMBA -> Support for BCMA on PCI-host bus
Device Drivers -> Network device support -> Wireless LAN -> Broadcom
43xx wireless support -> Support for BCMA bus
Device Drivers -> Network device support -> Wireless LAN -> Broadcom
43xx wireless support -> Support for HT-PHY (high throughput) devices

-- 
Rafał



More information about the b43-dev mailing list