diff options
author | Danny Milosavljevic <dannym@scratchpost.org> | 2020-10-08 23:11:55 +0200 |
---|---|---|
committer | Danny Milosavljevic <dannym@scratchpost.org> | 2020-10-08 23:15:29 +0200 |
commit | 7e917283d71fee1a29363e113f29c8c21f7c4739 (patch) | |
tree | 161352b49ead206de34c94dc5c984af3d598a28e /gnu/packages | |
parent | aadd3429fb28a48f2cffaf9f360baf7a41f58d26 (diff) | |
download | guix-7e917283d71fee1a29363e113f29c8c21f7c4739.tar guix-7e917283d71fee1a29363e113f29c8c21f7c4739.tar.gz |
gnu: sunxi-tools: Fix build.
* gnu/packages/patches/sunxi-tools-remove-sys-io.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/admin.scm (sunxi-tools-source): Add it.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/admin.scm | 2 | ||||
-rw-r--r-- | gnu/packages/patches/sunxi-tools-remove-sys-io.patch | 52 |
2 files changed, 54 insertions, 0 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 40db55e73c..275432cb96 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2945,6 +2945,8 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") (commit (string-append "v" version)))) (sha256 (base32 "04f3jqg8ww4jxsf9c6ddcdgy2xbhkyp0b3l5f1hvvbv94p81rjxd")) + (patches + (search-patches "sunxi-tools-remove-sys-io.patch")) (modules '((guix build utils))) (snippet ;; Remove binaries contained in the tarball which are only for the diff --git a/gnu/packages/patches/sunxi-tools-remove-sys-io.patch b/gnu/packages/patches/sunxi-tools-remove-sys-io.patch new file mode 100644 index 0000000000..fc1e5ea28d --- /dev/null +++ b/gnu/packages/patches/sunxi-tools-remove-sys-io.patch @@ -0,0 +1,52 @@ +From 783cbd59fcf086a9aaf603271823fb4ca71f0c55 Mon Sep 17 00:00:00 2001 +From: Danny Milosavljevic <dannym@scratchpost.org> +Date: Thu, 8 Oct 2020 23:01:05 +0200 +Subject: [PATCH] meminfo: Replace sys/io.h by direct register accesses. +See: https://github.com/linux-sunxi/sunxi-tools/pull/144 + +Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> +--- + meminfo.c | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/meminfo.c b/meminfo.c +index 0b0ff23..3b3a5df 100644 +--- a/meminfo.c ++++ b/meminfo.c +@@ -22,7 +22,6 @@ + #include <sys/mman.h> + #include <stdint.h> + #include <errno.h> +-#include <sys/io.h> + #include <stdbool.h> + + #include "common.h" +@@ -74,24 +73,24 @@ static enum sunxi_soc_version soc_version; + unsigned int + sunxi_io_read(void *base, int offset) + { +- return inl((unsigned long) (base + offset)); ++ return *(volatile unsigned int*) (base + offset); + } + + void + sunxi_io_write(void *base, int offset, unsigned int value) + { +- outl(value, (unsigned long) (base + offset)); ++ *(volatile unsigned int*) (base + offset) = value; + } + + void + sunxi_io_mask(void *base, int offset, unsigned int value, unsigned int mask) + { +- unsigned int tmp = inl((unsigned long) (base + offset)); ++ unsigned int tmp = sunxi_io_read(base, offset); + + tmp &= ~mask; + tmp |= value & mask; + +- outl(tmp, (unsigned long) (base + offset)); ++ sunxi_io_write(base, offset, tmp); + } + + |