Makefile 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. include $(TOPDIR)/rules.mk
  2. PKG_NAME:=qca-ssdk
  3. PKG_RELEASE:=3
  4. PKG_SOURCE_URL:=https://git.codelinaro.org/clo/qsdk/oss/lklm/qca-ssdk.git
  5. PKG_SOURCE_PROTO:=git
  6. PKG_SOURCE_DATE:=2024-06-13
  7. PKG_SOURCE_VERSION:=c451136ba69d51d60f770365b6d6d60ff2801998
  8. PKG_MIRROR_HASH:=4c54f2d77b5abeb96bddceb4a9eb58aa2c8fb12b58d5d666196224a35ac107dc
  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. SHELL="$(BASH)" \
  40. PTP_FEATURE=disable SWCONFIG_FEATURE=disable \
  41. ISISC_ENABLE=disable MHT_ENABLE=disable \
  42. IN_QCA803X_PHY=FALSE IN_QCA808X_PHY=FALSE \
  43. IN_MALIBU_PHY=FALSE IN_MP_PHY=FALSE \
  44. $(LNX_CONFIG_OPTS)
  45. ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq807x")
  46. MAKE_FLAGS+= CHIP_TYPE=HPPE
  47. endif
  48. ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq60xx")
  49. MAKE_FLAGS+= CHIP_TYPE=CPPE \
  50. IN_AQUANTIA_PHY=TRUE
  51. endif
  52. ifeq ($(CONFIG_TARGET_SUBTARGET), "ipq50xx")
  53. MAKE_FLAGS+= CHIP_TYPE=MP
  54. endif
  55. define Build/Compile
  56. +$(MAKE) $(PKG_JOBS) $(MAKE_FLAGS) -C $(PKG_BUILD_DIR) $(LNX_CONFIG_OPTS)
  57. endef
  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. endef
  86. $(eval $(call KernelPackage,qca-ssdk))