From aa7217276d0da805229739b1ede8eb3a1fe365aa Mon Sep 17 00:00:00 2001 From: Andy Shevchenko Date: Fri, 27 Sep 2024 21:34:59 +0300 Subject: [PATCH] package/iotools: new package The iotools package provides a set of simple command line tools which allow access to hardware device registers. Supported register interfaces include PCI, IO, memory mapped IO, SMBus, CPUID, and MSR. Also included are some utilities which allow for simple arithmetic, logical, and other operations. If you ever have to debug hardware, you could probably use these tools. Signed-off-by: Andy Shevchenko Signed-off-by: Thomas Petazzoni --- DEVELOPERS | 1 + package/Config.in | 1 + package/iotools/Config.in | 14 ++++++++++++++ package/iotools/iotools.hash | 3 +++ package/iotools/iotools.mk | 29 +++++++++++++++++++++++++++++ 5 files changed, 48 insertions(+) create mode 100644 package/iotools/Config.in create mode 100644 package/iotools/iotools.hash create mode 100644 package/iotools/iotools.mk diff --git a/DEVELOPERS b/DEVELOPERS index fc3e4bdf25..a369c15311 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -239,6 +239,7 @@ F: package/sysdig/ N: Andy Shevchenko F: package/fb-test-app/ +F: package/iotools/ N: Anthony Viallard F: package/gnuplot/ diff --git a/package/Config.in b/package/Config.in index fa010e231f..5caa82e34c 100644 --- a/package/Config.in +++ b/package/Config.in @@ -535,6 +535,7 @@ endmenu source "package/i7z/Config.in" source "package/input-event-daemon/Config.in" source "package/intel-microcode/Config.in" + source "package/iotools/Config.in" source "package/ipmitool/Config.in" source "package/ipmiutil/Config.in" source "package/irda-utils/Config.in" diff --git a/package/iotools/Config.in b/package/iotools/Config.in new file mode 100644 index 0000000000..ffa1a36667 --- /dev/null +++ b/package/iotools/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_IOTOOLS + bool "iotools" + help + Tools for poking all types of IO, supported are: + - CMOS NVRAM (via /dev/nvram) + - CPU ID (x86) + - IO port (x86, PowerPC) + - MMIO + - MSR (x86) + - PCI configuration space + - SCOM (PowerPC) + - SMBus + + https://github.com/andy-shev/iotools diff --git a/package/iotools/iotools.hash b/package/iotools/iotools.hash new file mode 100644 index 0000000000..6b1ef3d47d --- /dev/null +++ b/package/iotools/iotools.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 13b8b87c7d1f22b8d8f50c499af09f9414a0879d69c22393f1051ed4bf28f378 iotools-1.7.tar.gz +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/iotools/iotools.mk b/package/iotools/iotools.mk new file mode 100644 index 0000000000..5c5a657cab --- /dev/null +++ b/package/iotools/iotools.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# iotools +# +################################################################################ + +IOTOOLS_VERSION = 1.7 +IOTOOLS_SITE = $(call github,andy-shev,iotools,v$(IOTOOLS_VERSION)) +IOTOOLS_LICENSE = GPL-2.0+ +IOTOOLS_LICENSE_FILES = COPYING + +IOTOOLS_MAKE_OPTS = \ + CROSS_COMPILE=$(TARGET_CROSS) + +ifeq ($(BR2_STATIC_LIBS),y) +IOTOOLS_MAKE_OPTS += STATIC=1 +else +IOTOOLS_MAKE_OPTS += STATIC=0 +endif + +define IOTOOLS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(IOTOOLS_MAKE_OPTS) all +endef + +define IOTOOLS_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/iotools $(TARGET_DIR)/usr/bin/iotools +endef + +$(eval $(generic-package))