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