From 21354ef91dbbb7de1b31e8018b38c1f477687533 Mon Sep 17 00:00:00 2001 From: Daniel Piers Date: Tue, 13 Oct 2026 17:57:25 -0700 Subject: [PATCH] nt98513-diagnostics: add optional stock ABI tools --- .github/scripts/ci-matrix.py | 2 ++ general/package/Config.in | 1 + general/package/nt98513-diagnostics/Config.in | 14 +++++++++++++ .../nt98513-diagnostics.hash | 3 +++ .../nt98513-diagnostics.mk | 20 +++++++++++++++++++ 5 files changed, 40 insertions(+) create mode 100644 general/package/nt98513-diagnostics/Config.in create mode 100644 general/package/nt98513-diagnostics/nt98513-diagnostics.hash create mode 100644 general/package/nt98513-diagnostics/nt98513-diagnostics.mk diff --git a/.github/scripts/ci-matrix.py b/.github/scripts/ci-matrix.py index 08af0af04..7e78eb7ee 100644 --- a/.github/scripts/ci-matrix.py +++ b/.github/scripts/ci-matrix.py @@ -296,6 +296,8 @@ # would spend flash on a radio that is not there. A mainline board with a # driver choosing it would take it off this list. NOT_BUILT = { + # Manual stock-ABI diagnostics; no supported board enables these tools. + "nt98513-diagnostics", "adaptive-link", "aic8800-openipc", "allwinner-osdrv-v83x", "atbm-wifi", "aura-httpd", "baresip-openipc", "comgt", "f2fs-tools-openipc", "faceter-agent", "faceter-detector", "fdk-aac-openipc", "ffmpeg-openipc", "gdbserver-lite", diff --git a/general/package/Config.in b/general/package/Config.in index 6b2899b22..1d6fb2066 100644 --- a/general/package/Config.in +++ b/general/package/Config.in @@ -80,6 +80,7 @@ source "$BR2_EXTERNAL_GENERAL_PATH/package/netblink/Config.in" source "$BR2_EXTERNAL_GENERAL_PATH/package/node-exporter/Config.in" source "$BR2_EXTERNAL_GENERAL_PATH/package/novatek-osdrv-nt9856x/Config.in" source "$BR2_EXTERNAL_GENERAL_PATH/package/ntfy/Config.in" +source "$BR2_EXTERNAL_GENERAL_PATH/package/nt98513-diagnostics/Config.in" source "$BR2_EXTERNAL_GENERAL_PATH/package/onvif-simple-server/Config.in" source "$BR2_EXTERNAL_GENERAL_PATH/package/openipc-failsafe/Config.in" source "$BR2_EXTERNAL_GENERAL_PATH/package/openipc-precision-time/Config.in" diff --git a/general/package/nt98513-diagnostics/Config.in b/general/package/nt98513-diagnostics/Config.in new file mode 100644 index 000000000..a77800044 --- /dev/null +++ b/general/package/nt98513-diagnostics/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_NT98513_DIAGNOSTICS + bool "nt98513-diagnostics" + depends on BR2_mipsel + depends on BR2_MIPS_CPU_MIPS32R2 + depends on BR2_MIPS_OABI32 + help + Optional manual diagnostics for the recovered NT98513 stock + Linux userspace ABI. Builds three freestanding static MIPS32r2 + O32 soft-float tools; the rootfs libc float ABI is not used. + Requires a GNU/Clang compiler accepting the checked target flags. + No services, device nodes, firmware or board support are installed. + Build success does not establish compatible hardware or drivers. + + https://github.com/OpenIPC/ipctool diff --git a/general/package/nt98513-diagnostics/nt98513-diagnostics.hash b/general/package/nt98513-diagnostics/nt98513-diagnostics.hash new file mode 100644 index 000000000..5053f06b5 --- /dev/null +++ b/general/package/nt98513-diagnostics/nt98513-diagnostics.hash @@ -0,0 +1,3 @@ +# Locally computed from the archive at the pinned OpenIPC/ipctool commit. +sha256 5da4b2980353e14aebc1eec14d1399e8aa4c6ac803eab2fc3e396d3f33216fed nt98513-diagnostics-c6fba9743e6b3924a3652d72fbcbdf564cbd33bb.tar.gz +sha256 b5817682a24c8f769067ce163c09c3fe5c6d24a36dd4c4b9dd4abcd77a95e29f tools/nt98513/LICENSE diff --git a/general/package/nt98513-diagnostics/nt98513-diagnostics.mk b/general/package/nt98513-diagnostics/nt98513-diagnostics.mk new file mode 100644 index 000000000..5b781666b --- /dev/null +++ b/general/package/nt98513-diagnostics/nt98513-diagnostics.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# nt98513-diagnostics +# +################################################################################ + +NT98513_DIAGNOSTICS_VERSION = c6fba9743e6b3924a3652d72fbcbdf564cbd33bb +NT98513_DIAGNOSTICS_SITE = $(call github,OpenIPC,ipctool,$(NT98513_DIAGNOSTICS_VERSION)) +NT98513_DIAGNOSTICS_SUBDIR = tools/nt98513 +NT98513_DIAGNOSTICS_LICENSE = MIT +NT98513_DIAGNOSTICS_LICENSE_FILES = tools/nt98513/LICENSE +NT98513_DIAGNOSTICS_SUPPORTS_IN_SOURCE_BUILD = NO + +# Keep Buildroot's compiler wrapper/sysroot while satisfying the standalone +# project's Linux target check. Its fixed flags and compiler probe enforce +# the freestanding output ABI independently of the rootfs libc float ABI. +NT98513_DIAGNOSTICS_CONF_OPTS = -DCMAKE_SYSTEM_NAME=Linux +NT98513_DIAGNOSTICS_INSTALL_TARGET_OPTS = --component NT98513Diagnostics + +$(eval $(cmake-package))