Henry Ptasinski | a9533e7 | 2010-09-08 21:04:42 -0700 | [diff] [blame] | 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 |
Henry Ptasinski | 29f6465 | 2010-09-11 09:44:09 -0700 | [diff] [blame] | 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 |
Henry Ptasinski | a9533e7 | 2010-09-08 21:04:42 -0700 | [diff] [blame] | 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 |
Brett Rudley | 0d58fef | 2010-10-26 10:05:14 -0700 | [diff] [blame] | 93 | Dowan Kim dowan@broadcom.com |
Henry Ptasinski | a9533e7 | 2010-09-08 21:04:42 -0700 | [diff] [blame] | 94 | |