162306a36Sopenharmony_ci# SPDX-License-Identifier: ISC 262306a36Sopenharmony_ciconfig ATH9K_HW 362306a36Sopenharmony_ci tristate 462306a36Sopenharmony_ciconfig ATH9K_COMMON 562306a36Sopenharmony_ci tristate 662306a36Sopenharmony_ci select ATH_COMMON 762306a36Sopenharmony_ciconfig ATH9K_COMMON_DEBUG 862306a36Sopenharmony_ci bool 962306a36Sopenharmony_ciconfig ATH9K_DFS_DEBUGFS 1062306a36Sopenharmony_ci def_bool y 1162306a36Sopenharmony_ci depends on ATH9K_DEBUGFS && ATH9K_DFS_CERTIFIED 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ciconfig ATH9K_BTCOEX_SUPPORT 1462306a36Sopenharmony_ci bool "Atheros bluetooth coexistence support" 1562306a36Sopenharmony_ci depends on (ATH9K || ATH9K_HTC) 1662306a36Sopenharmony_ci default y 1762306a36Sopenharmony_ci help 1862306a36Sopenharmony_ci Say Y, if you want to use the ath9k/ath9k_htc radios together with 1962306a36Sopenharmony_ci Bluetooth modules in the same system. 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciconfig ATH9K 2262306a36Sopenharmony_ci tristate "Atheros 802.11n wireless cards support" 2362306a36Sopenharmony_ci depends on MAC80211 && HAS_DMA 2462306a36Sopenharmony_ci select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211 2562306a36Sopenharmony_ci select ATH9K_HW 2662306a36Sopenharmony_ci select ATH9K_COMMON 2762306a36Sopenharmony_ci help 2862306a36Sopenharmony_ci This module adds support for wireless adapters based on 2962306a36Sopenharmony_ci Atheros IEEE 802.11n AR5008, AR9001 and AR9002 family 3062306a36Sopenharmony_ci of chipsets. For a specific list of supported external 3162306a36Sopenharmony_ci cards, laptops that already ship with these cards and 3262306a36Sopenharmony_ci APs that come with these cards refer to ath9k wiki 3362306a36Sopenharmony_ci products page: 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci https://wireless.wiki.kernel.org/en/users/Drivers/ath9k/products 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci If you choose to build a module, it'll be called ath9k. 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ciconfig ATH9K_PCI 4062306a36Sopenharmony_ci bool "Atheros ath9k PCI/PCIe bus support" 4162306a36Sopenharmony_ci default y 4262306a36Sopenharmony_ci depends on ATH9K && PCI 4362306a36Sopenharmony_ci help 4462306a36Sopenharmony_ci This option enables the PCI bus support in ath9k. 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci Say Y, if you have a compatible PCI/PCIe wireless card. 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ciconfig ATH9K_AHB 4962306a36Sopenharmony_ci bool "Atheros ath9k AHB bus support" 5062306a36Sopenharmony_ci depends on ATH9K 5162306a36Sopenharmony_ci default n 5262306a36Sopenharmony_ci help 5362306a36Sopenharmony_ci This option enables the AHB bus support in ath9k. 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci Say Y, if you have a SoC with a compatible built-in 5662306a36Sopenharmony_ci wireless MAC. Say N if unsure. 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ciconfig ATH9K_DEBUGFS 5962306a36Sopenharmony_ci bool "Atheros ath9k debugging" 6062306a36Sopenharmony_ci depends on ATH9K && DEBUG_FS 6162306a36Sopenharmony_ci select MAC80211_DEBUGFS 6262306a36Sopenharmony_ci select ATH9K_COMMON_DEBUG 6362306a36Sopenharmony_ci help 6462306a36Sopenharmony_ci Say Y, if you need access to ath9k's statistics for 6562306a36Sopenharmony_ci interrupts, rate control, etc. 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci Also required for changing debug message flags at run time and for 6862306a36Sopenharmony_ci TX99. 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ciconfig ATH9K_STATION_STATISTICS 7162306a36Sopenharmony_ci bool "Detailed station statistics" 7262306a36Sopenharmony_ci depends on ATH9K && ATH9K_DEBUGFS && DEBUG_FS 7362306a36Sopenharmony_ci select MAC80211_DEBUGFS 7462306a36Sopenharmony_ci default n 7562306a36Sopenharmony_ci help 7662306a36Sopenharmony_ci This option enables detailed statistics for association stations. 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ciconfig ATH9K_TX99 7962306a36Sopenharmony_ci bool "Atheros ath9k TX99 testing support" 8062306a36Sopenharmony_ci depends on ATH9K_DEBUGFS && CFG80211_CERTIFICATION_ONUS 8162306a36Sopenharmony_ci default n 8262306a36Sopenharmony_ci help 8362306a36Sopenharmony_ci Say N. This should only be enabled on systems undergoing 8462306a36Sopenharmony_ci certification testing and evaluation in a controlled environment. 8562306a36Sopenharmony_ci Enabling this will only enable TX99 support, all other modes of 8662306a36Sopenharmony_ci operation will be disabled. 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci TX99 support enables Specific Absorption Rate (SAR) testing. 8962306a36Sopenharmony_ci SAR is the unit of measurement for the amount of radio frequency(RF) 9062306a36Sopenharmony_ci absorbed by the body when using a wireless device. The RF exposure 9162306a36Sopenharmony_ci limits used are expressed in the terms of SAR, which is a measure 9262306a36Sopenharmony_ci of the electric and magnetic field strength and power density for 9362306a36Sopenharmony_ci transmitters operating at frequencies from 300 kHz to 100 GHz. 9462306a36Sopenharmony_ci Regulatory bodies around the world require that wireless device 9562306a36Sopenharmony_ci be evaluated to meet the RF exposure limits set forth in the 9662306a36Sopenharmony_ci governmental SAR regulations. 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ciconfig ATH9K_DFS_CERTIFIED 9962306a36Sopenharmony_ci bool "Atheros DFS support for certified platforms" 10062306a36Sopenharmony_ci depends on ATH9K && CFG80211_CERTIFICATION_ONUS 10162306a36Sopenharmony_ci default n 10262306a36Sopenharmony_ci help 10362306a36Sopenharmony_ci This option enables DFS support for initiating radiation on 10462306a36Sopenharmony_ci ath9k. There is no way to dynamically detect if a card was DFS 10562306a36Sopenharmony_ci certified and as such this is left as a build time option. This 10662306a36Sopenharmony_ci option should only be enabled by system integrators that can 10762306a36Sopenharmony_ci guarantee that all the platforms that their kernel will run on 10862306a36Sopenharmony_ci have obtained appropriate regulatory body certification for a 10962306a36Sopenharmony_ci respective Atheros card by using ath9k on the target shipping 11062306a36Sopenharmony_ci platforms. 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci This is currently only a placeholder for future DFS support, 11362306a36Sopenharmony_ci as DFS support requires more components that still need to be 11462306a36Sopenharmony_ci developed. At this point enabling this option won't do anything 11562306a36Sopenharmony_ci except increase code size. 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ciconfig ATH9K_DYNACK 11862306a36Sopenharmony_ci bool "Atheros ath9k ACK timeout estimation algorithm" 11962306a36Sopenharmony_ci depends on ATH9K 12062306a36Sopenharmony_ci default n 12162306a36Sopenharmony_ci help 12262306a36Sopenharmony_ci This option enables ath9k dynamic ACK timeout estimation algorithm 12362306a36Sopenharmony_ci based on ACK frame RX timestamp, TX frame timestamp and frame 12462306a36Sopenharmony_ci duration 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ciconfig ATH9K_WOW 12762306a36Sopenharmony_ci bool "Wake on Wireless LAN support (EXPERIMENTAL)" 12862306a36Sopenharmony_ci depends on ATH9K && PM 12962306a36Sopenharmony_ci default n 13062306a36Sopenharmony_ci help 13162306a36Sopenharmony_ci This option enables Wake on Wireless LAN support for certain cards. 13262306a36Sopenharmony_ci Currently, AR9462 is supported. 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ciconfig ATH9K_RFKILL 13562306a36Sopenharmony_ci bool "Atheros ath9k rfkill support" if EXPERT 13662306a36Sopenharmony_ci depends on ATH9K 13762306a36Sopenharmony_ci depends on RFKILL=y || RFKILL=ATH9K 13862306a36Sopenharmony_ci default y 13962306a36Sopenharmony_ci help 14062306a36Sopenharmony_ci Say Y to have ath9k poll the RF-Kill GPIO every couple of 14162306a36Sopenharmony_ci seconds. Turn off to save power, but enable it if you have 14262306a36Sopenharmony_ci a platform that can toggle the RF-Kill GPIO. 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ciconfig ATH9K_CHANNEL_CONTEXT 14562306a36Sopenharmony_ci bool "Channel Context support" 14662306a36Sopenharmony_ci depends on ATH9K 14762306a36Sopenharmony_ci default n 14862306a36Sopenharmony_ci help 14962306a36Sopenharmony_ci This option enables channel context support in ath9k, which is needed 15062306a36Sopenharmony_ci for multi-channel concurrency. Enable this if P2P PowerSave support 15162306a36Sopenharmony_ci is required. 15262306a36Sopenharmony_ci 15362306a36Sopenharmony_ciconfig ATH9K_PCOEM 15462306a36Sopenharmony_ci bool "Atheros ath9k support for PC OEM cards" if EXPERT 15562306a36Sopenharmony_ci depends on ATH9K 15662306a36Sopenharmony_ci default y 15762306a36Sopenharmony_ci 15862306a36Sopenharmony_ciconfig ATH9K_PCI_NO_EEPROM 15962306a36Sopenharmony_ci tristate "Atheros ath9k pci loader for EEPROM-less chips" 16062306a36Sopenharmony_ci depends on ATH9K_PCI 16162306a36Sopenharmony_ci default n 16262306a36Sopenharmony_ci help 16362306a36Sopenharmony_ci This separate driver provides a loader in order to support the 16462306a36Sopenharmony_ci AR500X to AR92XX-generation of ath9k PCI(e) WiFi chips, which have 16562306a36Sopenharmony_ci their initialization data (which contains the real PCI Device ID 16662306a36Sopenharmony_ci that ath9k will need) stored together with the calibration data out 16762306a36Sopenharmony_ci of reach for the ath9k chip. 16862306a36Sopenharmony_ci 16962306a36Sopenharmony_ci These devices are usually various network appliances, routers or 17062306a36Sopenharmony_ci access Points and such. 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_ci If unsure say N. 17362306a36Sopenharmony_ci 17462306a36Sopenharmony_ciconfig ATH9K_HTC 17562306a36Sopenharmony_ci tristate "Atheros HTC based wireless cards support" 17662306a36Sopenharmony_ci depends on USB && MAC80211 17762306a36Sopenharmony_ci select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211 17862306a36Sopenharmony_ci select ATH9K_HW 17962306a36Sopenharmony_ci select ATH9K_COMMON 18062306a36Sopenharmony_ci help 18162306a36Sopenharmony_ci Support for Atheros HTC based cards. 18262306a36Sopenharmony_ci Chipsets supported: AR9271 18362306a36Sopenharmony_ci 18462306a36Sopenharmony_ci For more information: 18562306a36Sopenharmony_ci https://wireless.wiki.kernel.org/en/users/Drivers/ath9k_htc 18662306a36Sopenharmony_ci 18762306a36Sopenharmony_ci The built module will be ath9k_htc. 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_ciconfig ATH9K_HTC_DEBUGFS 19062306a36Sopenharmony_ci bool "Atheros ath9k_htc debugging" 19162306a36Sopenharmony_ci depends on ATH9K_HTC && DEBUG_FS 19262306a36Sopenharmony_ci select ATH9K_COMMON_DEBUG 19362306a36Sopenharmony_ci help 19462306a36Sopenharmony_ci Say Y, if you need access to ath9k_htc's statistics. 19562306a36Sopenharmony_ci As well as access to the FFT/spectral data. 19662306a36Sopenharmony_ci 19762306a36Sopenharmony_ciconfig ATH9K_HWRNG 19862306a36Sopenharmony_ci bool "Random number generator support" 19962306a36Sopenharmony_ci depends on ATH9K && (HW_RANDOM = y || HW_RANDOM = ATH9K) 20062306a36Sopenharmony_ci default n 20162306a36Sopenharmony_ci help 20262306a36Sopenharmony_ci This option incorporates the ADC register output as a source of 20362306a36Sopenharmony_ci randomness into Linux entropy pool (/dev/urandom and /dev/random) 20462306a36Sopenharmony_ci 20562306a36Sopenharmony_ci Say Y, feeds the entropy directly from the WiFi driver to the input 20662306a36Sopenharmony_ci pool. 20762306a36Sopenharmony_ci 20862306a36Sopenharmony_ciconfig ATH9K_COMMON_SPECTRAL 20962306a36Sopenharmony_ci bool "Atheros ath9k/ath9k_htc spectral scan support" 21062306a36Sopenharmony_ci depends on ATH9K_DEBUGFS || ATH9K_HTC_DEBUGFS 21162306a36Sopenharmony_ci select RELAY 21262306a36Sopenharmony_ci default n 21362306a36Sopenharmony_ci help 21462306a36Sopenharmony_ci Say Y to enable access to the FFT/spectral data via debugfs. 215