aboutsummaryrefslogtreecommitdiff
path: root/util/superiotool
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2023-03-10 18:12:25 +0100
committerFelix Singer <felixsinger@posteo.net>2023-03-12 11:42:38 +0000
commit318ddb8aab8263dd772acadd1cf777ae5604da35 (patch)
tree1341ddd69a18164e9174aa2a54fdd57514699800 /util/superiotool
parentc1cc7eb8699f0858ecb3e5c9cc1150a067324c17 (diff)
util/superiotool: Fix build on musl-libc systems
- use __linux__ instead of __GLIBC__ guard for Linux-specific includes - use POSIX ioperm instead of deprecated iopl Signed-off-by: Fabian Groffen <grobian@gentoo.org> Change-Id: I99613007aa9feddcb1041f31085cdeb195ff7a68 Reviewed-on: https://review.coreboot.org/c/coreboot/+/73358 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Singer <felixsinger@posteo.net>
Diffstat (limited to 'util/superiotool')
-rw-r--r--util/superiotool/superiotool.c5
-rw-r--r--util/superiotool/superiotool.h5
2 files changed, 8 insertions, 2 deletions
diff --git a/util/superiotool/superiotool.c b/util/superiotool/superiotool.c
index ed18c13e62..576e9e6702 100644
--- a/util/superiotool/superiotool.c
+++ b/util/superiotool/superiotool.c
@@ -323,9 +323,12 @@ int main(int argc, char *argv[])
#if defined(__FreeBSD__)
if ((io_fd = open("/dev/io", O_RDWR)) < 0) {
perror("/dev/io");
-#else
+#elif defined(__NetBSD__)
if (iopl(3) < 0) {
perror("iopl");
+#else
+ if (ioperm(0, 6000, 1) < 0) {
+ perror("ioperm");
#endif
printf("Superiotool must be run as root.\n");
exit(1);
diff --git a/util/superiotool/superiotool.h b/util/superiotool/superiotool.h
index a621ae5274..8c01559759 100644
--- a/util/superiotool/superiotool.h
+++ b/util/superiotool/superiotool.h
@@ -8,7 +8,7 @@
#include <stdint.h>
#include <string.h>
#include <getopt.h>
-#if defined(__GLIBC__)
+#if defined(__linux__)
#include <sys/io.h>
#endif
#if (defined(__MACH__) && defined(__APPLE__))
@@ -24,6 +24,9 @@
# endif
#endif
+#include <sys/types.h>
+#include <stdint.h>
+
#if defined(__FreeBSD__)
#include <sys/types.h>
#include <machine/cpufunc.h>