0001 # SPDX-License-Identifier: ISC
0002 config ATH9K_HW
0003 tristate
0004 config ATH9K_COMMON
0005 tristate
0006 select ATH_COMMON
0007 config ATH9K_COMMON_DEBUG
0008 bool
0009 config ATH9K_DFS_DEBUGFS
0010 def_bool y
0011 depends on ATH9K_DEBUGFS && ATH9K_DFS_CERTIFIED
0012
0013 config ATH9K_BTCOEX_SUPPORT
0014 bool "Atheros bluetooth coexistence support"
0015 depends on (ATH9K || ATH9K_HTC)
0016 default y
0017 help
0018 Say Y, if you want to use the ath9k/ath9k_htc radios together with
0019 Bluetooth modules in the same system.
0020
0021 config ATH9K
0022 tristate "Atheros 802.11n wireless cards support"
0023 depends on MAC80211 && HAS_DMA
0024 select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
0025 select ATH9K_HW
0026 select ATH9K_COMMON
0027 help
0028 This module adds support for wireless adapters based on
0029 Atheros IEEE 802.11n AR5008, AR9001 and AR9002 family
0030 of chipsets. For a specific list of supported external
0031 cards, laptops that already ship with these cards and
0032 APs that come with these cards refer to ath9k wiki
0033 products page:
0034
0035 https://wireless.wiki.kernel.org/en/users/Drivers/ath9k/products
0036
0037 If you choose to build a module, it'll be called ath9k.
0038
0039 config ATH9K_PCI
0040 bool "Atheros ath9k PCI/PCIe bus support"
0041 default y
0042 depends on ATH9K && PCI
0043 help
0044 This option enables the PCI bus support in ath9k.
0045
0046 Say Y, if you have a compatible PCI/PCIe wireless card.
0047
0048 config ATH9K_AHB
0049 bool "Atheros ath9k AHB bus support"
0050 depends on ATH9K
0051 default n
0052 help
0053 This option enables the AHB bus support in ath9k.
0054
0055 Say Y, if you have a SoC with a compatible built-in
0056 wireless MAC. Say N if unsure.
0057
0058 config ATH9K_DEBUGFS
0059 bool "Atheros ath9k debugging"
0060 depends on ATH9K && DEBUG_FS
0061 select MAC80211_DEBUGFS
0062 select ATH9K_COMMON_DEBUG
0063 help
0064 Say Y, if you need access to ath9k's statistics for
0065 interrupts, rate control, etc.
0066
0067 Also required for changing debug message flags at run time and for
0068 TX99.
0069
0070 config ATH9K_STATION_STATISTICS
0071 bool "Detailed station statistics"
0072 depends on ATH9K && ATH9K_DEBUGFS && DEBUG_FS
0073 select MAC80211_DEBUGFS
0074 default n
0075 help
0076 This option enables detailed statistics for association stations.
0077
0078 config ATH9K_TX99
0079 bool "Atheros ath9k TX99 testing support"
0080 depends on ATH9K_DEBUGFS && CFG80211_CERTIFICATION_ONUS
0081 default n
0082 help
0083 Say N. This should only be enabled on systems undergoing
0084 certification testing and evaluation in a controlled environment.
0085 Enabling this will only enable TX99 support, all other modes of
0086 operation will be disabled.
0087
0088 TX99 support enables Specific Absorption Rate (SAR) testing.
0089 SAR is the unit of measurement for the amount of radio frequency(RF)
0090 absorbed by the body when using a wireless device. The RF exposure
0091 limits used are expressed in the terms of SAR, which is a measure
0092 of the electric and magnetic field strength and power density for
0093 transmitters operating at frequencies from 300 kHz to 100 GHz.
0094 Regulatory bodies around the world require that wireless device
0095 be evaluated to meet the RF exposure limits set forth in the
0096 governmental SAR regulations.
0097
0098 config ATH9K_DFS_CERTIFIED
0099 bool "Atheros DFS support for certified platforms"
0100 depends on ATH9K && CFG80211_CERTIFICATION_ONUS
0101 default n
0102 help
0103 This option enables DFS support for initiating radiation on
0104 ath9k. There is no way to dynamically detect if a card was DFS
0105 certified and as such this is left as a build time option. This
0106 option should only be enabled by system integrators that can
0107 guarantee that all the platforms that their kernel will run on
0108 have obtained appropriate regulatory body certification for a
0109 respective Atheros card by using ath9k on the target shipping
0110 platforms.
0111
0112 This is currently only a placeholder for future DFS support,
0113 as DFS support requires more components that still need to be
0114 developed. At this point enabling this option won't do anything
0115 except increase code size.
0116
0117 config ATH9K_DYNACK
0118 bool "Atheros ath9k ACK timeout estimation algorithm"
0119 depends on ATH9K
0120 default n
0121 help
0122 This option enables ath9k dynamic ACK timeout estimation algorithm
0123 based on ACK frame RX timestamp, TX frame timestamp and frame
0124 duration
0125
0126 config ATH9K_WOW
0127 bool "Wake on Wireless LAN support (EXPERIMENTAL)"
0128 depends on ATH9K && PM
0129 default n
0130 help
0131 This option enables Wake on Wireless LAN support for certain cards.
0132 Currently, AR9462 is supported.
0133
0134 config ATH9K_RFKILL
0135 bool "Atheros ath9k rfkill support" if EXPERT
0136 depends on ATH9K
0137 depends on RFKILL=y || RFKILL=ATH9K
0138 default y
0139 help
0140 Say Y to have ath9k poll the RF-Kill GPIO every couple of
0141 seconds. Turn off to save power, but enable it if you have
0142 a platform that can toggle the RF-Kill GPIO.
0143
0144 config ATH9K_CHANNEL_CONTEXT
0145 bool "Channel Context support"
0146 depends on ATH9K
0147 default n
0148 help
0149 This option enables channel context support in ath9k, which is needed
0150 for multi-channel concurrency. Enable this if P2P PowerSave support
0151 is required.
0152
0153 config ATH9K_PCOEM
0154 bool "Atheros ath9k support for PC OEM cards" if EXPERT
0155 depends on ATH9K
0156 default y
0157
0158 config ATH9K_PCI_NO_EEPROM
0159 tristate "Atheros ath9k pci loader for EEPROM-less chips"
0160 depends on ATH9K_PCI
0161 default n
0162 help
0163 This separate driver provides a loader in order to support the
0164 AR500X to AR92XX-generation of ath9k PCI(e) WiFi chips, which have
0165 their initialization data (which contains the real PCI Device ID
0166 that ath9k will need) stored together with the calibration data out
0167 of reach for the ath9k chip.
0168
0169 These devices are usually various network appliances, routers or
0170 access Points and such.
0171
0172 If unsure say N.
0173
0174 config ATH9K_HTC
0175 tristate "Atheros HTC based wireless cards support"
0176 depends on USB && MAC80211
0177 select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
0178 select ATH9K_HW
0179 select ATH9K_COMMON
0180 help
0181 Support for Atheros HTC based cards.
0182 Chipsets supported: AR9271
0183
0184 For more information:
0185 https://wireless.wiki.kernel.org/en/users/Drivers/ath9k_htc
0186
0187 The built module will be ath9k_htc.
0188
0189 config ATH9K_HTC_DEBUGFS
0190 bool "Atheros ath9k_htc debugging"
0191 depends on ATH9K_HTC && DEBUG_FS
0192 select ATH9K_COMMON_DEBUG
0193 help
0194 Say Y, if you need access to ath9k_htc's statistics.
0195 As well as access to the FFT/spectral data.
0196
0197 config ATH9K_HWRNG
0198 bool "Random number generator support"
0199 depends on ATH9K && (HW_RANDOM = y || HW_RANDOM = ATH9K)
0200 default n
0201 help
0202 This option incorporates the ADC register output as a source of
0203 randomness into Linux entropy pool (/dev/urandom and /dev/random)
0204
0205 Say Y, feeds the entropy directly from the WiFi driver to the input
0206 pool.
0207
0208 config ATH9K_COMMON_SPECTRAL
0209 bool "Atheros ath9k/ath9k_htc spectral scan support"
0210 depends on ATH9K_DEBUGFS || ATH9K_HTC_DEBUGFS
0211 select RELAY
0212 default n
0213 help
0214 Say Y to enable access to the FFT/spectral data via debugfs.