mac80211: update to version 6.11
[openwrt/staging/nbd.git] / package / kernel / qca-ssdk / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_NAME:=qca-ssdk
4 PKG_RELEASE:=3
5
6 PKG_SOURCE_URL:=https://git.codelinaro.org/clo/qsdk/oss/lklm/qca-ssdk.git
7 PKG_SOURCE_PROTO:=git
8 PKG_SOURCE_DATE:=2024-06-13
9 PKG_SOURCE_VERSION:=c451136ba69d51d60f770365b6d6d60ff2801998
10 PKG_MIRROR_HASH:=4c54f2d77b5abeb96bddceb4a9eb58aa2c8fb12b58d5d666196224a35ac107dc
11
12 PKG_FLAGS:=nonshared
13 PKG_BUILD_PARALLEL:=1
14 PKG_BUILD_FLAGS:=no-lto
15
16 include $(INCLUDE_DIR)/kernel.mk
17 include $(INCLUDE_DIR)/package.mk
18
19 define KernelPackage/qca-ssdk
20 SECTION:=kernel
21 CATEGORY:=Kernel modules
22 SUBMENU:=Network Devices
23 TITLE:=Qualcom SSDK switch driver
24 DEPENDS:=@(TARGET_qualcommax)
25 FILES:=$(PKG_BUILD_DIR)/qca-ssdk.ko
26 AUTOLOAD:=$(call AutoLoad,30,qca-ssdk)
27 endef
28
29 define KernelPackage/qca-ssdk/Description
30 Driver for Qualcomm Atheros switches.
31 endef
32
33 GCC_VERSION=$(shell echo "$(CONFIG_GCC_VERSION)" | sed 's/[^0-9.]*\([0-9.]*\).*/\1/')
34
35 LNX_CONFIG_OPTS = LNX_MAKEOPTS='$(KERNEL_MAKEOPTS)' PRJ_PATH=$(PKG_BUILD_DIR) MODULE_TYPE=KSLIB modules
36
37 MAKE_FLAGS+= \
38 TARGET_NAME=$(CONFIG_TARGET_NAME) \
39 TOOL_PATH=$(firstword $(TOOLCHAIN_BIN_DIRS)) \
40 SYS_PATH=$(LINUX_DIR) \
41 TOOLPREFIX=$(TARGET_CROSS) \
42 KVER=$(LINUX_VERSION) \
43 ARCH=$(LINUX_KARCH) \
44 TARGET_SUFFIX=$(CONFIG_TARGET_SUFFIX) \
45 GCC_VERSION=$(GCC_VERSION) \
46 EXTRA_CFLAGS="-fno-stack-protector -I$(STAGING_DIR)/usr/include" \
47 SoC=$(CONFIG_TARGET_SUBTARGET) \
48 SHELL="$(BASH)" \
49 PTP_FEATURE=disable SWCONFIG_FEATURE=disable \
50 ISISC_ENABLE=disable MHT_ENABLE=disable \
51 IN_QCA803X_PHY=FALSE IN_QCA808X_PHY=FALSE \
52 IN_MALIBU_PHY=FALSE \
53 $(LNX_CONFIG_OPTS)
54
55 ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq807x")
56 MAKE_FLAGS+= CHIP_TYPE=HPPE
57 endif
58
59 ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq60xx")
60 MAKE_FLAGS+= CHIP_TYPE=CPPE
61 endif
62
63
64 define Build/Compile
65 +$(MAKE) $(PKG_JOBS) $(MAKE_FLAGS) -C $(PKG_BUILD_DIR) $(LNX_CONFIG_OPTS)
66 endef
67
68 define Build/InstallDev
69 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk
70 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/api
71 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/ref
72 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/fal
73 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/sal
74 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/init
75 $(CP) -rf $(PKG_BUILD_DIR)/include/api/sw_ioctl.h $(1)/usr/include/qca-ssdk/api
76 if [ -f $(PKG_BUILD_DIR)/include/ref/ref_vsi.h ]; then \
77 $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_vsi.h $(1)/usr/include/qca-ssdk/ref/; \
78 fi
79 if [ -f $(PKG_BUILD_DIR)/include/ref/ref_fdb.h ]; then \
80 $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_fdb.h $(1)/usr/include/qca-ssdk/ref/; \
81 fi
82 if [ -f $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h ]; then \
83 $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h $(1)/usr/include/qca-ssdk/ref/; \
84 fi
85 if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_init.h ]; then \
86 $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_init.h $(1)/usr/include/qca-ssdk/init/; \
87 fi
88 if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_netlink.h ]; then \
89 $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_netlink.h $(1)/usr/include/qca-ssdk/init/; \
90 fi
91 $(CP) -rf $(PKG_BUILD_DIR)/include/fal $(1)/usr/include/qca-ssdk
92 $(CP) -rf $(PKG_BUILD_DIR)/include/common/*.h $(1)/usr/include/qca-ssdk
93 $(CP) -rf $(PKG_BUILD_DIR)/include/sal/os/linux/*.h $(1)/usr/include/qca-ssdk
94 $(CP) -rf $(PKG_BUILD_DIR)/include/sal/os/*.h $(1)/usr/include/qca-ssdk
95
96 endef
97
98 $(eval $(call KernelPackage,qca-ssdk))