Makefile 3.0 KB

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