User Tools

Site Tools


en:users:drivers:brcm80211

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
en:users:drivers:brcm80211 [2015/11/26 17:53]
Rafał Miłecki [brcmfmac] Add PCIe 14e4:43ef (BCM4359)
en:users:drivers:brcm80211 [2020/06/10 15:38]
Matteo Scordino
Line 45: Line 45:
 |BCM43602 |14e4:43bc | Supported in 3.19+, 5 GHz device | |BCM43602 |14e4:43bc | Supported in 3.19+, 5 GHz device |
 |BCM43602 |14e4:aa52 | Supported in 4.2+, "​raw"​ device | |BCM43602 |14e4:aa52 | Supported in 4.2+, "​raw"​ device |
-|BCM4365 ​ |14e4:43ca | Queued for 4.4+ | +|BCM4365 ​ |14e4:43ca | Supported in 4.4+ | 
-|BCM4365 ​ |14e4:43cb | Queued for 4.4+, 2 GHz device | +|BCM4365 ​ |14e4:43cb | Supported in 4.4+, 2 GHz device | 
-|BCM4365 ​ |14e4:43cc | Queued for 4.4+, 5 GHz device | +|BCM4365 ​ |14e4:43cc | Supported in 4.4+, 5 GHz device | 
-|BCM4366 ​ |14e4:43c3 | Queued for 4.4+ | +|BCM4366 ​ |14e4:4365 | Queued for 4.6+ | 
-|BCM4366 ​ |14e4:43c4 | Queued for 4.4+, 2 GHz device | +|BCM4366 ​ |14e4:43c3 | Supported in 4.4+ | 
-|BCM4366 ​ |14e4:43c5 | Queued for 4.4+, 5 GHz device |+|BCM4366 ​ |14e4:43c4 | Supported in 4.4+, 2 GHz device | 
 +|BCM4366 ​ |14e4:43c5 | Supported in 4.4+, 5 GHz device |
  
  
Line 56: Line 57:
 ^ Name      ^ Device ID  ^ Notes               ^ ^ Name      ^ Device ID  ^ Notes               ^
 | BCM4329 ​  | 0x4329 ​    ​| ​                    | | BCM4329 ​  | 0x4329 ​    ​| ​                    |
-| BCM4330 ​  | 0x4330 ​    ​| ​                    ​+| BCM4330 ​  | 0x4330 ​    ​| ​Supported in 3.3+   
-| BCM4334 ​  | 0x4334 ​    ​| ​                    ​+| BCM4334 ​  | 0x4334 ​    ​| ​Supported in 3.6+   
-|BCM43340 |0xa94c |Supported in 4.0+ | +| BCM43340 ​ | 0xa94c ​    ​| Supported in 4.0+   ​
-|BCM43341 |0xa94d |Supported in 4.0+ | +| BCM43341 ​ | 0xa94d ​    ​| Supported in 4.0+   ​
-| BCM43241 ​ | 0x4324 ​    ​| ​                    ​+| BCM43241 ​ | 0x4324 ​    ​| ​Supported in 3.7+   
-| BCM4335 ​  | 0x4335 ​    ​| ​                    ​|+| BCM4335 ​  | 0x4335 ​    ​| ​Supported in 3.10+  ​|
 | BCM4339 ​  | 0x4335 ​    | Supported in 3.13+  | | BCM4339 ​  | 0x4335 ​    | Supported in 3.13+  |
 | BCM43362 ​ | 0xA962 ​    | Supported in 3.14+  | | BCM43362 ​ | 0xA962 ​    | Supported in 3.14+  |
Line 67: Line 68:
 | BCM43455 ​ | 0x4345 ​    | Supported in 4.1+   | | BCM43455 ​ | 0x4345 ​    | Supported in 4.1+   |
 | BCM4354 ​  | 0x4354 ​    | Supported in 3.15+  | | BCM4354 ​  | 0x4354 ​    | Supported in 3.15+  |
-| BCM43143 ​ | 0xA887 ​    ​| ​                    ​|+| BCM43143 ​ | 0xA887 ​    ​| ​Supported in 3.10+  ​| 
  
  
Line 114: Line 116:
 === Current === === Current ===
  
