From 5b0e656e5786a3503be6e35e70160bcfa10d8dea Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 8 Dec 2022 23:07:17 +0100 Subject: [PATCH] gnu: u-boot: Update to 2022.10. * gnu/packages/bootloaders.scm (u-boot): Update to 2022.10. * gnu/packages/patches/u-boot-allow-disabling-openssl.patch: Disable fit_pre_load_data, which depends on openssl. --- gnu/packages/bootloaders.scm | 6 +- .../u-boot-allow-disabling-openssl.patch | 66 +++++++++++++++++++ 2 files changed, 69 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 8888c51736..9fdcee01bb 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -631,7 +631,7 @@ tree binary files. These are board description files used by Linux and BSD.") (define u-boot (package (name "u-boot") - (version "2022.04") + (version "2022.10") (source (origin (patches (list %u-boot-rockchip-inno-usb-patch @@ -644,7 +644,8 @@ tree binary files. These are board description files used by Linux and BSD.") "u-boot-" version ".tar.bz2")) (sha256 (base32 - "1l5w13dznj0z1ibqv2d6ljx2ma1gnf5x5ay3dqkqwxr6750nbq38")))) + "1y5x8vxdgsqdqlsvq01mn8lmw53fqairkhvhhjx83hjva0m4id2h")))) + (build-system gnu-build-system) (native-inputs `(("bc" ,bc) ("bison" ,bison) @@ -660,7 +661,6 @@ tree binary files. These are board description files used by Linux and BSD.") ("python-pytest" ,python-pytest) ("swig" ,swig) ("libuuid" ,util-linux "lib"))) - (build-system gnu-build-system) (home-page "https://www.denx.de/wiki/U-Boot/") (synopsis "ARM bootloader") (description "U-Boot is a bootloader used mostly for ARM boards. It diff --git a/gnu/packages/patches/u-boot-allow-disabling-openssl.patch b/gnu/packages/patches/u-boot-allow-disabling-openssl.patch index 73e5878546..5f2856dbb4 100644 --- a/gnu/packages/patches/u-boot-allow-disabling-openssl.patch +++ b/gnu/packages/patches/u-boot-allow-disabling-openssl.patch @@ -5,6 +5,9 @@ Subject: [PATCH] Revert "tools: kwbimage: Do not hide usage of secure header This reverts commit b4f3cc2c42d97967a3a3c8796c340f6b07ecccac. +Addendum 2022-12-08, Ricardo Wurmus: This patch has been updated to introduce +CONFIG_FIT_PRELOAD to remove fit_pre_load_data, which depends on openssl. + diff --git a/tools/kwbimage.c b/tools/kwbimage.c index 94b7685392..eec599b0ee 100644 --- a/tools/kwbimage.c @@ -137,3 +140,66 @@ index 94b7685392..eec599b0ee 100644 *imagesz = headersz; +--- a/tools/image-host.c ++++ b/tools/image-host.c +@@ -14,10 +14,12 @@ + #include + #include + ++#ifdef CONFIG_FIT_PRELOAD + #include + #include + + #define IMAGE_PRE_LOAD_PATH "/image/pre-load/sig" ++#endif + + /** + * fit_set_hash_value - set hash value in requested has node +@@ -1116,6 +1118,7 @@ + return 0; + } + ++#ifdef CONFIG_FIT_PRELOAD + /* + * 0) open file (open) + * 1) read certificate (PEM_read_X509) +@@ -1224,6 +1227,7 @@ + out: + return ret; + } ++#endif + + int fit_cipher_data(const char *keydir, void *keydest, void *fit, + const char *comment, int require_keys, +--- a/tools/fit_image.c ++++ b/tools/fit_image.c +@@ -59,9 +59,10 @@ + ret = fit_set_timestamp(ptr, 0, time); + } + ++#ifdef CONFIG_FIT_PRELOAD + if (!ret) + ret = fit_pre_load_data(params->keydir, dest_blob, ptr); +- ++#endif + if (!ret) { + ret = fit_cipher_data(params->keydir, dest_blob, ptr, + params->comment, +--- a/include/image.h ++++ b/include/image.h +@@ -1090,6 +1090,7 @@ + + int fit_set_timestamp(void *fit, int noffset, time_t timestamp); + ++#ifdef CONFIG_FIT_PRELOAD + /** + * fit_pre_load_data() - add public key to fdt blob + * +@@ -1104,6 +1105,7 @@ + * < 0, on failure + */ + int fit_pre_load_data(const char *keydir, void *keydest, void *fit); ++#endif + + int fit_cipher_data(const char *keydir, void *keydest, void *fit, + const char *comment, int require_keys,