xref: /linux/drivers/net/wireless/ath/ath9k/Kconfig (revision 41c177cf354126a22443b5c80cec9fdd313e67e1)
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
24b64acb28SArnd 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"
60*3d529cd1SJohannes Berg	depends on ATH9K && DEBUG_FS && MAC80211_DEBUGFS
611077ec47SChristian Lamparter	select ATH9K_COMMON_DEBUG
62a7f7f624SMasahiro Yamada	help
63a830df07SFelix Fietkau	  Say Y, if you need access to ath9k's statistics for
64a830df07SFelix Fietkau	  interrupts, rate control, etc.
65203c4805SLuis R. Rodriguez
669df7ddc3SMatthias Schiffer	  Also required for changing debug message flags at run time and for
679df7ddc3SMatthias Schiffer	  TX99.
68203c4805SLuis R. Rodriguez
691cdbaf0dSSujith Manoharanconfig ATH9K_STATION_STATISTICS
701cdbaf0dSSujith Manoharan	bool "Detailed station statistics"
711cdbaf0dSSujith Manoharan	depends on ATH9K && ATH9K_DEBUGFS && DEBUG_FS
721cdbaf0dSSujith Manoharan	default n
73a7f7f624SMasahiro Yamada	help
741cdbaf0dSSujith Manoharan	  This option enables detailed statistics for association stations.
751cdbaf0dSSujith Manoharan
76e7ae3289SHelmut Schaaconfig ATH9K_TX99
77e7ae3289SHelmut Schaa	bool "Atheros ath9k TX99 testing support"
78e7ae3289SHelmut Schaa	depends on ATH9K_DEBUGFS && CFG80211_CERTIFICATION_ONUS
79e7ae3289SHelmut Schaa	default n
80a7f7f624SMasahiro Yamada	help
81e7ae3289SHelmut Schaa	  Say N. This should only be enabled on systems undergoing
82e7ae3289SHelmut Schaa	  certification testing and evaluation in a controlled environment.
83e7ae3289SHelmut Schaa	  Enabling this will only enable TX99 support, all other modes of
84e7ae3289SHelmut Schaa	  operation will be disabled.
85e7ae3289SHelmut Schaa
86e7ae3289SHelmut Schaa	  TX99 support enables Specific Absorption Rate (SAR) testing.
87e7ae3289SHelmut Schaa	  SAR is the unit of measurement for the amount of radio frequency(RF)
88e7ae3289SHelmut Schaa	  absorbed by the body when using a wireless device. The RF exposure
89e7ae3289SHelmut Schaa	  limits used are expressed in the terms of SAR, which is a measure
90e7ae3289SHelmut Schaa	  of the electric and magnetic field strength and power density for
91e7ae3289SHelmut Schaa	  transmitters operating at frequencies from 300 kHz to 100 GHz.
92e7ae3289SHelmut Schaa	  Regulatory bodies around the world require that wireless device
93e7ae3289SHelmut Schaa	  be evaluated to meet the RF exposure limits set forth in the
94e7ae3289SHelmut Schaa	  governmental SAR regulations.
95e7ae3289SHelmut Schaa
9629942bc1SZefir Kurtisiconfig ATH9K_DFS_CERTIFIED
9729942bc1SZefir Kurtisi	bool "Atheros DFS support for certified platforms"
9800267d59SLuis R. Rodriguez	depends on ATH9K && CFG80211_CERTIFICATION_ONUS
9929942bc1SZefir Kurtisi	default n
100a7f7f624SMasahiro Yamada	help
10129942bc1SZefir Kurtisi	  This option enables DFS support for initiating radiation on
10229942bc1SZefir Kurtisi	  ath9k. There is no way to dynamically detect if a card was DFS
10329942bc1SZefir Kurtisi	  certified and as such this is left as a build time option. This
10429942bc1SZefir Kurtisi	  option should only be enabled by system integrators that can
10529942bc1SZefir Kurtisi	  guarantee that all the platforms that their kernel will run on
10629942bc1SZefir Kurtisi	  have obtained appropriate regulatory body certification for a
10729942bc1SZefir Kurtisi	  respective Atheros card by using ath9k on the target shipping
10829942bc1SZefir Kurtisi	  platforms.
10929942bc1SZefir Kurtisi
11029942bc1SZefir Kurtisi	  This is currently only a placeholder for future DFS support,
11129942bc1SZefir Kurtisi	  as DFS support requires more components that still need to be
11229942bc1SZefir Kurtisi	  developed. At this point enabling this option won't do anything
11329942bc1SZefir Kurtisi	  except increase code size.
11429942bc1SZefir Kurtisi
115ce719152SLorenzo Bianconiconfig ATH9K_DYNACK
11655bb78d2SLorenzo Bianconi	bool "Atheros ath9k ACK timeout estimation algorithm"
117ce719152SLorenzo Bianconi	depends on ATH9K
118ce719152SLorenzo Bianconi	default n
119a7f7f624SMasahiro Yamada	help
120ce719152SLorenzo Bianconi	  This option enables ath9k dynamic ACK timeout estimation algorithm
121ce719152SLorenzo Bianconi	  based on ACK frame RX timestamp, TX frame timestamp and frame
122ce719152SLorenzo Bianconi	  duration
123ce719152SLorenzo Bianconi
124bb00b1f7SSujith Manoharanconfig ATH9K_WOW
125bb00b1f7SSujith Manoharan	bool "Wake on Wireless LAN support (EXPERIMENTAL)"
126bb00b1f7SSujith Manoharan	depends on ATH9K && PM
127bb00b1f7SSujith Manoharan	default n
128a7f7f624SMasahiro Yamada	help
129bb00b1f7SSujith Manoharan	  This option enables Wake on Wireless LAN support for certain cards.
130bb00b1f7SSujith Manoharan	  Currently, AR9462 is supported.
131bb00b1f7SSujith Manoharan
13274e13060SJohannes Bergconfig ATH9K_RFKILL
13374e13060SJohannes Berg	bool "Atheros ath9k rfkill support" if EXPERT
13474e13060SJohannes Berg	depends on ATH9K
13574e13060SJohannes Berg	depends on RFKILL=y || RFKILL=ATH9K
13674e13060SJohannes Berg	default y
13774e13060SJohannes Berg	help
13874e13060SJohannes Berg	  Say Y to have ath9k poll the RF-Kill GPIO every couple of
13974e13060SJohannes Berg	  seconds. Turn off to save power, but enable it if you have
14074e13060SJohannes Berg	  a platform that can toggle the RF-Kill GPIO.
14174e13060SJohannes Berg
1420e721bd0SSujith Manoharanconfig ATH9K_CHANNEL_CONTEXT
1430e721bd0SSujith Manoharan	bool "Channel Context support"
1440e721bd0SSujith Manoharan	depends on ATH9K
1450e721bd0SSujith Manoharan	default n
146a7f7f624SMasahiro Yamada	help
1470e721bd0SSujith Manoharan	  This option enables channel context support in ath9k, which is needed
1480e721bd0SSujith Manoharan	  for multi-channel concurrency. Enable this if P2P PowerSave support
1490e721bd0SSujith Manoharan	  is required.
1500e721bd0SSujith Manoharan
151935477edSFelix Fietkauconfig ATH9K_PCOEM
152935477edSFelix Fietkau	bool "Atheros ath9k support for PC OEM cards" if EXPERT
153935477edSFelix Fietkau	depends on ATH9K
154935477edSFelix Fietkau	default y
155935477edSFelix Fietkau
1565a4f2040SChristian Lamparterconfig ATH9K_PCI_NO_EEPROM
1575a4f2040SChristian Lamparter	tristate "Atheros ath9k pci loader for EEPROM-less chips"
1585a4f2040SChristian Lamparter	depends on ATH9K_PCI
1595a4f2040SChristian Lamparter	default n
1605a4f2040SChristian Lamparter	help
1615a4f2040SChristian Lamparter	  This separate driver provides a loader in order to support the
1625a4f2040SChristian Lamparter	  AR500X to AR92XX-generation of ath9k PCI(e) WiFi chips, which have
1635a4f2040SChristian Lamparter	  their initialization data (which contains the real PCI Device ID
1645a4f2040SChristian Lamparter	  that ath9k will need) stored together with the calibration data out
1655a4f2040SChristian Lamparter	  of reach for the ath9k chip.
1665a4f2040SChristian Lamparter
1675a4f2040SChristian Lamparter	  These devices are usually various network appliances, routers or
1685a4f2040SChristian Lamparter	  access Points and such.
1695a4f2040SChristian Lamparter
1705a4f2040SChristian Lamparter	  If unsure say N.
1715a4f2040SChristian Lamparter
172fb9987d0SSujithconfig ATH9K_HTC
173fb9987d0SSujith	tristate "Atheros HTC based wireless cards support"
174fb9987d0SSujith	depends on USB && MAC80211
175b64acb28SArnd Bergmann	select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
176fb9987d0SSujith	select ATH9K_HW
177fb9987d0SSujith	select ATH9K_COMMON
178a7f7f624SMasahiro Yamada	help
179fb9987d0SSujith	  Support for Atheros HTC based cards.
180fb9987d0SSujith	  Chipsets supported: AR9271
181fb9987d0SSujith
1821141215cSFlavio Suligoi	  For more information:
1831141215cSFlavio Suligoi	  https://wireless.wiki.kernel.org/en/users/Drivers/ath9k_htc
184fb9987d0SSujith
185fb9987d0SSujith	  The built module will be ath9k_htc.
186fb9987d0SSujith
187fb9987d0SSujithconfig ATH9K_HTC_DEBUGFS
188fb9987d0SSujith	bool "Atheros ath9k_htc debugging"
189fb9987d0SSujith	depends on ATH9K_HTC && DEBUG_FS
1901077ec47SChristian Lamparter	select ATH9K_COMMON_DEBUG
191a7f7f624SMasahiro Yamada	help
192fb9987d0SSujith	  Say Y, if you need access to ath9k_htc's statistics.
1931077ec47SChristian Lamparter	  As well as access to the FFT/spectral data.
194ed14dc0aSMiaoqing Pan
195ed14dc0aSMiaoqing Panconfig ATH9K_HWRNG
196ed14dc0aSMiaoqing Pan	bool "Random number generator support"
197ed14dc0aSMiaoqing Pan	depends on ATH9K && (HW_RANDOM = y || HW_RANDOM = ATH9K)
198739ccd76SMiaoqing Pan	default n
199a7f7f624SMasahiro Yamada	help
200ed14dc0aSMiaoqing Pan	  This option incorporates the ADC register output as a source of
201ed14dc0aSMiaoqing Pan	  randomness into Linux entropy pool (/dev/urandom and /dev/random)
202ed14dc0aSMiaoqing Pan
203ed14dc0aSMiaoqing Pan	  Say Y, feeds the entropy directly from the WiFi driver to the input
204ed14dc0aSMiaoqing Pan	  pool.
2059df7ddc3SMatthias Schiffer
2069df7ddc3SMatthias Schifferconfig ATH9K_COMMON_SPECTRAL
2079df7ddc3SMatthias Schiffer	bool "Atheros ath9k/ath9k_htc spectral scan support"
2089df7ddc3SMatthias Schiffer	depends on ATH9K_DEBUGFS || ATH9K_HTC_DEBUGFS
2099df7ddc3SMatthias Schiffer	select RELAY
2109df7ddc3SMatthias Schiffer	default n
211a7f7f624SMasahiro Yamada	help
2129df7ddc3SMatthias Schiffer	  Say Y to enable access to the FFT/spectral data via debugfs.
213