Makefile 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. include $(TOPDIR)/rules.mk
  2. PKG_NAME:=qca-ssdk
  3. PKG_RELEASE:=6
  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-10-04
  7. PKG_SOURCE_VERSION:=23a5aa4a4d5834da7a07efb58baebfbee91786b0
  8. PKG_MIRROR_HASH:=53fb201053b3aca004c4da07b06a0608b0b3322a2062b1f7ab3b3a7871ddabcb
  9. PKG_FLAGS:=nonshared
  10. PKG_BUILD_PARALLEL:=1
  11. PKG_BUILD_FLAGS:=no-lto
  12. include $(INCLUDE_DIR)/kernel.mk
  13. include $(INCLUDE_DIR)/package.mk
  14. define KernelPackage/qca-ssdk
  15. SECTION:=kernel
  16. CATEGORY:=Kernel modules
  17. SUBMENU:=Network Devices
  18. TITLE:=Qualcom SSDK switch driver
  19. DEPENDS:=@(TARGET_qualcommax)
  20. FILES:=$(PKG_BUILD_DIR)/qca-ssdk.ko
  21. AUTOLOAD:=$(call AutoLoad,30,qca-ssdk)
  22. endef
  23. define KernelPackage/qca-ssdk/Description
  24. Driver for Qualcomm Atheros switches.
  25. endef
  26. GCC_VERSION=$(shell echo "$(CONFIG_GCC_VERSION)" | sed 's/[^0-9.]*\([0-9.]*\).*/\1/')
  27. LNX_CONFIG_OPTS = LNX_MAKEOPTS='$(KERNEL_MAKEOPTS)' PRJ_PATH=$(PKG_BUILD_DIR) MODULE_TYPE=KSLIB modules
  28. MAKE_FLAGS+= \
  29. TARGET_NAME=$(CONFIG_TARGET_NAME) \
  30. TOOL_PATH=$(firstword $(TOOLCHAIN_BIN_DIRS)) \
  31. SYS_PATH=$(LINUX_DIR) \
  32. TOOLPREFIX=$(TARGET_CROSS) \
  33. KVER=$(LINUX_VERSION) \
  34. ARCH=$(LINUX_KARCH) \
  35. TARGET_SUFFIX=$(CONFIG_TARGET_SUFFIX) \
  36. GCC_VERSION=$(GCC_VERSION) \
  37. EXTRA_CFLAGS="-fno-stack-protector -I$(STAGING_DIR)/usr/include" \
  38. SoC=$(CONFIG_TARGET_SUBTARGET) \
  39. PTP_FEATURE=disable SWCONFIG_FEATURE=disable \
  40. ISISC_ENABLE=disable IN_QCA803X_PHY=FALSE \
  41. IN_QCA808X_PHY=FALSE IN_MALIBU_PHY=FALSE \
  42. $(LNX_CONFIG_OPTS)
  43. ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq807x")
  44. MAKE_FLAGS+= CHIP_TYPE=HPPE
  45. endif
  46. ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq60xx")
  47. MAKE_FLAGS+= CHIP_TYPE=CPPE
  48. endif
  49. define Build/Compile
  50. +$(MAKE) $(PKG_JOBS) $(MAKE_FLAGS) -C $(PKG_BUILD_DIR) $(LNX_CONFIG_OPTS)
  51. endef
  52. define Build/InstallDev
  53. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk
  54. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/api
  55. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/ref
  56. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/fal
  57. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/sal
  58. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/init
  59. $(CP) -rf $(PKG_BUILD_DIR)/include/api/sw_ioctl.h $(1)/usr/include/qca-ssdk/api
  60. if [ -f $(PKG_BUILD_DIR)/include/ref/ref_vsi.h ]; then \
  61. $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_vsi.h $(1)/usr/include/qca-ssdk/ref/; \
  62. fi
  63. if [ -f $(PKG_BUILD_DIR)/include/ref/ref_fdb.h ]; then \
  64. $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_fdb.h $(1)/usr/include/qca-ssdk/ref/; \
  65. fi
  66. if [ -f $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h ]; then \
  67. $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h $(1)/usr/include/qca-ssdk/ref/; \
  68. fi
  69. if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_init.h ]; then \
  70. $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_init.h $(1)/usr/include/qca-ssdk/init/; \
  71. fi
  72. if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_netlink.h ]; then \
  73. $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_netlink.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. endef
  80. $(eval $(call KernelPackage,qca-ssdk))