ath.mk 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311
  1. PKG_DRIVERS += \
  2. ath ath5k ath6kl ath6kl-sdio ath6kl-usb ath9k ath9k-common ath9k-htc ath10k \
  3. carl9170 owl-loader ar5523
  4. PKG_CONFIG_DEPENDS += \
  5. CONFIG_PACKAGE_ATH_DEBUG \
  6. CONFIG_PACKAGE_ATH_DFS \
  7. CONFIG_PACKAGE_ATH_SPECTRAL \
  8. CONFIG_PACKAGE_ATH_DYNACK \
  9. CONFIG_ATH9K_HWRNG \
  10. CONFIG_ATH9K_SUPPORT_PCOEM \
  11. CONFIG_ATH9K_TX99 \
  12. CONFIG_ATH10K_LEDS \
  13. CONFIG_ATH10K_THERMAL \
  14. CONFIG_ATH_USER_REGD
  15. ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
  16. config-y += \
  17. ATH9K_DEBUGFS \
  18. ATH9K_HTC_DEBUGFS \
  19. ATH10K_DEBUGFS \
  20. CARL9170_DEBUGFS \
  21. ATH5K_DEBUG \
  22. ATH6KL_DEBUG
  23. endif
  24. ifdef CONFIG_PACKAGE_MAC80211_TRACING
  25. config-y += \
  26. ATH10K_TRACING \
  27. ATH6KL_TRACING \
  28. ATH_TRACEPOINTS \
  29. ATH5K_TRACER
  30. endif
  31. config-$(call config_package,ath) += ATH_CARDS ATH_COMMON ATH_REG_DYNAMIC_USER_REG_HINTS
  32. config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG ATH9K_STATION_STATISTICS
  33. config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
  34. config-$(CONFIG_PACKAGE_ATH_SPECTRAL) += ATH9K_COMMON_SPECTRAL ATH10K_SPECTRAL
  35. config-$(CONFIG_PACKAGE_ATH_DYNACK) += ATH9K_DYNACK
  36. config-$(call config_package,ath9k) += ATH9K
  37. config-$(call config_package,ath9k-common) += ATH9K_COMMON
  38. config-$(call config_package,owl-loader) += ATH9K_PCI_NO_EEPROM
  39. config-$(CONFIG_TARGET_ath79) += ATH9K_AHB
  40. config-$(CONFIG_TARGET_ipq40xx) += ATH10K_AHB
  41. config-$(CONFIG_PCI) += ATH9K_PCI
  42. config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
  43. config-$(CONFIG_ATH9K_HWRNG) += ATH9K_HWRNG
  44. config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
  45. config-$(CONFIG_ATH9K_TX99) += ATH9K_TX99
  46. config-$(CONFIG_ATH9K_UBNTHSR) += ATH9K_UBNTHSR
  47. config-$(CONFIG_ATH10K_LEDS) += ATH10K_LEDS
  48. config-$(CONFIG_ATH10K_THERMAL) += ATH10K_THERMAL
  49. config-$(call config_package,ath9k-htc) += ATH9K_HTC
  50. config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
  51. config-$(call config_package,ath5k) += ATH5K
  52. ifdef CONFIG_TARGET_ath25
  53. config-y += ATH5K_AHB
  54. else
  55. config-y += ATH5K_PCI
  56. endif
  57. config-$(call config_package,ath6kl) += ATH6KL
  58. config-$(call config_package,ath6kl-sdio) += ATH6KL_SDIO
  59. config-$(call config_package,ath6kl-usb) += ATH6KL_USB
  60. config-$(call config_package,carl9170) += CARL9170
  61. config-$(call config_package,ar5523) += AR5523
  62. define KernelPackage/ath/config
  63. if PACKAGE_kmod-ath
  64. config ATH_USER_REGD
  65. bool "Force Atheros drivers to respect the user's regdomain settings"
  66. default y
  67. help
  68. Atheros' idea of regulatory handling is that the EEPROM of the card defines
  69. the regulatory limits and the user is only allowed to restrict the settings
  70. even further, even if the country allows frequencies or power levels that
  71. are forbidden by the EEPROM settings.
  72. Select this option if you want the driver to respect the user's decision about
  73. regulatory settings.
  74. config PACKAGE_ATH_DEBUG
  75. bool "Atheros wireless debugging"
  76. help
  77. Say Y, if you want to debug atheros wireless drivers.
  78. Only ath9k & ath10k make use of this.
  79. config PACKAGE_ATH_DFS
  80. bool "Enable DFS support"
  81. default y
  82. help
  83. Dynamic frequency selection (DFS) is required for most of the 5 GHz band
  84. channels in Europe, US, and Japan.
  85. Select this option if you want to use such channels.
  86. config PACKAGE_ATH_SPECTRAL
  87. bool "Atheros spectral scan support"
  88. depends on PACKAGE_ATH_DEBUG
  89. select KERNEL_RELAY
  90. help
  91. Say Y to enable access to the FFT/spectral data via debugfs.
  92. config PACKAGE_ATH_DYNACK
  93. bool "Enable Dynack support"
  94. depends on PACKAGE_kmod-ath9k-common
  95. help
  96. Enables support for Dynamic ACK estimation, which allows the fastest possible speed
  97. at any distance automatically by increasing/decreasing the max frame ACK time for
  98. the most remote station detected. It can be enabled by using iw (iw phy0 set distance auto),
  99. or by sending the NL80211_ATTR_WIPHY_DYN_ACK flag to mac80211 driver using netlink.
  100. Select this option if you want to enable this feature
  101. endif
  102. endef
  103. define KernelPackage/ath
  104. $(call KernelPackage/mac80211/Default)
  105. TITLE:=Atheros common driver part
  106. DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ath79||TARGET_ath25 +kmod-mac80211
  107. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.ko
  108. MENU:=1
  109. endef
  110. define KernelPackage/ath/description
  111. This module contains some common parts needed by Atheros Wireless drivers.
  112. endef
  113. define KernelPackage/ath5k
  114. $(call KernelPackage/mac80211/Default)
  115. TITLE:=Atheros 5xxx wireless cards support
  116. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath5k
  117. DEPENDS+= @(PCI_SUPPORT||TARGET_ath25) +kmod-ath +@DRIVER_11W_SUPPORT
  118. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.ko
  119. AUTOLOAD:=$(call AutoProbe,ath5k)
  120. endef
  121. define KernelPackage/ath5k/description
  122. This module adds support for wireless adapters based on
  123. Atheros 5xxx chipset.
  124. endef
  125. define KernelPackage/ath6kl
  126. $(call KernelPackage/mac80211/Default)
  127. TITLE:=Atheros FullMAC wireless devices (common code for ath6kl_sdio and ath6kl_usb)
  128. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
  129. HIDDEN:=1
  130. DEPENDS+= +kmod-ath +@DRIVER_11N_SUPPORT
  131. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_core.ko
  132. endef
  133. define KernelPackage/ath6kl-sdio
  134. $(call KernelPackage/mac80211/Default)
  135. TITLE:=Atheros 802.11n SDIO wireless cards support
  136. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
  137. DEPENDS+= +kmod-mmc +kmod-ath6kl
  138. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_sdio.ko
  139. AUTOLOAD:=$(call AutoProbe,ath6kl_sdio)
  140. endef
  141. define KernelPackage/ath6kl-sdio/description
  142. This module adds support for wireless adapters based on
  143. Atheros IEEE 802.11n AR6003 and AR6004 family of chipsets.
  144. endef
  145. define KernelPackage/ath6kl-usb
  146. $(call KernelPackage/mac80211/Default)
  147. TITLE:=Atheros 802.11n USB wireless cards support
  148. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
  149. DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-ath6kl
  150. FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_usb.ko
  151. AUTOLOAD:=$(call AutoProbe,ath6kl_usb)
  152. endef
  153. define KernelPackage/ath6kl-usb/description
  154. This module adds support for wireless adapters based on the
  155. Atheros IEEE 802.11n AR6004 chipset.
  156. endef
  157. define KernelPackage/ath9k-common
  158. $(call KernelPackage/mac80211/Default)
  159. TITLE:=Atheros 802.11n wireless devices (common code for ath9k and ath9k_htc)
  160. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
  161. HIDDEN:=1
  162. DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ath79 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11W_SUPPORT
  163. FILES:= \
  164. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.ko \
  165. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
  166. endef
  167. define KernelPackage/ath9k
  168. $(call KernelPackage/mac80211/Default)
  169. TITLE:=Atheros 802.11n PCI wireless cards support
  170. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
  171. DEPENDS+= @PCI_SUPPORT||TARGET_ath79 +kmod-ath9k-common
  172. FILES:= \
  173. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.ko
  174. AUTOLOAD:=$(call AutoProbe,ath9k)
  175. endef
  176. define KernelPackage/ath9k/description
  177. This module adds support for wireless adapters based on
  178. Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
  179. endef
  180. define KernelPackage/ath9k/config
  181. config ATH9K_HWRNG
  182. bool "Add wireless noise as source of randomness to kernel entropy pool"
  183. depends on PACKAGE_kmod-ath9k
  184. select PACKAGE_kmod-random-core
  185. default n
  186. config ATH9K_SUPPORT_PCOEM
  187. bool "Support chips used in PC OEM cards"
  188. depends on PACKAGE_kmod-ath9k
  189. default y if (x86_64 || i386)
  190. config ATH9K_TX99
  191. bool "Enable TX99 support (WARNING: testing only, breaks normal operation!)"
  192. depends on PACKAGE_kmod-ath9k
  193. config ATH9K_UBNTHSR
  194. bool "Support for Ubiquiti UniFi Outdoor+ access point"
  195. depends on PACKAGE_kmod-ath9k && TARGET_ath79
  196. default y
  197. endef
  198. define KernelPackage/ath9k-htc
  199. $(call KernelPackage/mac80211/Default)
  200. TITLE:=Atheros 802.11n USB device support
  201. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
  202. DEPENDS+= @USB_SUPPORT +kmod-ath9k-common +kmod-usb-core +ath9k-htc-firmware
  203. FILES:= \
  204. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
  205. AUTOLOAD:=$(call AutoProbe,ath9k_htc)
  206. endef
  207. define KernelPackage/ath9k-htc/description
  208. This module adds support for wireless adapters based on
  209. Atheros USB AR9271 and AR7010 family of chipsets.
  210. endef
  211. define KernelPackage/ath10k
  212. $(call KernelPackage/mac80211/Default)
  213. TITLE:=Atheros 802.11ac wireless cards support
  214. URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath10k
  215. DEPENDS+= @PCI_SUPPORT +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +@DRIVER_11W_SUPPORT \
  216. +ATH10K_THERMAL:kmod-hwmon-core +ATH10K_THERMAL:kmod-thermal
  217. FILES:= \
  218. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_core.ko \
  219. $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
  220. AUTOLOAD:=$(call AutoProbe,ath10k_pci)
  221. endef
  222. define KernelPackage/ath10k/description
  223. This module adds support for wireless adapters based on
  224. Atheros IEEE 802.11ac family of chipsets. For now only
  225. PCI is supported.
  226. endef
  227. define KernelPackage/ath10k/config
  228. config ATH10K_LEDS
  229. bool "Enable LED support"
  230. default y
  231. depends on PACKAGE_kmod-ath10k
  232. config ATH10K_THERMAL
  233. bool "Enable thermal sensors and throttling support"
  234. depends on PACKAGE_kmod-ath10k
  235. endef
  236. define KernelPackage/carl9170
  237. $(call KernelPackage/mac80211/Default)
  238. TITLE:=Driver for Atheros AR9170 USB sticks
  239. DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +@DRIVER_11N_SUPPORT +@DRIVER_11W_SUPPORT +carl9170-firmware
  240. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
  241. AUTOLOAD:=$(call AutoProbe,carl9170)
  242. endef
  243. define KernelPackage/owl-loader
  244. $(call KernelPackage/mac80211/Default)
  245. TITLE:=Owl loader for initializing Atheros PCI(e) Wifi chips
  246. DEPENDS:=@PCI_SUPPORT +kmod-ath9k
  247. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.ko
  248. AUTOLOAD:=$(call AutoProbe,ath9k_pci_owl_loader)
  249. endef
  250. define KernelPackage/owl-loader/description
  251. Kernel module that helps to initialize certain Qualcomm
  252. Atheros' PCI(e) Wifi chips, which have the init data
  253. (which contains the PCI device ID for example) stored
  254. together with the calibration data in the file system.
  255. This is necessary for devices like the Cisco Meraki Z1.
  256. endef
  257. define KernelPackage/ar5523
  258. $(call KernelPackage/mac80211/Default)
  259. TITLE:=Driver for Atheros AR5523 USB sticks
  260. DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core
  261. FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ar5523/ar5523.ko
  262. AUTOLOAD:=$(call AutoProbe,ar5523)
  263. endef