mstflint: add new package
authorTil Kaiser <mail@tk154.de>
Fri, 26 Jan 2024 17:09:37 +0000 (18:09 +0100)
committerJosef Schlehofer <pepe.schlehofer@gmail.com>
Tue, 19 Mar 2024 22:07:35 +0000 (23:07 +0100)
This commit adds a new package, including tools for
diagnosing Mellanox Spectrum Switches and ConnectX
NICs and querying and installing firmware.

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.

Signed-off-by: Til Kaiser <mail@tk154.de>
utils/mstflint/Makefile [new file with mode: 0644]

diff --git a/utils/mstflint/Makefile b/utils/mstflint/Makefile
new file mode 100644 (file)
index 0000000..55b6599
--- /dev/null
@@ -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 <mail@tk154.de>
+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))