From 1c52826010ecc4440487fac3215108a55662cf07 Mon Sep 17 00:00:00 2001 From: Ben Greear Date: Wed, 13 Jul 2016 08:16:26 -0700 Subject: [PATCH] add ath10k-ct: Candela-Tech ath10k out-of-tree driver. This lets one use the CT ath10k driver instead of the built-in ath10k driver from the upstream kernel (or backports). This should be a drop-in replacement, as well as enabling better CT firmware support. Signed-off-by: Ben Greear --- package/firmware/ath10k-firmware/Makefile | 2 +- package/kernel/ath10k-ct/Makefile | 80 +++++++++++++++++++++++ 2 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 package/kernel/ath10k-ct/Makefile diff --git a/package/firmware/ath10k-firmware/Makefile b/package/firmware/ath10k-firmware/Makefile index 81a5a658141..170a6c9cf38 100644 --- a/package/firmware/ath10k-firmware/Makefile +++ b/package/firmware/ath10k-firmware/Makefile @@ -28,7 +28,7 @@ define Package/ath10k-firmware-default CATEGORY:=Kernel modules SUBMENU:=$(WMENU) URL:=$(PKG_SOURCE_URL) - DEPENDS:=kmod-ath10k + DEPENDS:= endef define Package/ath10k-firmware-qca988x diff --git a/package/kernel/ath10k-ct/Makefile b/package/kernel/ath10k-ct/Makefile new file mode 100644 index 00000000000..adda03ce3d9 --- /dev/null +++ b/package/kernel/ath10k-ct/Makefile @@ -0,0 +1,80 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=ath10k-ct +PKG_VERSION:=2016-07-09 +PKG_RELEASE=1 + +PKG_LICENSE:=GPLv2 +PKG_LICENSE_FILES:= + +PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=0241aa1d2797ef564bf36fa67888e62289d71e8f +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz + +PKG_MAINTAINER:=Ben Greear +PKG_BUILD_PARALLEL:=1 + +STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h + +include $(INCLUDE_DIR)/kernel.mk +include $(INCLUDE_DIR)/package.mk + +define KernelPackage/ath10k-ct + SUBMENU:=Wireless Drivers + TITLE:=ath10k-ct driver optimized for CT ath10k firmware + DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT @PCI_SUPPORT + FILES:=\ + $(PKG_BUILD_DIR)/ath10k/ath10k_pci.ko \ + $(PKG_BUILD_DIR)/ath10k/ath10k_core.ko + AUTOLOAD:=$(call AutoLoad,50,mac80211 ath ath10k_core ath10k_pci) +endef + +NOSTDINC_FLAGS = \ + -I$(PKG_BUILD_DIR) \ + -I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \ + -I$(STAGING_DIR)/usr/include/mac80211-backport \ + -I$(STAGING_DIR)/usr/include/mac80211/uapi \ + -I$(STAGING_DIR)/usr/include/mac80211 \ + -include backport/autoconf.h \ + -include backport/backport.h + +ifdef CONFIG_PACKAGE_MAC80211_MESH + NOSTDINC_FLAGS += -DCONFIG_MAC80211_MESH +endif + +CT_MAKEDEFS += CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m +# No AHB support enabled yet. Could conditionally enable it later. +#CT_MAKEDEFS += CONFIG_ATH10K_AHB=y +#NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB +NOSTDINC_FLAGS += -DSTANDALONE_CT + +ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS + CT_MAKEDEFS += CONFIG_ATH10K_DEBUGFS=y CONFIG_MAC80211_DEBUGFS=y + NOSTDINC_FLAGS += -DCONFIG_MAC80211_DEBUGFS + NOSTDINC_FLAGS += -DCONFIG_ATH10K_DEBUGFS +endif + +ifdef CONFIG_PACKAGE_ATH_DEBUG + NOSTDINC_FLAGS += -DCONFIG_ATH10K_DEBUG +endif + +define Build/Configure + cp $(STAGING_DIR)/usr/include/mac80211/ath/*.h $(PKG_BUILD_DIR) +endef + +ifneq ($(findstring c,$(OPENWRT_VERBOSE)),) + CT_MAKEDEFS += V=1 +endif + +define Build/Compile + +$(MAKE) $(CT_MAKEDEFS) $(PKG_JOBS) -C "$(LINUX_DIR)" \ + ARCH="$(LINUX_KARCH)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + SUBDIRS="$(PKG_BUILD_DIR)/ath10k" \ + NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \ + modules +endef + +$(eval $(call KernelPackage,ath10k-ct)) -- 2.30.2