Makefile 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  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 \
  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. endif
  51. define Build/Compile
  52. +$(MAKE) $(PKG_JOBS) $(MAKE_FLAGS) -C $(PKG_BUILD_DIR) $(LNX_CONFIG_OPTS)
  53. endef
  54. define Build/InstallDev
  55. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk
  56. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/api
  57. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/ref
  58. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/fal
  59. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/sal
  60. $(INSTALL_DIR) $(1)/usr/include/qca-ssdk/init
  61. $(CP) -rf $(PKG_BUILD_DIR)/include/api/sw_ioctl.h $(1)/usr/include/qca-ssdk/api
  62. if [ -f $(PKG_BUILD_DIR)/include/ref/ref_vsi.h ]; then \
  63. $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_vsi.h $(1)/usr/include/qca-ssdk/ref/; \
  64. fi
  65. if [ -f $(PKG_BUILD_DIR)/include/ref/ref_fdb.h ]; then \
  66. $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_fdb.h $(1)/usr/include/qca-ssdk/ref/; \
  67. fi
  68. if [ -f $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h ]; then \
  69. $(CP) -rf $(PKG_BUILD_DIR)/include/ref/ref_port_ctrl.h $(1)/usr/include/qca-ssdk/ref/; \
  70. fi
  71. if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_init.h ]; then \
  72. $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_init.h $(1)/usr/include/qca-ssdk/init/; \
  73. fi
  74. if [ -f $(PKG_BUILD_DIR)/include/init/ssdk_netlink.h ]; then \
  75. $(CP) -rf $(PKG_BUILD_DIR)/include/init/ssdk_netlink.h $(1)/usr/include/qca-ssdk/init/; \
  76. fi
  77. $(CP) -rf $(PKG_BUILD_DIR)/include/fal $(1)/usr/include/qca-ssdk
  78. $(CP) -rf $(PKG_BUILD_DIR)/include/common/*.h $(1)/usr/include/qca-ssdk
  79. $(CP) -rf $(PKG_BUILD_DIR)/include/sal/os/linux/*.h $(1)/usr/include/qca-ssdk
  80. $(CP) -rf $(PKG_BUILD_DIR)/include/sal/os/*.h $(1)/usr/include/qca-ssdk
  81. endef
  82. $(eval $(call KernelPackage,qca-ssdk))