kernel: qca-ssdk: update to 12.4.5.r1
[openwrt/staging/stintel.git] / package / kernel / qca-ssdk / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_NAME:=qca-ssdk
4 PKG_RELEASE:=1
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:=2023-06-06
9 PKG_SOURCE_VERSION:=74caf88aa3b6793c300f676e4fb1c62da7507be9
10 PKG_MIRROR_HASH:=6bdb90919b773f5fb432c8b374c9419feac32ba6583ad82dfec5e41628a32dd9
11
12 PKG_FLAGS:=nonshared
13 PKG_BUILD_FLAGS:=no-lto
14
15 include $(INCLUDE_DIR)/kernel.mk
16 include $(INCLUDE_DIR)/package.mk
17
18 define KernelPackage/qca-ssdk
19 SECTION:=kernel
20 CATEGORY:=Kernel modules
21 SUBMENU:=Network Devices
22 TITLE:=Qualcom SSDK switch driver
23 DEPENDS:=@(TARGET_qualcommax)
24 FILES:=$(PKG_BUILD_DIR)/build/bin/qca-ssdk.ko
25 AUTOLOAD:=$(call AutoLoad,30,qca-ssdk)
26 endef
27
28 define KernelPackage/qca-ssdk/Description
29 Driver for Qualcomm Atheros switches.
30 endef
31
32 GCC_VERSION=$(shell echo "$(CONFIG_GCC_VERSION)" | sed 's/[^0-9.]*\([0-9.]*\).*/\1/')
33
34 ifdef CONFIG_TOOLCHAIN_BIN_PATH
35 TOOLCHAIN_BIN_PATH=$(CONFIG_TOOLCHAIN_BIN_PATH)
36 else
37 TOOLCHAIN_BIN_PATH=$(TOOLCHAIN_DIR)/bin
38 endif
39
40 LNX_CONFIG_OPTS = LNX_MAKEOPTS='$(KERNEL_MAKEOPTS)' MODULE_TYPE=KSLIB modules
41
42 MAKE_FLAGS+= \
43 TARGET_NAME=$(CONFIG_TARGET_NAME) \
44 TOOL_PATH=$(TOOLCHAIN_BIN_PATH) \
45 SYS_PATH=$(LINUX_DIR) \
46 TOOLPREFIX=$(TARGET_CROSS) \
47 KVER=$(LINUX_VERSION) \
48 ARCH=$(LINUX_KARCH) \
49 TARGET_SUFFIX=$(CONFIG_TARGET_SUFFIX) \
50 GCC_VERSION=$(GCC_VERSION) \
51 EXTRA_CFLAGS=-fno-stack-protector -I$(STAGING_DIR)/usr/include \
52 $(LNX_CONFIG_OPTS)
53
54 ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq807x")
55 MAKE_FLAGS+= CHIP_TYPE=HPPE PTP_FEATURE=disable SWCONFIG_FEATURE=disable
56 endif
57
58 define Build/InstallDev
59 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk
60 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/api
61 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/ref
62 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/fal
63 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/sal
64 $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/init
65 $(CP) -rf $(PKG_BUILD_DIR)/include/api/sw_ioctl.h $(1)/usr/include/qca-ssdk/api
66 if [ -f $(PKG_BUILD_DIR)/include/ref/ref_vsi.h ]; then \
67 $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_vsi.h $(1)/usr/include/qca-ssdk/ref/; \
68 fi
69 if [ -f $(PKG_BUILD_DIR)/include/ref/ref_fdb.h ]; then \
70 $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_fdb.h $(1)/usr/include/qca-ssdk/ref/; \
71 fi
72 if [ -f $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h ]; then \
73 $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h $(1)/usr/include/qca-ssdk/ref/; \
74 fi
75 if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_init.h ]; then \
76 $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_init.h $(1)/usr/include/qca-ssdk/init/; \
77 fi
78 if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_netlink.h ]; then \
79 $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_netlink.h $(1)/usr/include/qca-ssdk/init/; \
80 fi
81 $(CP) -rf $(PKG_BUILD_DIR)/include/fal $(1)/usr/include/qca-ssdk
82 $(CP) -rf $(PKG_BUILD_DIR)/include/common/*.h $(1)/usr/include/qca-ssdk
83 $(CP) -rf $(PKG_BUILD_DIR)/include/sal/os/linux/*.h $(1)/usr/include/qca-ssdk
84 $(CP) -rf $(PKG_BUILD_DIR)/include/sal/os/*.h $(1)/usr/include/qca-ssdk
85
86 endef
87
88 $(eval $(call KernelPackage,qca-ssdk))