Makefile 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. include $(TOPDIR)/rules.mk
  2. PKG_NAME:=ath10k-ct
  3. PKG_RELEASE=1
  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:=2019-03-25
  9. PKG_SOURCE_VERSION:=2e917efb607fdc807a8ec6e9ad8de176fc51d329
  10. PKG_MIRROR_HASH:=290eeaaea84ab8112e06b66bb1edd78ae717ad4e04417893b936e4e6de8d5bf0
  11. # Build the 4.19 ath10k-ct driver version. Other options are "-4.16", 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.19"
  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. define KernelPackage/ath10k-ct/config
  32. config ATH10K-CT_LEDS
  33. bool "Enable LED support"
  34. default y
  35. depends on PACKAGE_kmod-ath10k-ct
  36. endef
  37. NOSTDINC_FLAGS = \
  38. -I$(PKG_BUILD_DIR) \
  39. -I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \
  40. -I$(STAGING_DIR)/usr/include/mac80211-backport \
  41. -I$(STAGING_DIR)/usr/include/mac80211/uapi \
  42. -I$(STAGING_DIR)/usr/include/mac80211 \
  43. -include backport/autoconf.h \
  44. -include backport/backport.h
  45. ifdef CONFIG_PACKAGE_MAC80211_MESH
  46. NOSTDINC_FLAGS += -DCONFIG_MAC80211_MESH
  47. endif
  48. CT_MAKEDEFS += CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_CE=y
  49. # This AHB logic is needed for IPQ4019 radios
  50. CT_MAKEDEFS += CONFIG_ATH10K_AHB=m
  51. NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
  52. NOSTDINC_FLAGS += -DSTANDALONE_CT
  53. ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
  54. CT_MAKEDEFS += CONFIG_ATH10K_DEBUGFS=y CONFIG_MAC80211_DEBUGFS=y
  55. NOSTDINC_FLAGS += -DCONFIG_MAC80211_DEBUGFS
  56. NOSTDINC_FLAGS += -DCONFIG_ATH10K_DEBUGFS
  57. endif
  58. ifdef CONFIG_PACKAGE_ATH_DEBUG
  59. NOSTDINC_FLAGS += -DCONFIG_ATH10K_DEBUG
  60. endif
  61. ifdef CONFIG_PACKAGE_ATH_DFS
  62. NOSTDINC_FLAGS += -DCONFIG_ATH10K_DFS_CERTIFIED
  63. endif
  64. ifdef CONFIG_PACKAGE_ATH_SPECTRAL
  65. CT_MAKEDEFS += CONFIG_ATH10K_SPECTRAL=y
  66. NOSTDINC_FLAGS += -DCONFIG_ATH10K_SPECTRAL
  67. endif
  68. ifeq ($(CONFIG_ATH10K-CT_LEDS),y)
  69. CT_MAKEDEFS += CONFIG_ATH10K_LEDS=y
  70. NOSTDINC_FLAGS += -DCONFIG_ATH10K_LEDS
  71. endif
  72. define Build/Configure
  73. cp $(STAGING_DIR)/usr/include/mac80211/ath/*.h $(PKG_BUILD_DIR)
  74. endef
  75. ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
  76. CT_MAKEDEFS += V=1
  77. endif
  78. define Build/Compile
  79. +$(MAKE) $(CT_MAKEDEFS) $(PKG_JOBS) -C "$(LINUX_DIR)" \
  80. $(KERNEL_MAKE_FLAGS) \
  81. SUBDIRS="$(PKG_BUILD_DIR)/ath10k$(CT_KVER)" \
  82. NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \
  83. modules
  84. endef
  85. $(eval $(call KernelPackage,ath10k-ct))