0005-ath10k-add-Candelatech-community-firmware-as-an-additional-choice.patch 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. From: Matthias Schiffer <mschiffer@universe-factory.net>
  2. Date: Tue, 10 Mar 2015 13:17:14 +0100
  3. Subject: ath10k: add Candelatech community firmware as an additional choice
  4. diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
  5. index 2a40bb1..17dbe03 100644
  6. --- a/package/kernel/mac80211/Makefile
  7. +++ b/package/kernel/mac80211/Makefile
  8. @@ -604,6 +604,14 @@ This module adds support for wireless adapters based on
  9. Atheros USB AR9271 and AR7010 family of chipsets.
  10. endef
  11. +ATH10K_CT_COMMUNITY_FW:=firmware-2-ct-full-community-13.bin
  12. +define Download/ath10k-firmware-ct-community
  13. + FILE:=$(ATH10K_CT_COMMUNITY_FW)
  14. + URL:=http://www.candelatech.com/downloads/
  15. + MD5SUM:=a3decc529b0171ae9ec4495089ab354a
  16. +endef
  17. +$(eval $(call Download,ath10k-firmware-ct-community))
  18. +
  19. define KernelPackage/ath10k
  20. $(call KernelPackage/mac80211/Default)
  21. TITLE:=Atheros 802.11ac wireless cards support
  22. @@ -624,13 +632,31 @@ endef
  23. define KernelPackage/ath10k/config
  24. if PACKAGE_kmod-ath10k
  25. + choice
  26. + prompt "ath10k firmware flavour"
  27. + default ATH10K_AP_FW
  28. + help
  29. + This option allows you to choose between different ath10k firmwares.
  30. +
  31. + config ATH10K_AP_FW
  32. + bool "Firmware optimized for AP operation"
  33. + help
  34. + Use the ath10k firmware optimized for access point operation.
  35. + Supports only AP mode, will crash in IBSS (ad-hoc) mode.
  36. +
  37. config ATH10K_STA_FW
  38. bool "Firmware optimized for STA operation"
  39. - default n
  40. help
  41. Use the ath10k firmware optimized for wireless client instead
  42. - of access point operation.
  43. + of access point operation. Might be unstable in AP mode.
  44. +
  45. + config ATH10K_CT_COMMUNITY_FW
  46. + bool "Firmware by Candela Technologies (community version)"
  47. + help
  48. + Supports both AP and IBSS (ad-hoc) mode. Doesn't support
  49. + encryption when using multiple VIFs.
  50. + endchoice
  51. endif
  52. endef
  53. @@ -1858,14 +1884,20 @@ define KernelPackage/ath10k/install
  54. $(INSTALL_DATA) \
  55. $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/ath10k/QCA988X/hw2.0/board.bin \
  56. $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
  57. +ifeq ($(CONFIG_ATH10K_AP_FW),y)
  58. + $(INSTALL_DATA) \
  59. + $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/firmware-4.bin_10.2.4.45 \
  60. + $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-4.bin
  61. +endif
  62. ifeq ($(CONFIG_ATH10K_STA_FW),y)
  63. $(INSTALL_DATA) \
  64. $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/main/firmware-2.bin_999.999.0.636 \
  65. $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
  66. -else
  67. +endif
  68. +ifeq ($(CONFIG_ATH10K_CT_COMMUNITY_FW),y)
  69. $(INSTALL_DATA) \
  70. - $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/firmware-4.bin_10.2.4.45 \
  71. - $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-4.bin
  72. + $(DL_DIR)/$(ATH10K_CT_COMMUNITY_FW) \
  73. + $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
  74. endif
  75. endef