diff --git a/utils/mstflint/Makefile b/utils/mstflint/Makefile new file mode 100644 index 0000000000..55b659907c --- /dev/null +++ b/utils/mstflint/Makefile @@ -0,0 +1,97 @@ +# +# Copyright (C) 2024 Til Kaiser +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=mstflint +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/Mellanox/mstflint +PKG_MIRROR_HASH:=d801b839335d6513bf5bb6d5013506366706e5ea20d9eac1a5dd6501f729437d +PKG_SOURCE_VERSION:=17e9b849ba57cfac1b28240a25ece300a0f74a45 +PKG_SOURCE_DATE:=2024-01-15 + +PKG_MAINTAINER:=Til Kaiser +PKG_LICENSE:=GPL-2.0-only +PKG_LICENSE_FILES:=COPYING + +PKG_FIXUP:=autoreconf +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/mstflint + SECTION:=Utilities + CATEGORY:=Utilities + TITLE:=Mellanox Firmware Burning and Diagnostics Tools + URL:=https://github.com/Mellanox/mstflint + DEPENDS:=@!(mips||mipsel) \ + +libcurl +liblzma +libopenssl +libsqlite3 \ + +libstdcpp +libxml2 +python3-ctypes \ + +python3-urllib +python3-xml +zlib +endef + +define Package/mstflint/description + This package contains a burning tool and diagnostic + tools for Mellanox manufactured HCA/NIC cards. + + Package Contents: + mflash lib + This lib provides low level Flash + access through Mellanox HCAs. + mtcr lib (implemented in mtcr.h file) + This lib enables access to HCA hardware registers. + mstregdump + This utility dumps hardware registers from + Mellanox hardware for later analysis by Mellanox. + mstvpd + This utility dumps the on-card VPD. + mstmcra + This debug utility reads/writes a to/from + the device configuration register space. + mstconfig + This tool sets or queries non-volatile + configurable options for Mellanox HCAs. + mstfwmanager + Mellanox firmware update and query utility which scans + the system for available Mellanox devices (only mst + PCI devices) and performs the necessary firmware updates. + mstreg + The mlxreg utility allows users to obtain information + regarding supported access registers, such as their + fields and attributes. + mstfwtrace + The mstfwtrace utility extracts and prints trace messages + generated by the firmware running on 5th generation + devices iRISCs. This tool supports secure FW flow only. + mstlink + The mstlink tool is used to check and debug + link status and issues related to them. +endef + +CONFIGURE_ARGS += \ + --enable-fw-mgr \ + --disable-inband + +TARGET_CFLAGS += \ + -D_GNU_SOURCE \ + -I$(STAGING_DIR)/usr/include/libxml2 + +define Package/mstflint/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + + $(INSTALL_DIR) $(1)/usr/lib/mstflint + $(CP) $(PKG_INSTALL_DIR)/usr/lib/mstflint $(1)/usr/lib/ + + $(INSTALL_DIR) $(1)/usr/share/mstflint + $(CP) $(PKG_INSTALL_DIR)/usr/share/mstflint $(1)/usr/share/ +endef + +$(eval $(call BuildPackage,mstflint))