mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
gnu: u-boot: Update to 2024.07.
* gnu/packages/bootloaders.scm (u-boot): Update to 2024.07. [source]: Remove build-without-libcrypto patch. (%u-boot-build-without-libcrypto-patch): Remove variable. (u-boot-tools)[arguments]: Disable sandbox tests and kwbimage. * gnu/packages/patches/u-boot-build-without-libcrypto.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove patch. Change-Id: I85863adb0324461fabf164d3e936d922ade3aa69
This commit is contained in:
parent
c96437d3b6
commit
adabfcfd37
3 changed files with 13 additions and 137 deletions
|
@ -2227,7 +2227,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/tuxpaint-stamps-path.patch \
|
%D%/packages/patches/tuxpaint-stamps-path.patch \
|
||||||
%D%/packages/patches/twinkle-bcg729.patch \
|
%D%/packages/patches/twinkle-bcg729.patch \
|
||||||
%D%/packages/patches/u-boot-allow-disabling-openssl.patch \
|
%D%/packages/patches/u-boot-allow-disabling-openssl.patch \
|
||||||
%D%/packages/patches/u-boot-build-without-libcrypto.patch \
|
|
||||||
%D%/packages/patches/u-boot-nintendo-nes-serial.patch \
|
%D%/packages/patches/u-boot-nintendo-nes-serial.patch \
|
||||||
%D%/packages/patches/u-boot-rockchip-inno-usb.patch \
|
%D%/packages/patches/u-boot-rockchip-inno-usb.patch \
|
||||||
%D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch \
|
%D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch \
|
||||||
|
|
|
@ -746,10 +746,6 @@ (define %u-boot-allow-disabling-openssl-patch
|
||||||
;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
|
;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
|
||||||
(search-patch "u-boot-allow-disabling-openssl.patch"))
|
(search-patch "u-boot-allow-disabling-openssl.patch"))
|
||||||
|
|
||||||
(define %u-boot-build-without-libcrypto-patch
|
|
||||||
;; Upstream commit to fix Amlogic builds in u-boot 2024.01.
|
|
||||||
(search-patch "u-boot-build-without-libcrypto.patch"))
|
|
||||||
|
|
||||||
(define %u-boot-nanopi-r4s-ddr3-patch
|
(define %u-boot-nanopi-r4s-ddr3-patch
|
||||||
;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
|
;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
|
||||||
(search-patch "u-boot-nanopi-r4s-ddr3.patch"))
|
(search-patch "u-boot-nanopi-r4s-ddr3.patch"))
|
||||||
|
@ -757,11 +753,10 @@ (define %u-boot-nanopi-r4s-ddr3-patch
|
||||||
(define u-boot
|
(define u-boot
|
||||||
(package
|
(package
|
||||||
(name "u-boot")
|
(name "u-boot")
|
||||||
(version "2024.01")
|
(version "2024.07")
|
||||||
(source (origin
|
(source (origin
|
||||||
(patches
|
(patches
|
||||||
(list %u-boot-rockchip-inno-usb-patch
|
(list %u-boot-rockchip-inno-usb-patch
|
||||||
%u-boot-build-without-libcrypto-patch
|
|
||||||
%u-boot-allow-disabling-openssl-patch
|
%u-boot-allow-disabling-openssl-patch
|
||||||
%u-boot-nanopi-r4s-ddr3-patch))
|
%u-boot-nanopi-r4s-ddr3-patch))
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -770,7 +765,7 @@ (define u-boot
|
||||||
"u-boot-" version ".tar.bz2"))
|
"u-boot-" version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1czmpszalc6b8cj9j7q6cxcy19lnijv3916w3dag6yr3xpqi35mr"))))
|
"13rwv28g6z8ihrs8k0066gblw37rvw6nsxkks6rxdwqfp6ddm4gm"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list bison
|
(list bison
|
||||||
|
@ -867,9 +862,11 @@ (define-public u-boot-tools
|
||||||
(("\\./tools/patman/patman") (which "true"))
|
(("\\./tools/patman/patman") (which "true"))
|
||||||
;; FIXME: test fails, needs further investiation
|
;; FIXME: test fails, needs further investiation
|
||||||
(("run_test \"binman\"") "# run_test \"binman\"")
|
(("run_test \"binman\"") "# run_test \"binman\"")
|
||||||
;; FIXME: test_spl fails, needs further investiation
|
;; FIXME: tests fail without kwbimage, i.e. openssl.
|
||||||
(("test_ofplatdata or test_handoff or test_spl")
|
(("run_test \"sandbox_noinst\"")
|
||||||
"test_ofplatdata or test_handoff")
|
"# run_test \"sandbox_noinst\"")
|
||||||
|
(("run_test \"sandbox_vpl\"")
|
||||||
|
"# run_test \"sandbox_vpl\"")
|
||||||
;; FIXME: code coverage not working
|
;; FIXME: code coverage not working
|
||||||
(("run_test \"binman code coverage\"")
|
(("run_test \"binman code coverage\"")
|
||||||
"# run_test \"binman code coverage\"")
|
"# run_test \"binman code coverage\"")
|
||||||
|
@ -892,14 +889,16 @@ (define-public u-boot-tools
|
||||||
(("CONFIG_FIT_SIGNATURE=y")
|
(("CONFIG_FIT_SIGNATURE=y")
|
||||||
"CONFIG_FIT_SIGNATURE=n
|
"CONFIG_FIT_SIGNATURE=n
|
||||||
CONFIG_UT_LIB_ASN1=n
|
CONFIG_UT_LIB_ASN1=n
|
||||||
CONFIG_TOOLS_LIBCRYPTO=n")
|
CONFIG_TOOLS_LIBCRYPTO=n
|
||||||
|
CONFIG_TOOLS_KWBIMAGE=n")
|
||||||
;; Catch instances of implied CONFIG_FIG_SIGNATURE
|
;; Catch instances of implied CONFIG_FIG_SIGNATURE
|
||||||
;; with VPL targets
|
;; with VPL targets
|
||||||
(("CONFIG_SANDBOX_VPL=y")
|
(("CONFIG_SANDBOX_VPL=y")
|
||||||
"CONFIG_SANDBOX_VPL=y
|
"CONFIG_SANDBOX_VPL=y
|
||||||
CONFIG_FIT_SIGNATURE=n
|
CONFIG_FIT_SIGNATURE=n
|
||||||
CONFIG_VPL_FIT_SIGNATURE=n
|
CONFIG_VPL_FIT_SIGNATURE=n
|
||||||
CONFIG_TOOLS_LIBCRYPTO=n")
|
CONFIG_TOOLS_LIBCRYPTO=n
|
||||||
|
CONFIG_TOOLS_KWBIMAGE=n")
|
||||||
;; This test requires a sound system, which is un-used
|
;; This test requires a sound system, which is un-used
|
||||||
;; in u-boot-tools.
|
;; in u-boot-tools.
|
||||||
(("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
|
(("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
|
||||||
|
@ -1108,7 +1107,8 @@ (define*-public (make-u-boot-package board triplet
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* ".config"
|
(substitute* ".config"
|
||||||
(("CONFIG_TOOLS_LIBCRYPTO=.*$")
|
(("CONFIG_TOOLS_LIBCRYPTO=.*$")
|
||||||
"CONFIG_TOOLS_LIBCRYPTO=n"))))
|
"CONFIG_TOOLS_LIBCRYPTO=n
|
||||||
|
CONFIG_TOOLS_KWBIMAGE=n"))))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda _
|
(lambda _
|
||||||
(let ((libexec (string-append #$output "/libexec"))
|
(let ((libexec (string-append #$output "/libexec"))
|
||||||
|
|
|
@ -1,123 +0,0 @@
|
||||||
From 03e598263e3878b6f5d58f5525577903edadc644 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Paul-Erwan Rio <paulerwan.rio@gmail.com>
|
|
||||||
Date: Thu, 21 Dec 2023 08:26:11 +0100
|
|
||||||
Subject: [PATCH] tools: fix build without LIBCRYPTO support
|
|
||||||
|
|
||||||
Commit cb9faa6f98ae ("tools: Use a single target-independent config to
|
|
||||||
enable OpenSSL") introduced a target-independent configuration to build
|
|
||||||
crypto features in host tools.
|
|
||||||
|
|
||||||
But since commit 2c21256b27d7 ("hash: Use Kconfig to enable hashing in
|
|
||||||
host tools and SPL") the build without OpenSSL is broken, due to FIT
|
|
||||||
signature/encryption features. Add missing conditional compilation
|
|
||||||
tokens to fix this.
|
|
||||||
|
|
||||||
Signed-off-by: Paul-Erwan Rio <paulerwan.rio@gmail.com>
|
|
||||||
Tested-by: Alexander Dahl <ada@thorsis.com>
|
|
||||||
Cc: Simon Glass <sjg@chromium.org>
|
|
||||||
Reviewed-by: Tom Rini <trini@konsulko.com>
|
|
||||||
Reviewed-by: Simon Glass <sjg@chromium.org>
|
|
||||||
---
|
|
||||||
include/image.h | 2 +-
|
|
||||||
tools/Kconfig | 1 +
|
|
||||||
tools/fit_image.c | 2 +-
|
|
||||||
tools/image-host.c | 4 ++++
|
|
||||||
tools/mkimage.c | 5 +++--
|
|
||||||
5 files changed, 10 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/include/image.h b/include/image.h
|
|
||||||
index 432ec927b1..21de70f0c9 100644
|
|
||||||
--- a/include/image.h
|
|
||||||
+++ b/include/image.h
|
|
||||||
@@ -1465,7 +1465,7 @@ int calculate_hash(const void *data, int data_len, const char *algo,
|
|
||||||
* device
|
|
||||||
*/
|
|
||||||
#if defined(USE_HOSTCC)
|
|
||||||
-# if defined(CONFIG_FIT_SIGNATURE)
|
|
||||||
+# if CONFIG_IS_ENABLED(FIT_SIGNATURE)
|
|
||||||
# define IMAGE_ENABLE_SIGN 1
|
|
||||||
# define FIT_IMAGE_ENABLE_VERIFY 1
|
|
||||||
# include <openssl/evp.h>
|
|
||||||
diff --git a/tools/Kconfig b/tools/Kconfig
|
|
||||||
index f8632cd59d..f01ed783e6 100644
|
|
||||||
--- a/tools/Kconfig
|
|
||||||
+++ b/tools/Kconfig
|
|
||||||
@@ -51,6 +51,7 @@ config TOOLS_FIT_RSASSA_PSS
|
|
||||||
Support the rsassa-pss signature scheme in the tools builds
|
|
||||||
|
|
||||||
config TOOLS_FIT_SIGNATURE
|
|
||||||
+ depends on TOOLS_LIBCRYPTO
|
|
||||||
def_bool y
|
|
||||||
help
|
|
||||||
Enable signature verification of FIT uImages in the tools builds
|
|
||||||
diff --git a/tools/fit_image.c b/tools/fit_image.c
|
|
||||||
index 71e031c855..beef1fa86e 100644
|
|
||||||
--- a/tools/fit_image.c
|
|
||||||
+++ b/tools/fit_image.c
|
|
||||||
@@ -61,7 +61,7 @@ static int fit_add_file_data(struct image_tool_params *params, size_t size_inc,
|
|
||||||
ret = fit_set_timestamp(ptr, 0, time);
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (!ret)
|
|
||||||
+ if (CONFIG_IS_ENABLED(FIT_SIGNATURE) && !ret)
|
|
||||||
ret = fit_pre_load_data(params->keydir, dest_blob, ptr);
|
|
||||||
|
|
||||||
if (!ret) {
|
|
||||||
diff --git a/tools/image-host.c b/tools/image-host.c
|
|
||||||
index ca4950312f..90bc9f905f 100644
|
|
||||||
--- a/tools/image-host.c
|
|
||||||
+++ b/tools/image-host.c
|
|
||||||
@@ -14,8 +14,10 @@
|
|
||||||
#include <image.h>
|
|
||||||
#include <version.h>
|
|
||||||
|
|
||||||
+#if CONFIG_IS_ENABLED(FIT_SIGNATURE)
|
|
||||||
#include <openssl/pem.h>
|
|
||||||
#include <openssl/evp.h>
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* fit_set_hash_value - set hash value in requested has node
|
|
||||||
@@ -1131,6 +1133,7 @@ static int fit_config_add_verification_data(const char *keydir,
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
+#if CONFIG_IS_ENABLED(FIT_SIGNATURE)
|
|
||||||
/*
|
|
||||||
* 0) open file (open)
|
|
||||||
* 1) read certificate (PEM_read_X509)
|
|
||||||
@@ -1239,6 +1242,7 @@ int fit_pre_load_data(const char *keydir, void *keydest, void *fit)
|
|
||||||
out:
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
int fit_cipher_data(const char *keydir, void *keydest, void *fit,
|
|
||||||
const char *comment, int require_keys,
|
|
||||||
diff --git a/tools/mkimage.c b/tools/mkimage.c
|
|
||||||
index 6dfe3e1d42..ac62ebbde9 100644
|
|
||||||
--- a/tools/mkimage.c
|
|
||||||
+++ b/tools/mkimage.c
|
|
||||||
@@ -115,7 +115,7 @@ static void usage(const char *msg)
|
|
||||||
" -B => align size in hex for FIT structure and header\n"
|
|
||||||
" -b => append the device tree binary to the FIT\n"
|
|
||||||
" -t => update the timestamp in the FIT\n");
|
|
||||||
-#ifdef CONFIG_FIT_SIGNATURE
|
|
||||||
+#if CONFIG_IS_ENABLED(FIT_SIGNATURE)
|
|
||||||
fprintf(stderr,
|
|
||||||
"Signing / verified boot options: [-k keydir] [-K dtb] [ -c <comment>] [-p addr] [-r] [-N engine]\n"
|
|
||||||
" -k => set directory containing private keys\n"
|
|
||||||
@@ -130,8 +130,9 @@ static void usage(const char *msg)
|
|
||||||
" -o => algorithm to use for signing\n");
|
|
||||||
#else
|
|
||||||
fprintf(stderr,
|
|
||||||
- "Signing / verified boot not supported (CONFIG_FIT_SIGNATURE undefined)\n");
|
|
||||||
+ "Signing / verified boot not supported (CONFIG_TOOLS_FIT_SIGNATURE undefined)\n");
|
|
||||||
#endif
|
|
||||||
+
|
|
||||||
fprintf(stderr, " %s -V ==> print version information and exit\n",
|
|
||||||
params.cmdname);
|
|
||||||
fprintf(stderr, "Use '-T list' to see a list of available image types\n");
|
|
||||||
--
|
|
||||||
2.41.0
|
|
||||||
|
|
Loading…
Reference in a new issue