-For SDIO driver you need to copy the nvram for your system and place it in /​lib/​firmware/​brcm. The nvram file name depends on the chip you have. The kernel log will tell you the exact file name. For the USB driver no nvram file is needed. ​+For SDIO driver you need to copy the nvram for your system and place it in /​lib/​firmware/​brcm. The nvram file name depends on the chip you have. The kernel log will tell you the exact file name.  
 + 
 +For the USB driver no nvram file is //​strictly// ​needed: however, the nvram parameters are still required and they are already part of the firmware blob. This is a TRX file which contains the nvram parameters as a sequence of zero-terminated plain text strings, appended at the end of the last section. 
 +For an example of how to modify/add nvram parameters for USB devices, see [[https://​www.linkedin.com/​feed/​update/​urn:​li:​activity:​6675830103454339072/​|this article]]
  
 The firmware files are located in the linux-firmware repository and can be copied as is to /​lib/​firmware/​brcm. ​ The firmware files are located in the linux-firmware repository and can be copied as is to /​lib/​firmware/​brcm. ​
Line 131: Line 136:
  
 === NVRAM from EFI === === NVRAM from EFI ===
-Some new devices are storing the nvram which is needed in addition to the firmware by the driver in an EFI variable and the Windows driver can access it. Currently brcmfmac does not support this automatically.+Some new devices are storing the nvram which is needed in addition to the firmware by the driver in an EFI variable and the Windows driver can access it (this file should be optional in the case of PCIe devices). Currently brcmfmac does not support this automatically.
 First mount the efi vars into sysfs: First mount the efi vars into sysfs:
   mount -t efivarfs none /​sys/​firmware/​efi/​efivars   mount -t efivarfs none /​sys/​firmware/​efi/​efivars
Line 143: Line 148:
 ===== Contact Info ===== ===== Contact Info =====
  
-For driver issues and/or bug reports, please use: +For driver issues and/or bug reports, please use one or both:
  
-[[mailto:​brcm80211-dev-list@broadcom.com|brcm80211-dev-list@broadcom.com]] ​+[[mailto:​brcm80211-dev-list.pdl@broadcom.com|brcm80211-dev-list.pdl@broadcom.com]]\\ 
 +[[mailto:​brcm80211-dev-list@cypress.com|brcm80211-dev-list@cypress.com]]
  
 For any other questions feel free to contact the developers listed below: ​ For any other questions feel free to contact the developers listed below: ​
  
-Arend van Spriel ​       [[mailto:​arend@broadcom.com|arend@broadcom.com]] ​ +Arend van Spriel ​       [[mailto:​arend.vanspriel@broadcom.com|arend.vanspriel@broadcom.com]]\\ 
- +Franky Lin              [[mailto:franky.lin@broadcom.com|franky.lin@broadcom.com]]\\ 
-Franky Lin              [[mailto:frankyl@broadcom.com|frankyl@broadcom.com]] ​ +Hante Meuleman ​         [[mailto:hante.meuleman@broadcom.com|hante.meuleman@broadcom.com]]\\ 
- +Chi-Hsien Lin           [[mailto:Chi-Hsien.Lin@cypress.com|Chi-Hsien.Lin@cypress.com]]\\ 
-Hante Meuleman ​         [[mailto:​meuleman@broadcom.com|meuleman@broadcom.com]]  +Wright Feng             ​[[mailto:​Wright.Feng@cypress.com|Wright.Feng@cypress.com]]
- +
-Brett Rudley ​           ​[[mailto:brudley@broadcom.com|brudley@broadcom.com]]  +
  
 ===== Developer information ===== ===== Developer information =====
Line 224: Line 227:
 ==== Regulatory Implementation for brcmsmac ==== ==== Regulatory Implementation for brcmsmac ====
  
-This generation of chips contain additional ​ regulatory support independent of the driver. The devices use a single ​ worldwide regulatory domain, with channels ​12-14 (2.4 GHz band) and  channels 52-64 and 100-140 (5 GHz band) restricted to passive operation. ​ Transmission on those channels is suppressed until appropriate other  traffic is observed on those channels. Within the driver, we use the  ficticious country code "​X2"​ to represent this worldwide regulatory ​ domain. There is currently no interface to configure a different domain. ​ The driver reads the SROM country code from the chip and hands it up to  mac80211 as the regulatory hint, however this information is otherwise ​ unused with the driver. ​+This generation of chips contain additional ​ regulatory support independent of the driver. The devices use a single ​ worldwide regulatory domain, with channels ​1-11 (2.4 GHz band) and  channels 52-64 and 100-140 (5 GHz band) restricted to passive operation. ​ Transmission on those channels is suppressed until appropriate other  traffic is observed on those channels. Within the driver, we use the  ficticious country code "​X2"​ to represent this worldwide regulatory ​ domain. There is currently no interface to configure a different domain. ​ The driver reads the SROM country code from the chip and hands it up to  mac80211 as the regulatory hint, however this information is otherwise ​ unused with the driver. ​
  
en/users/drivers/brcm80211.txt · Last modified: 2024/03/20 10:46 by Peter Robinson