Makefile 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. include $(TOPDIR)/rules.mk
  2. PKG_NAME:=ath10k-ct
  3. PKG_RELEASE=3
  4. PKG_LICENSE:=GPLv2
  5. PKG_LICENSE_FILES:=
  6. PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
  7. PKG_SOURCE_PROTO:=git
  8. PKG_SOURCE_DATE:=2018-05-30
  9. PKG_SOURCE_VERSION:=127f98189ee57260ed175a60d6654a43c32a8f4b
  10. PKG_MIRROR_HASH:=f8856c9d950d3b12ce0d8770e56e861df14878a1b3601592205c5d51edc794ac
  11. # Build the 4.13 ath10k-ct driver version. Other options are "-4.9", or
  12. # leave un-defined for 4.7 kernel. Probably this should match as closely as
  13. # possible to whatever mac80211 backports version is being used.
  14. CT_KVER="-4.13"
  15. PKG_MAINTAINER:=Ben Greear <[email protected]>
  16. PKG_BUILD_PARALLEL:=1
  17. PKG_EXTMOD_SUBDIRS:=ath10k$(CT_KVER)
  18. STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
  19. include $(INCLUDE_DIR)/kernel.mk
  20. include $(INCLUDE_DIR)/package.mk
  21. define KernelPackage/ath10k-ct
  22. SUBMENU:=Wireless Drivers
  23. TITLE:=ath10k-ct driver optimized for CT ath10k firmware
  24. DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +@DRIVER_11W_SUPPORT @PCI_SUPPORT +kmod-hwmon-core
  25. FILES:=\
  26. $(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_pci.ko \
  27. $(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_core.ko
  28. AUTOLOAD:=$(call AutoProbe,ath10k_pci)
  29. PROVIDES:=kmod-ath10k
  30. endef
  31. NOSTDINC_FLAGS = \
  32. -I$(PKG_BUILD_DIR) \
  33. -I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \
  34. -I$(STAGING_DIR)/usr/include/mac80211-backport \
  35. -I$(STAGING_DIR)/usr/include/mac80211/uapi \
  36. -I$(STAGING_DIR)/usr/include/mac80211 \
  37. -include backport/autoconf.h \
  38. -include backport/backport.h
  39. ifdef CONFIG_PACKAGE_MAC80211_MESH
  40. NOSTDINC_FLAGS += -DCONFIG_MAC80211_MESH
  41. endif
  42. CT_MAKEDEFS += CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m
  43. # This AHB logic is needed for IPQ4019 radios
  44. CT_MAKEDEFS += CONFIG_ATH10K_AHB=m
  45. NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
  46. NOSTDINC_FLAGS += -DSTANDALONE_CT
  47. ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
  48. CT_MAKEDEFS += CONFIG_ATH10K_DEBUGFS=y CONFIG_MAC80211_DEBUGFS=y
  49. NOSTDINC_FLAGS += -DCONFIG_MAC80211_DEBUGFS
  50. NOSTDINC_FLAGS += -DCONFIG_ATH10K_DEBUGFS
  51. endif
  52. ifdef CONFIG_PACKAGE_ATH_DEBUG
  53. NOSTDINC_FLAGS += -DCONFIG_ATH10K_DEBUG
  54. endif
  55. ifdef CONFIG_PACKAGE_ATH_DFS
  56. NOSTDINC_FLAGS += -DCONFIG_ATH10K_DFS_CERTIFIED
  57. endif
  58. ifdef CONFIG_PACKAGE_ATH_SPECTRAL
  59. CT_MAKEDEFS += CONFIG_ATH10K_SPECTRAL=y
  60. NOSTDINC_FLAGS += -DCONFIG_ATH10K_SPECTRAL
  61. endif
  62. define Build/Configure
  63. cp $(STAGING_DIR)/usr/include/mac80211/ath/*.h $(PKG_BUILD_DIR)
  64. endef
  65. ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
  66. CT_MAKEDEFS += V=1
  67. endif
  68. define Build/Compile
  69. +$(MAKE) $(CT_MAKEDEFS) $(PKG_JOBS) -C "$(LINUX_DIR)" \
  70. $(KERNEL_MAKE_FLAGS) \
  71. SUBDIRS="$(PKG_BUILD_DIR)/ath10k$(CT_KVER)" \
  72. NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \
  73. modules
  74. endef
  75. $(eval $(call KernelPackage,ath10k-ct))