xref: /linux/drivers/net/wireless/ath/ath9k/Kconfig (revision b64acb28da8394485f0762e657470c9fc33aca4d)
10766789bSKalle Valo# SPDX-License-Identifier: ISC
27322fd19SLuis R. Rodriguezconfig ATH9K_HW
37322fd19SLuis R. Rodriguez	tristate
4db86f07eSLuis R. Rodriguezconfig ATH9K_COMMON
5db86f07eSLuis R. Rodriguez	tristate
69a6f7347SVladimir Kondratiev	select ATH_COMMON
71077ec47SChristian Lamparterconfig ATH9K_COMMON_DEBUG
81077ec47SChristian Lamparter	bool
929942bc1SZefir Kurtisiconfig ATH9K_DFS_DEBUGFS
1029942bc1SZefir Kurtisi	def_bool y
1129942bc1SZefir Kurtisi	depends on ATH9K_DEBUGFS && ATH9K_DFS_CERTIFIED
127322fd19SLuis R. Rodriguez
1370982b72SSujith Manoharanconfig ATH9K_BTCOEX_SUPPORT
1470982b72SSujith Manoharan	bool "Atheros bluetooth coexistence support"
1570982b72SSujith Manoharan	depends on (ATH9K || ATH9K_HTC)
1670982b72SSujith Manoharan	default y
17a7f7f624SMasahiro Yamada	help
1870982b72SSujith Manoharan	  Say Y, if you want to use the ath9k/ath9k_htc radios together with
1970982b72SSujith Manoharan	  Bluetooth modules in the same system.
2070982b72SSujith Manoharan
21203c4805SLuis R. Rodriguezconfig ATH9K
22203c4805SLuis R. Rodriguez	tristate "Atheros 802.11n wireless cards support"
23a01ae5b3SGeert Uytterhoeven	depends on MAC80211 && HAS_DMA
24*b64acb28SArnd Bergmann	select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
257322fd19SLuis R. Rodriguez	select ATH9K_HW
26db86f07eSLuis R. Rodriguez	select ATH9K_COMMON
27a7f7f624SMasahiro Yamada	help
28203c4805SLuis R. Rodriguez	  This module adds support for wireless adapters based on
292a219eb2SLuis R. Rodriguez	  Atheros IEEE 802.11n AR5008, AR9001 and AR9002 family
302a219eb2SLuis R. Rodriguez	  of chipsets. For a specific list of supported external
312a219eb2SLuis R. Rodriguez	  cards, laptops that already ship with these cards and
32278cee05SMasanari Iida	  APs that come with these cards refer to ath9k wiki
332a219eb2SLuis R. Rodriguez	  products page:
342a219eb2SLuis R. Rodriguez
351141215cSFlavio Suligoi	  https://wireless.wiki.kernel.org/en/users/Drivers/ath9k/products
36203c4805SLuis R. Rodriguez
37203c4805SLuis R. Rodriguez	  If you choose to build a module, it'll be called ath9k.
38203c4805SLuis R. Rodriguez
398e26a030SGabor Juhosconfig ATH9K_PCI
408e26a030SGabor Juhos	bool "Atheros ath9k PCI/PCIe bus support"
41fdacbcdaSDaniel Kuehn	default y
428e26a030SGabor Juhos	depends on ATH9K && PCI
43a7f7f624SMasahiro Yamada	help
448e26a030SGabor Juhos	  This option enables the PCI bus support in ath9k.
458e26a030SGabor Juhos
468e26a030SGabor Juhos	  Say Y, if you have a compatible PCI/PCIe wireless card.
478e26a030SGabor Juhos
488e26a030SGabor Juhosconfig ATH9K_AHB
498e26a030SGabor Juhos	bool "Atheros ath9k AHB bus support"
508e26a030SGabor Juhos	depends on ATH9K
518e26a030SGabor Juhos	default n
52a7f7f624SMasahiro Yamada	help
538e26a030SGabor Juhos	  This option enables the AHB bus support in ath9k.
548e26a030SGabor Juhos
558e26a030SGabor Juhos	  Say Y, if you have a SoC with a compatible built-in
568e26a030SGabor Juhos	  wireless MAC. Say N if unsure.
578e26a030SGabor Juhos
58a830df07SFelix Fietkauconfig ATH9K_DEBUGFS
59203c4805SLuis R. Rodriguez	bool "Atheros ath9k debugging"
60e5614a91SSujith Manoharan	depends on ATH9K && DEBUG_FS
6112e94327SSujith Manoharan	select MAC80211_DEBUGFS
621077ec47SChristian Lamparter	select ATH9K_COMMON_DEBUG
63a7f7f624SMasahiro Yamada	help
64a830df07SFelix Fietkau	  Say Y, if you need access to ath9k's statistics for
65a830df07SFelix Fietkau	  interrupts, rate control, etc.
66203c4805SLuis R. Rodriguez
679df7ddc3SMatthias Schiffer	  Also required for changing debug message flags at run time and for
689df7ddc3SMatthias Schiffer	  TX99.
69203c4805SLuis R. Rodriguez
701cdbaf0dSSujith Manoharanconfig ATH9K_STATION_STATISTICS
711cdbaf0dSSujith Manoharan	bool "Detailed station statistics"
721cdbaf0dSSujith Manoharan	depends on ATH9K && ATH9K_DEBUGFS && DEBUG_FS
731cdbaf0dSSujith Manoharan	select MAC80211_DEBUGFS
741cdbaf0dSSujith Manoharan	default n
75a7f7f624SMasahiro Yamada	help
761cdbaf0dSSujith Manoharan	  This option enables detailed statistics for association stations.
771cdbaf0dSSujith Manoharan
78e7ae3289SHelmut Schaaconfig ATH9K_TX99
79e7ae3289SHelmut Schaa	bool "Atheros ath9k TX99 testing support"
80e7ae3289SHelmut Schaa	depends on ATH9K_DEBUGFS && CFG80211_CERTIFICATION_ONUS
81e7ae3289SHelmut Schaa	default n
82a7f7f624SMasahiro Yamada	help
83e7ae3289SHelmut Schaa	  Say N. This should only be enabled on systems undergoing
84e7ae3289SHelmut Schaa	  certification testing and evaluation in a controlled environment.
85e7ae3289SHelmut Schaa	  Enabling this will only enable TX99 support, all other modes of
86e7ae3289SHelmut Schaa	  operation will be disabled.
87e7ae3289SHelmut Schaa
88e7ae3289SHelmut Schaa	  TX99 support enables Specific Absorption Rate (SAR) testing.
89e7ae3289SHelmut Schaa	  SAR is the unit of measurement for the amount of radio frequency(RF)
90e7ae3289SHelmut Schaa	  absorbed by the body when using a wireless device. The RF exposure
91e7ae3289SHelmut Schaa	  limits used are expressed in the terms of SAR, which is a measure
92e7ae3289SHelmut Schaa	  of the electric and magnetic field strength and power density for
93e7ae3289SHelmut Schaa	  transmitters operating at frequencies from 300 kHz to 100 GHz.
94e7ae3289SHelmut Schaa	  Regulatory bodies around the world require that wireless device
95e7ae3289SHelmut Schaa	  be evaluated to meet the RF exposure limits set forth in the
96e7ae3289SHelmut Schaa	  governmental SAR regulations.
97e7ae3289SHelmut Schaa
9829942bc1SZefir Kurtisiconfig ATH9K_DFS_CERTIFIED
9929942bc1SZefir Kurtisi	bool "Atheros DFS support for certified platforms"
10000267d59SLuis R. Rodriguez	depends on ATH9K && CFG80211_CERTIFICATION_ONUS
10129942bc1SZefir Kurtisi	default n
102a7f7f624SMasahiro Yamada	help
10329942bc1SZefir Kurtisi	  This option enables DFS support for initiating radiation on
10429942bc1SZefir Kurtisi	  ath9k. There is no way to dynamically detect if a card was DFS
10529942bc1SZefir Kurtisi	  certified and as such this is left as a build time option. This
10629942bc1SZefir Kurtisi	  option should only be enabled by system integrators that can
10729942bc1SZefir Kurtisi	  guarantee that all the platforms that their kernel will run on
10829942bc1SZefir Kurtisi	  have obtained appropriate regulatory body certification for a
10929942bc1SZefir Kurtisi	  respective Atheros card by using ath9k on the target shipping
11029942bc1SZefir Kurtisi	  platforms.
11129942bc1SZefir Kurtisi
11229942bc1SZefir Kurtisi	  This is currently only a placeholder for future DFS support,
11329942bc1SZefir Kurtisi	  as DFS support requires more components that still need to be
11429942bc1SZefir Kurtisi	  developed. At this point enabling this option won't do anything
11529942bc1SZefir Kurtisi	  except increase code size.
11629942bc1SZefir Kurtisi
117ce719152SLorenzo Bianconiconfig ATH9K_DYNACK
11855bb78d2SLorenzo Bianconi	bool "Atheros ath9k ACK timeout estimation algorithm"
119ce719152SLorenzo Bianconi	depends on ATH9K
120ce719152SLorenzo Bianconi	default n
121a7f7f624SMasahiro Yamada	help
122ce719152SLorenzo Bianconi	  This option enables ath9k dynamic ACK timeout estimation algorithm
123ce719152SLorenzo Bianconi	  based on ACK frame RX timestamp, TX frame timestamp and frame
124ce719152SLorenzo Bianconi	  duration
125ce719152SLorenzo Bianconi
126bb00b1f7SSujith Manoharanconfig ATH9K_WOW
127bb00b1f7SSujith Manoharan	bool "Wake on Wireless LAN support (EXPERIMENTAL)"
128bb00b1f7SSujith Manoharan	depends on ATH9K && PM
129bb00b1f7SSujith Manoharan	default n
130a7f7f624SMasahiro Yamada	help
131bb00b1f7SSujith Manoharan	  This option enables Wake on Wireless LAN support for certain cards.
132bb00b1f7SSujith Manoharan	  Currently, AR9462 is supported.
133bb00b1f7SSujith Manoharan
13474e13060SJohannes Bergconfig ATH9K_RFKILL
13574e13060SJohannes Berg	bool "Atheros ath9k rfkill support" if EXPERT
13674e13060SJohannes Berg	depends on ATH9K
13774e13060SJohannes Berg	depends on RFKILL=y || RFKILL=ATH9K
13874e13060SJohannes Berg	default y
13974e13060SJohannes Berg	help
14074e13060SJohannes Berg	  Say Y to have ath9k poll the RF-Kill GPIO every couple of
14174e13060SJohannes Berg	  seconds. Turn off to save power, but enable it if you have
14274e13060SJohannes Berg	  a platform that can toggle the RF-Kill GPIO.
14374e13060SJohannes Berg
1440e721bd0SSujith Manoharanconfig ATH9K_CHANNEL_CONTEXT
1450e721bd0SSujith Manoharan	bool "Channel Context support"
1460e721bd0SSujith Manoharan	depends on ATH9K
1470e721bd0SSujith Manoharan	default n
148a7f7f624SMasahiro Yamada	help
1490e721bd0SSujith Manoharan	  This option enables channel context support in ath9k, which is needed
1500e721bd0SSujith Manoharan	  for multi-channel concurrency. Enable this if P2P PowerSave support
1510e721bd0SSujith Manoharan	  is required.
1520e721bd0SSujith Manoharan
153935477edSFelix Fietkauconfig ATH9K_PCOEM
154935477edSFelix Fietkau	bool "Atheros ath9k support for PC OEM cards" if EXPERT
155935477edSFelix Fietkau	depends on ATH9K
156935477edSFelix Fietkau	default y
157935477edSFelix Fietkau
1585a4f2040SChristian Lamparterconfig ATH9K_PCI_NO_EEPROM
1595a4f2040SChristian Lamparter	tristate "Atheros ath9k pci loader for EEPROM-less chips"
1605a4f2040SChristian Lamparter	depends on ATH9K_PCI
1615a4f2040SChristian Lamparter	default n
1625a4f2040SChristian Lamparter	help
1635a4f2040SChristian Lamparter	  This separate driver provides a loader in order to support the
1645a4f2040SChristian Lamparter	  AR500X to AR92XX-generation of ath9k PCI(e) WiFi chips, which have
1655a4f2040SChristian Lamparter	  their initialization data (which contains the real PCI Device ID
1665a4f2040SChristian Lamparter	  that ath9k will need) stored together with the calibration data out
1675a4f2040SChristian Lamparter	  of reach for the ath9k chip.
1685a4f2040SChristian Lamparter
1695a4f2040SChristian Lamparter	  These devices are usually various network appliances, routers or
1705a4f2040SChristian Lamparter	  access Points and such.
1715a4f2040SChristian Lamparter
1725a4f2040SChristian Lamparter	  If unsure say N.
1735a4f2040SChristian Lamparter
174fb9987d0SSujithconfig ATH9K_HTC
175fb9987d0SSujith	tristate "Atheros HTC based wireless cards support"
176fb9987d0SSujith	depends on USB && MAC80211
177*b64acb28SArnd Bergmann	select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
178fb9987d0SSujith	select ATH9K_HW
179fb9987d0SSujith	select ATH9K_COMMON
180a7f7f624SMasahiro Yamada	help
181fb9987d0SSujith	  Support for Atheros HTC based cards.
182fb9987d0SSujith	  Chipsets supported: AR9271
183fb9987d0SSujith
1841141215cSFlavio Suligoi	  For more information:
1851141215cSFlavio Suligoi	  https://wireless.wiki.kernel.org/en/users/Drivers/ath9k_htc
186fb9987d0SSujith
187fb9987d0SSujith	  The built module will be ath9k_htc.
188fb9987d0SSujith
189fb9987d0SSujithconfig ATH9K_HTC_DEBUGFS
190fb9987d0SSujith	bool "Atheros ath9k_htc debugging"
191fb9987d0SSujith	depends on ATH9K_HTC && DEBUG_FS
1921077ec47SChristian Lamparter	select ATH9K_COMMON_DEBUG
193a7f7f624SMasahiro Yamada	help
194fb9987d0SSujith	  Say Y, if you need access to ath9k_htc's statistics.
1951077ec47SChristian Lamparter	  As well as access to the FFT/spectral data.
196ed14dc0aSMiaoqing Pan
197ed14dc0aSMiaoqing Panconfig ATH9K_HWRNG
198ed14dc0aSMiaoqing Pan	bool "Random number generator support"
199ed14dc0aSMiaoqing Pan	depends on ATH9K && (HW_RANDOM = y || HW_RANDOM = ATH9K)
200739ccd76SMiaoqing Pan	default n
201a7f7f624SMasahiro Yamada	help
202ed14dc0aSMiaoqing Pan	  This option incorporates the ADC register output as a source of
203ed14dc0aSMiaoqing Pan	  randomness into Linux entropy pool (/dev/urandom and /dev/random)
204ed14dc0aSMiaoqing Pan
205ed14dc0aSMiaoqing Pan	  Say Y, feeds the entropy directly from the WiFi driver to the input
206ed14dc0aSMiaoqing Pan	  pool.
2079df7ddc3SMatthias Schiffer
2089df7ddc3SMatthias Schifferconfig ATH9K_COMMON_SPECTRAL
2099df7ddc3SMatthias Schiffer	bool "Atheros ath9k/ath9k_htc spectral scan support"
2109df7ddc3SMatthias Schiffer	depends on ATH9K_DEBUGFS || ATH9K_HTC_DEBUGFS
2119df7ddc3SMatthias Schiffer	select RELAY
2129df7ddc3SMatthias Schiffer	default n
213a7f7f624SMasahiro Yamada	help
2149df7ddc3SMatthias Schiffer	  Say Y to enable access to the FFT/spectral data via debugfs.
215