Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
[pandora-kernel.git] / drivers / staging / brcm80211 / README
1 Broadcom Mac80211 driver
2
3 This is a driver in progress.  It has features still to be implemented well as
4 bugs in current code.
5
6
7 What's here and not here
8 =======================
9 - Completely open source host driver, no binary object files
10 - Features Broadcom's OneDriver architecture (single source base for
11   supported chips and architectures)
12 - On-chip firmware loaded using standard request_firmware()
13 - Support for BCM43224, BCM43225, BCM4313 (PCIe NIC)
14 - Framework for supporting new chips, including mac80211-aware embedded chips
15 - Does not support older PCI/PCIe chips with SSB backplane
16 - Driver includes BMAC interface for transparent dongle support
17 - Uses minstrel_ht rate algorithm
18 - HW based encryption not enabled yet
19
20
21 What's done
22 ==========
23 - Integration with mac80211 stack
24 - A-MPDU single & dual stream rates
25 - BCM43224:     Dualband, Dual stream, 20MHz channels
26         Throughput (in chamber): ~85-90 Mbits/sec (in both 2.4 & 5 GHz bands)
27 - BCM43225:     2.4 GHz, Dual Stream, 20MHz channels
28         Throughput (in chamber): ~85-90 Mbits/sec
29 - BCM4313:              2.4 GHz, Single Stream
30         Throughput (in chamber): ~40 Mbits/sec
31
32
33 Things To Be Done
34 =================
35 See the TODO file
36
37
38 Firmware installation
39 ======================
40 Firmware is available from the Linux firmware repository at:
41
42         git://git.kernel.org/pub/scm/linux/kernel/git/dwmw2/linux-firmware.git
43         http://git.kernel.org/?p=linux/kernel/git/dwmw2/linux-firmware.git
44         https://git.kernel.org/?p=linux/kernel/git/dwmw2/linux-firmware.git
45
46 For all chips, copy brcm/bcm43xx-0-610-809-0.fw and
47 brcm/bcm43xx_hdr-0-610-809-0.fw to /lib/firmware/brcm (or wherever firmware is
48 normally installed on the system).  In the /lib/firmware/brcm directory, then
49 create the following symlinks:
50
51         ln -s bcm43xx-0-610-809-0.fw bcm43xx-0.fw
52         ln -s bcm43xx_hdr-0-610-809-0.fw bcm43xx_hdr-0.fw
53
54
55 Currently supported chips
56 ==============
57 PCI
58 Name            Device ID
59 BCM4313         0x4727
60 BCM43224        0x4353
61 BCM43225        0x4357
62
63
64 Bugs/Problems
65 ==============
66 - Driver can get confused while scanning during high throughput, can cause
67   burping, hanging, and possible crashing.
68 - Occasional hangs & burps with BCM43224 on 2.4 GHz with dual stream rates.
69 - Occasional crashes with BCM43224 on multicore machines.
70
71
72 Note on Regulatory Implementation
73 ================================
74 This generation of chips contain additional regulatory support independent of
75 the driver. The devices use a single worldwide regulatory domain, with channels
76 12-14 (2.4 GHz band) and channels 52-64 and 100-140 (5 GHz band) restricted to
77 passive operation. Transmission on those channels is suppressed until
78 appropriate other traffic is observed on those channels.
79
80 Within the driver, we use the ficticious country code "X2" to represent this
81 worldwide regulatory domain. There is currently no interface to configure a
82 different domain.
83
84 The driver reads the SROM country code from the chip and hands it up to
85 mac80211 as the regulatory hint, however this information is otherwise unused
86 with the driver.
87
88
89 Contact Info:
90 =============
91 Brett Rudley    brudley@broadcom.com
92 Henry Ptasinski henryp@broadcom.com
93 Nohee Ko        noheek@broadcom.com
94