gnu: dtc: Update to 1.4.6.
* gnu/packages/bootloaders.scm (dtc): Update to 1.4.6. [source]: Remove both patches. * gnu/packages/patches/dtc-format-modifier.patch: Delete file. * gnu/packages/patches/dtc-32-bits-check.patch: Likewise. * gnu/local.mk (dist_patch_DATA): Remove both.master
parent
b09c6b55ad
commit
d95bb2957d
|
@ -608,8 +608,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/doc++-include-directives.patch \
|
||||
%D%/packages/patches/doc++-segfault-fix.patch \
|
||||
%D%/packages/patches/doxygen-test.patch \
|
||||
%D%/packages/patches/dtc-format-modifier.patch \
|
||||
%D%/packages/patches/dtc-32-bits-check.patch \
|
||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||
%D%/packages/patches/eigen-arm-neon-fixes.patch \
|
||||
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym@scratchpost.org>
|
||||
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
|
||||
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -299,7 +300,7 @@ menu to select one of the installed operating systems.")
|
|||
(define-public dtc
|
||||
(package
|
||||
(name "dtc")
|
||||
(version "1.4.5")
|
||||
(version "1.4.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -307,11 +308,7 @@ menu to select one of the installed operating systems.")
|
|||
"dtc-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08gnl39i4xy3dm8iqwlz2ygx0ml1bgc5kpiys5ll1wvah1j72b04"))
|
||||
;; Fix build and tests on 32 bits platforms.
|
||||
;; Will probably be fixed in 1.4.6 release.
|
||||
(patches (search-patches "dtc-format-modifier.patch"
|
||||
"dtc-32-bits-check.patch"))))
|
||||
"0zkvih0fpwvk31aqyyfy9kn13nbi76c21ihax15p6h1wrjzh48rq"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
|
@ -327,7 +324,7 @@ menu to select one of the installed operating systems.")
|
|||
"INSTALL=install")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure))))
|
||||
(delete 'configure)))) ; no configure script
|
||||
(home-page "https://www.devicetree.org")
|
||||
(synopsis "Compiles device tree source files")
|
||||
(description "@command{dtc} compiles
|
||||
|
|
|
@ -1,134 +0,0 @@
|
|||
This fixes tests on 32 bits platforms. Patch taken from upstream.
|
||||
|
||||
commit f8872e29ce06d78d3db71b3ab26a7465fc8a9586
|
||||
Author: David Gibson <david@gibson.dropbear.id.au>
|
||||
Date: Fri Oct 6 23:07:30 2017 +1100
|
||||
|
||||
tests: Avoid 64-bit arithmetic in assembler
|
||||
|
||||
For testing we (ab)use the assembler to build us a sample dtb, independent
|
||||
of the other tools (dtc and libfdt) that we're trying to test. In a few
|
||||
places this uses 64-bit arithmetic to decompose 64-bit constants into
|
||||
the individual bytes in the blob.
|
||||
|
||||
Unfortunately, it seems that some builds of GNU as don't support >32 bit
|
||||
arithmetic, though it's not entirely clear to me which do and which don't
|
||||
(Fedora i386 does support 64-bit, Debian arm32 doesn't).
|
||||
|
||||
Anyway, to be safe, this avoids 64-bit arithmetic in assembler at the cost
|
||||
of some extra awkwardness because we have to define the values in 32-bit
|
||||
halves.
|
||||
|
||||
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
||||
|
||||
diff --git a/tests/testdata.h b/tests/testdata.h
|
||||
index 3588778..f6bbe1d 100644
|
||||
--- a/tests/testdata.h
|
||||
+++ b/tests/testdata.h
|
||||
@@ -4,15 +4,25 @@
|
||||
#define ASM_CONST_LL(x) (x##ULL)
|
||||
#endif
|
||||
|
||||
-#define TEST_ADDR_1 ASM_CONST_LL(0xdeadbeef00000000)
|
||||
-#define TEST_SIZE_1 ASM_CONST_LL(0x100000)
|
||||
-#define TEST_ADDR_2 ASM_CONST_LL(123456789)
|
||||
-#define TEST_SIZE_2 ASM_CONST_LL(010000)
|
||||
+#define TEST_ADDR_1H ASM_CONST_LL(0xdeadbeef)
|
||||
+#define TEST_ADDR_1L ASM_CONST_LL(0x00000000)
|
||||
+#define TEST_ADDR_1 ((TEST_ADDR_1H << 32) | TEST_ADDR_1L)
|
||||
+#define TEST_SIZE_1H ASM_CONST_LL(0x00000000)
|
||||
+#define TEST_SIZE_1L ASM_CONST_LL(0x00100000)
|
||||
+#define TEST_SIZE_1 ((TEST_SIZE_1H << 32) | TEST_SIZE_1L)
|
||||
+#define TEST_ADDR_2H ASM_CONST_LL(0)
|
||||
+#define TEST_ADDR_2L ASM_CONST_LL(123456789)
|
||||
+#define TEST_ADDR_2 ((TEST_ADDR_2H << 32) | TEST_ADDR_2L)
|
||||
+#define TEST_SIZE_2H ASM_CONST_LL(0)
|
||||
+#define TEST_SIZE_2L ASM_CONST_LL(010000)
|
||||
+#define TEST_SIZE_2 ((TEST_SIZE_2H << 32) | TEST_SIZE_2L)
|
||||
|
||||
#define TEST_VALUE_1 0xdeadbeef
|
||||
#define TEST_VALUE_2 123456789
|
||||
|
||||
-#define TEST_VALUE64_1 ASM_CONST_LL(0xdeadbeef01abcdef)
|
||||
+#define TEST_VALUE64_1H ASM_CONST_LL(0xdeadbeef)
|
||||
+#define TEST_VALUE64_1L ASM_CONST_LL(0x01abcdef)
|
||||
+#define TEST_VALUE64_1 ((TEST_VALUE64_1H << 32) | TEST_VALUE64_1L)
|
||||
|
||||
#define PHANDLE_1 0x2000
|
||||
#define PHANDLE_2 0x2001
|
||||
diff --git a/tests/trees.S b/tests/trees.S
|
||||
index 9854d1d..9859914 100644
|
||||
--- a/tests/trees.S
|
||||
+++ b/tests/trees.S
|
||||
@@ -7,16 +7,6 @@
|
||||
.byte ((val) >> 8) & 0xff ; \
|
||||
.byte (val) & 0xff ;
|
||||
|
||||
-#define FDTQUAD(val) \
|
||||
- .byte ((val) >> 56) & 0xff ; \
|
||||
- .byte ((val) >> 48) & 0xff ; \
|
||||
- .byte ((val) >> 40) & 0xff ; \
|
||||
- .byte ((val) >> 32) & 0xff ; \
|
||||
- .byte ((val) >> 24) & 0xff ; \
|
||||
- .byte ((val) >> 16) & 0xff ; \
|
||||
- .byte ((val) >> 8) & 0xff ; \
|
||||
- .byte (val) & 0xff ;
|
||||
-
|
||||
#define TREE_HDR(tree) \
|
||||
.balign 8 ; \
|
||||
.globl _##tree ; \
|
||||
@@ -33,14 +23,16 @@ tree: \
|
||||
FDTLONG(tree##_strings_end - tree##_strings) ; \
|
||||
FDTLONG(tree##_struct_end - tree##_struct) ;
|
||||
|
||||
-#define RSVMAP_ENTRY(addr, len) \
|
||||
- FDTQUAD(addr) ; \
|
||||
- FDTQUAD(len) ; \
|
||||
+#define RSVMAP_ENTRY(addrh, addrl, lenh, lenl) \
|
||||
+ FDTLONG(addrh) ; \
|
||||
+ FDTLONG(addrl) ; \
|
||||
+ FDTLONG(lenh) ; \
|
||||
+ FDTLONG(lenl)
|
||||
|
||||
#define EMPTY_RSVMAP(tree) \
|
||||
.balign 8 ; \
|
||||
tree##_rsvmap: ; \
|
||||
- RSVMAP_ENTRY(0, 0) \
|
||||
+ RSVMAP_ENTRY(0, 0, 0, 0) \
|
||||
tree##_rsvmap_end: ;
|
||||
|
||||
#define PROPHDR(tree, name, len) \
|
||||
@@ -52,9 +44,10 @@ tree##_rsvmap_end: ;
|
||||
PROPHDR(tree, name, 4) \
|
||||
FDTLONG(val) ;
|
||||
|
||||
-#define PROP_INT64(tree, name, val) \
|
||||
+#define PROP_INT64(tree, name, valh, vall) \
|
||||
PROPHDR(tree, name, 8) \
|
||||
- FDTQUAD(val) ;
|
||||
+ FDTLONG(valh) ; \
|
||||
+ FDTLONG(vall) ;
|
||||
|
||||
#define PROP_STR(tree, name, str) \
|
||||
PROPHDR(tree, name, 55f - 54f) \
|
||||
@@ -81,16 +74,16 @@ tree##_##name: ; \
|
||||
|
||||
.balign 8
|
||||
test_tree1_rsvmap:
|
||||
- RSVMAP_ENTRY(TEST_ADDR_1, TEST_SIZE_1)
|
||||
- RSVMAP_ENTRY(TEST_ADDR_2, TEST_SIZE_2)
|
||||
- RSVMAP_ENTRY(0, 0)
|
||||
+ RSVMAP_ENTRY(TEST_ADDR_1H, TEST_ADDR_1L, TEST_SIZE_1H, TEST_SIZE_1L)
|
||||
+ RSVMAP_ENTRY(TEST_ADDR_2H, TEST_ADDR_2L, TEST_SIZE_2H, TEST_SIZE_2L)
|
||||
+ RSVMAP_ENTRY(0, 0, 0, 0)
|
||||
test_tree1_rsvmap_end:
|
||||
|
||||
test_tree1_struct:
|
||||
BEGIN_NODE("")
|
||||
PROP_STR(test_tree1, compatible, "test_tree1")
|
||||
PROP_INT(test_tree1, prop_int, TEST_VALUE_1)
|
||||
- PROP_INT64(test_tree1, prop_int64, TEST_VALUE64_1)
|
||||
+ PROP_INT64(test_tree1, prop_int64, TEST_VALUE64_1H, TEST_VALUE64_1L)
|
||||
PROP_STR(test_tree1, prop_str, TEST_STRING_1)
|
||||
PROP_INT(test_tree1, address_cells, 1)
|
||||
PROP_INT(test_tree1, size_cells, 0)
|
|
@ -1,38 +0,0 @@
|
|||
This fixes build on 32 bits platforms. This patch is taken from upstream.
|
||||
|
||||
commit 497432fd2131967f349e69dc5d259072151cc4b4
|
||||
Author: Thierry Reding <treding@nvidia.com>
|
||||
Date: Wed Sep 27 15:04:09 2017 +0200
|
||||
|
||||
checks: Use proper format modifier for size_t
|
||||
|
||||
The size of size_t can vary between architectures, so using %ld isn't
|
||||
going to work on 32-bit builds. Use the %zu modifier to make sure it is
|
||||
always correct.
|
||||
|
||||
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
||||
Acked-by: Rob Herring <robh@kernel.org>
|
||||
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
||||
|
||||
diff --git a/checks.c b/checks.c
|
||||
index 902f2e3..08a3a29 100644
|
||||
--- a/checks.c
|
||||
+++ b/checks.c
|
||||
@@ -972,7 +972,7 @@ static void check_property_phandle_args(struct check *c,
|
||||
int cell, cellsize = 0;
|
||||
|
||||
if (prop->val.len % sizeof(cell_t)) {
|
||||
- FAIL(c, dti, "property '%s' size (%d) is invalid, expected multiple of %ld in node %s",
|
||||
+ FAIL(c, dti, "property '%s' size (%d) is invalid, expected multiple of %zu in node %s",
|
||||
prop->name, prop->val.len, sizeof(cell_t), node->fullpath);
|
||||
return;
|
||||
}
|
||||
@@ -1163,7 +1163,7 @@ static void check_interrupts_property(struct check *c,
|
||||
return;
|
||||
|
||||
if (irq_prop->val.len % sizeof(cell_t))
|
||||
- FAIL(c, dti, "property '%s' size (%d) is invalid, expected multiple of %ld in node %s",
|
||||
+ FAIL(c, dti, "property '%s' size (%d) is invalid, expected multiple of %zu in node %s",
|
||||
irq_prop->name, irq_prop->val.len, sizeof(cell_t),
|
||||
node->fullpath);
|
||||
|
Reference in New Issue