unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot.
@ 2024-04-01 20:20 Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
                   ` (7 more replies)
  0 siblings, 8 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-04-01 20:20 UTC (permalink / raw)
  To: 70131; +Cc: Herman Rimm, Efraim Flashner, Vagrant Cascadian

Hello,

Besides the bootloader, there is a patch for my Nano Pi R4S variant. For
the new U-Boot release, kwbimage now enables openssl. Disabling kwbimage
makes the sandbox tests fail. I disabled the tests and have not
investigated further. The new release adds support for the Orange Pi
Zero 2W, for which I also added a bootloader. Along the way I upgraded
the ATF package, though I don't think it's required for the Zero 2W.

Cheers,
Herman

Herman Rimm (5):
  gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.
  gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
  gnu: firmware: Update make-arm-trusted-firmware to 2.10.
  gnu: u-boot: Update to 2024.04-rc5.
  gnu: bootloader: Add orangepi-zero2w bootloader.

 gnu/bootloader/u-boot.scm                     |  24 +++-
 gnu/local.mk                                  |   4 +-
 gnu/packages/bootloaders.scm                  |  66 ++++++++--
 gnu/packages/firmware.scm                     |  11 +-
 .../u-boot-build-without-libcrypto.patch      | 123 ------------------
 .../patches/u-boot-nanopi-r4s-ddr3.patch      |  25 ++++
 6 files changed, 110 insertions(+), 143 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-build-without-libcrypto.patch
 create mode 100644 gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch


base-commit: a17976e975001d3e95c998f1196a39bbb432de4f
-- 
2.41.0





^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
@ 2024-04-01 20:22 ` Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-04-01 20:22 UTC (permalink / raw)
  To: 70131; +Cc: Herman Rimm, Efraim Flashner, Vagrant Cascadian

* gnu/bootloader/u-boot.scm (install-nanopi-r4s-rk3399-u-boot,
u-boot-nanopi-r4s-rk3399-bootloader): Add variable.
* gnu/packages/bootloaders.scm (u-boot-nanopi-r4s-rk3399): Add variable.

Change-Id: I6d4cb098727fe4027aea33a39c59d34000dfc4db
---
 gnu/bootloader/u-boot.scm    | 18 +++++++++++++++++-
 gnu/packages/bootloaders.scm | 17 ++++++++++++++++-
 2 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index d20aabd538..4d0f7ead96 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2023 Herman Rimm <herman_rimm@protonmail.com>
+;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -36,6 +36,7 @@ (define-module (gnu bootloader u-boot)
             u-boot-cubietruck-bootloader
             u-boot-firefly-rk3399-bootloader
             u-boot-mx6cuboxi-bootloader
+            u-boot-nanopi-r4s-rk3399-bootloader
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
             u-boot-orangepi-r1-plus-lts-rk3328-bootloader
@@ -95,6 +96,15 @@ (define install-imx-u-boot
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               image (* 69 1024)))))
 
+(define install-nanopi-r4s-rk3399-u-boot
+  #~(lambda (bootloader root-index image)
+      (let ((spl (string-append bootloader "/libexec/idbloader.img"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device spl (stat:size (stat spl))
+                              image (* 64 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              image (* 16384 512)))))
+
 (define install-orangepi-r1-plus-lts-rk3328-u-boot
   #~(lambda (bootloader root-index image)
       (let ((idb (string-append bootloader "/libexec/idbloader.img"))
@@ -244,6 +254,12 @@ (define u-boot-novena-bootloader
    (inherit u-boot-imx-bootloader)
    (package u-boot-novena)))
 
+(define u-boot-nanopi-r4s-rk3399-bootloader
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-nanopi-r4s-rk3399)
+   (disk-image-installer install-nanopi-r4s-rk3399-u-boot)))
+
 (define u-boot-orangepi-r1-plus-lts-rk3328-bootloader
   (bootloader
    (inherit u-boot-bootloader)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index cfe8046731..d1bf0fcd98 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -18,7 +18,7 @@
 ;;; Copyright © 2022, 2023 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
 ;;; Copyright © 2021 Stefan <stefan-guix@vodafonemail.de>
 ;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2023 Herman Rimm <herman@rimm.ee>
+;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1210,6 +1210,21 @@ (define-public u-boot-novena
 version, contrary to Novena upstream, does not load u-boot.img from the first
 partition."))
 
+(define-public u-boot-nanopi-r4s-rk3399
+  (let ((base (make-u-boot-package "nanopi-r4s-rk3399" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base)
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (setenv "BL31" (search-input-file inputs "/bl31.elf"))))))))
+      (inputs
+       (modify-inputs (package-inputs base)
+         (append arm-trusted-firmware-rk3399))))))
+
 (define-public u-boot-orangepi-r1-plus-lts-rk3328
   (let ((base (make-u-boot-package "orangepi-r1-plus-lts-rk3328" "aarch64-linux-gnu")))
     (package
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
@ 2024-04-01 20:22 ` Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-04-01 20:22 UTC (permalink / raw)
  To: 70131; +Cc: Herman Rimm, Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (%u-boot-nanopi-r4s-ddr3-patch): Add
variable.
(u-boot)[source]: Use patch.
* gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch: Add file.
* gnu/local.mk (dist_patch_DATA): Register patch.

Change-Id: Ibbf952f2806c9cac7fc29e1264d427bf6ee67d01
---
 gnu/local.mk                                  |  3 ++-
 gnu/packages/bootloaders.scm                  |  7 +++++-
 .../patches/u-boot-nanopi-r4s-ddr3.patch      | 25 +++++++++++++++++++
 3 files changed, 33 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index f2b480bded..3c29b4a2b7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -62,7 +62,7 @@
 # Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
 # Copyright © 2023 Bruno Victal <mirai@makinata.eu>
 # Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
-# Copyright © 2023 Herman Rimm <herman@rimm.ee>
+# Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 # Copyright © 2023 Troy Figiel <troy@troyfigiel.com>
 # Copyright © 2024 David Elsing <david.elsing@posteo.net>
 #
@@ -2125,6 +2125,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/u-boot-build-without-libcrypto.patch	\
   %D%/packages/patches/u-boot-nintendo-nes-serial.patch		\
   %D%/packages/patches/u-boot-rockchip-inno-usb.patch		\
+  %D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch		\
   %D%/packages/patches/ucx-tcp-iface-ioctl.patch		\
   %D%/packages/patches/ultrastar-deluxe-no-freesans.patch		\
   %D%/packages/patches/ungoogled-chromium-extension-search-path.patch	\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index d1bf0fcd98..9443de0a1d 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -720,6 +720,10 @@ (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
+  ;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
+  (search-patch "u-boot-nanopi-r4s-ddr3.patch"))
+
 (define u-boot
   (package
     (name "u-boot")
@@ -728,7 +732,8 @@ (define u-boot
               (patches
                (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))
               (method url-fetch)
               (uri (string-append
                     "https://ftp.denx.de/pub/u-boot/"
diff --git a/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
new file mode 100644
index 0000000000..3c4f5efaf4
--- /dev/null
+++ b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
@@ -0,0 +1,25 @@
+diff --git a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
+index 69800cc368..a3054849f8 100644
+--- a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
++++ b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
+@@ -13,7 +13,7 @@
+  */
+ 
+ #include "rk3399-nanopi4-u-boot.dtsi"
+-#include "rk3399-sdram-lpddr4-100.dtsi"
++#include "rk3399-sdram-ddr3-1866.dtsi"
+ 
+ / {
+ 	smbios {
+diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
+index 4f4363cb0f..bfa7ee628d 100644
+--- a/configs/nanopi-r4s-rk3399_defconfig
++++ b/configs/nanopi-r4s-rk3399_defconfig
+@@ -54,7 +54,6 @@ CONFIG_PMIC_RK8XX=y
+ CONFIG_REGULATOR_PWM=y
+ CONFIG_REGULATOR_RK8XX=y
+ CONFIG_PWM_ROCKCHIP=y
+-CONFIG_RAM_ROCKCHIP_LPDDR4=y
+ CONFIG_BAUDRATE=1500000
+ CONFIG_DEBUG_UART_SHIFT=2
+ CONFIG_SYS_NS16550_MEM32=y
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
@ 2024-04-01 20:22 ` Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04-rc5 Herman Rimm via Guix-patches via
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-04-01 20:22 UTC (permalink / raw)
  To: 70131; +Cc: Herman Rimm, Efraim Flashner, Vagrant Cascadian

* gnu/packages/firmware.scm(make-arm-trusted-firmware): Update to 2.10.
---
 gnu/packages/firmware.scm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 828bc7402a..baf96a8212 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1096,18 +1096,17 @@ (define* (make-arm-trusted-firmware platform
                                        (gnu-triplet->nix-system triplet))))))
     (package
       (name (string-append "arm-trusted-firmware-" platform))
-      (version "2.9")
+      (version "2.10")
       (source
        (origin
          (method git-fetch)
          (uri (git-reference
-               ;; There are only GitHub generated release snapshots.
                (url "https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/")
                (commit (string-append "v" version))))
          (file-name (git-file-name "arm-trusted-firmware" version))
          (sha256
           (base32
-           "16fjbn1zck0d8b554h8lk1svqqn0zlawvrlkjxry9l71s9h4vd0p"))
+           "099r2c5vnvl83c2saca615dryr1byj2nm6imzkg5ix4kajsry2q8"))
          (snippet
           #~(begin
               (use-modules (guix build utils))
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04-rc5.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
                   ` (2 preceding siblings ...)
  2024-04-01 20:22 ` [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
@ 2024-04-01 20:22 ` Herman Rimm via Guix-patches via
  2024-04-01 20:22 ` [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-04-01 20:22 UTC (permalink / raw)
  To: 70131; +Cc: Herman Rimm, Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (u-boot): Update to 2024.04-rc5.
[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
---
 gnu/local.mk                                  |   1 -
 gnu/packages/bootloaders.scm                  |  26 ++--
 .../u-boot-build-without-libcrypto.patch      | 123 ------------------
 3 files changed, 13 insertions(+), 137 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-build-without-libcrypto.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 3c29b4a2b7..c6c6cf7077 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2122,7 +2122,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/tuxpaint-stamps-path.patch		\
   %D%/packages/patches/twinkle-bcg729.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-rockchip-inno-usb.patch		\
   %D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch		\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 9443de0a1d..ae604ab5bb 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -716,10 +716,6 @@ (define %u-boot-allow-disabling-openssl-patch
   ;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
   (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
   ;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
   (search-patch "u-boot-nanopi-r4s-ddr3.patch"))
@@ -727,11 +723,10 @@ (define %u-boot-nanopi-r4s-ddr3-patch
 (define u-boot
   (package
     (name "u-boot")
-    (version "2024.01")
+    (version "2024.04-rc5")
     (source (origin
               (patches
                (list %u-boot-rockchip-inno-usb-patch
-                     %u-boot-build-without-libcrypto-patch
                      %u-boot-allow-disabling-openssl-patch
                      %u-boot-nanopi-r4s-ddr3-patch))
               (method url-fetch)
@@ -740,7 +735,7 @@ (define u-boot
                     "u-boot-" version ".tar.bz2"))
               (sha256
                (base32
-                "1czmpszalc6b8cj9j7q6cxcy19lnijv3916w3dag6yr3xpqi35mr"))))
+                "18bx7v7mnqs316idkbd5a7rsg4ahdyxl8mrynrac3dfwq06x0cc5"))))
     (build-system gnu-build-system)
     (native-inputs
      (list bison
@@ -837,9 +832,11 @@ (define-public u-boot-tools
                (("\\./tools/patman/patman") (which "true"))
                ;; FIXME: test fails, needs further investiation
                (("run_test \"binman\"") "# run_test \"binman\"")
-               ;; FIXME: test_spl fails, needs further investiation
-               (("test_ofplatdata or test_handoff or test_spl")
-                "test_ofplatdata or test_handoff")
+               ;; FIXME: tests fail without kwbimage, i.e. openssl.
+               (("run_test \"sandbox_noinst\"")
+                "# run_test \"sandbox_noinst\"")
+               (("run_test \"sandbox_vpl\"")
+                "# run_test \"sandbox_vpl\"")
                ;; FIXME: code coverage not working
                (("run_test \"binman code coverage\"")
                 "# run_test \"binman code coverage\"")
@@ -862,14 +859,16 @@ (define-public u-boot-tools
                            (("CONFIG_FIT_SIGNATURE=y")
                             "CONFIG_FIT_SIGNATURE=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
                            ;; with VPL targets
                            (("CONFIG_SANDBOX_VPL=y")
                             "CONFIG_SANDBOX_VPL=y
 CONFIG_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
                            ;; in u-boot-tools.
                            (("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
@@ -1071,7 +1070,8 @@ (define*-public (make-u-boot-package board triplet
                 (lambda _
                   (substitute* ".config"
                     (("CONFIG_TOOLS_LIBCRYPTO=.*$")
-                     "CONFIG_TOOLS_LIBCRYPTO=n"))))
+                     "CONFIG_TOOLS_LIBCRYPTO=n
+CONFIG_TOOLS_KWBIMAGE=n"))))
               (replace 'install
                 (lambda _
                   (let ((libexec (string-append #$output "/libexec"))
diff --git a/gnu/packages/patches/u-boot-build-without-libcrypto.patch b/gnu/packages/patches/u-boot-build-without-libcrypto.patch
deleted file mode 100644
index d56588941c..0000000000
--- a/gnu/packages/patches/u-boot-build-without-libcrypto.patch
+++ /dev/null
@@ -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
-
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
                   ` (3 preceding siblings ...)
  2024-04-01 20:22 ` [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04-rc5 Herman Rimm via Guix-patches via
@ 2024-04-01 20:22 ` Herman Rimm via Guix-patches via
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-04-01 20:22 UTC (permalink / raw)
  To: 70131; +Cc: Herman Rimm, Efraim Flashner, Vagrant Cascadian

* gnu/bootloader/u-boot.scm (u-boot-orangepi-zero2w-bootloader): Add
variable.
* gnu/packages/bootloaders.scm (u-boot-orangepi-zero2w): Add variable.
* gnu/packages/firmware.scm (arm-trusted-firmware-sun50i-h616): Add
variable.

Change-Id: Idb43fdabac51b3301f3bea24fec72bfa29636489
---
 gnu/bootloader/u-boot.scm    |  6 ++++++
 gnu/packages/bootloaders.scm | 18 ++++++++++++++++++
 gnu/packages/firmware.scm    |  6 ++++++
 3 files changed, 30 insertions(+)

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 4d0f7ead96..50e4563390 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -40,6 +40,7 @@ (define-module (gnu bootloader u-boot)
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
             u-boot-orangepi-r1-plus-lts-rk3328-bootloader
+            u-boot-orangepi-zero2w-bootloader
             u-boot-pine64-plus-bootloader
             u-boot-pine64-lts-bootloader
             u-boot-pinebook-bootloader
@@ -266,6 +267,11 @@ (define u-boot-orangepi-r1-plus-lts-rk3328-bootloader
    (package u-boot-orangepi-r1-plus-lts-rk3328)
    (disk-image-installer install-orangepi-r1-plus-lts-rk3328-u-boot)))
 
+(define u-boot-orangepi-zero2w-bootloader
+  (bootloader
+   (inherit u-boot-allwinner-bootloader)
+   (package u-boot-orangepi-zero2w)))
+
 (define u-boot-pine64-plus-bootloader
   (bootloader
    (inherit u-boot-allwinner64-bootloader)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index ae604ab5bb..829c5d3a7e 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1144,6 +1144,24 @@ (define*-public (make-u-boot-sunxi64-package board triplet scp-firmware
        (modify-inputs (package-inputs base)
          (append arm-trusted-firmware-sun50i-a64))))))
 
+(define-public u-boot-orangepi-zero2w
+  (let ((base (make-u-boot-package
+               "orangepi_zero2w" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base)
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key native-inputs inputs #:allow-other-keys)
+                  (setenv "SCP" "/dev/null")
+                  (setenv "BL31" (search-input-file inputs "bl31.bin"))))))))
+      (inputs
+       (modify-inputs (package-inputs base)
+         ;; The Zero 2W uses the slightly revised Allwinner H618.
+         (append arm-trusted-firmware-sun50i-h616))))))
+
 (define-public u-boot-pine64-plus
   (make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu"
                                (delay crust-pine64-plus)))
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index baf96a8212..b26610267c 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1156,6 +1156,12 @@ (define-public arm-trusted-firmware-sun50i-a64
       (inherit base)
       (name "arm-trusted-firmware-sun50i-a64"))))
 
+(define-public arm-trusted-firmware-sun50i-h616
+  (let ((base (make-arm-trusted-firmware "sun50i_h616")))
+    (package
+      (inherit base)
+      (name "arm-trusted-firmware-sun50i-h616"))))
+
 (define-public arm-trusted-firmware-rk3328
   (make-arm-trusted-firmware "rk3328"))
 
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 0/5] Update U-boot.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
                   ` (4 preceding siblings ...)
  2024-04-01 20:22 ` [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
@ 2024-05-09  5:35 ` Herman Rimm via Guix-patches via
  2024-05-09  5:35   ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
                     ` (5 more replies)
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
  7 siblings, 6 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-05-09  5:35 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

Hello,

I bumped U-boot to a proper release, that's all.

Cheers,
Herman

Herman Rimm (5):
  gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.
  gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
  gnu: firmware: Update make-arm-trusted-firmware to 2.10.
  gnu: u-boot: Update to 2024.04.
  gnu: bootloader: Add orangepi-zero2w bootloader.

 gnu/bootloader/u-boot.scm                     |  24 +++-
 gnu/local.mk                                  |   4 +-
 gnu/packages/bootloaders.scm                  |  66 ++++++++--
 gnu/packages/firmware.scm                     |  11 +-
 .../u-boot-build-without-libcrypto.patch      | 123 ------------------
 .../patches/u-boot-nanopi-r4s-ddr3.patch      |  25 ++++
 6 files changed, 110 insertions(+), 143 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-build-without-libcrypto.patch
 create mode 100644 gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch


base-commit: 014875b29e68da6357a5323e6dd1eaa74a05b753
-- 
2.41.0





^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
@ 2024-05-09  5:35   ` Herman Rimm via Guix-patches via
  2024-05-09  5:35   ` [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-05-09  5:35 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/bootloader/u-boot.scm (install-nanopi-r4s-rk3399-u-boot,
u-boot-nanopi-r4s-rk3399-bootloader): Add variable.
* gnu/packages/bootloaders.scm (u-boot-nanopi-r4s-rk3399): Add variable.

Change-Id: I6d4cb098727fe4027aea33a39c59d34000dfc4db
---
 gnu/bootloader/u-boot.scm    | 18 +++++++++++++++++-
 gnu/packages/bootloaders.scm | 17 ++++++++++++++++-
 2 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 8e7cc05191..0b00afbe78 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2023 Herman Rimm <herman_rimm@protonmail.com>
+;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -37,6 +37,7 @@ (define-module (gnu bootloader u-boot)
             u-boot-cubietruck-bootloader
             u-boot-firefly-rk3399-bootloader
             u-boot-mx6cuboxi-bootloader
+            u-boot-nanopi-r4s-rk3399-bootloader
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
             u-boot-orangepi-r1-plus-lts-rk3328-bootloader
@@ -97,6 +98,15 @@ (define install-imx-u-boot
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               image (* 69 1024)))))
 
+(define install-nanopi-r4s-rk3399-u-boot
+  #~(lambda (bootloader root-index image)
+      (let ((spl (string-append bootloader "/libexec/idbloader.img"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device spl (stat:size (stat spl))
+                              image (* 64 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              image (* 16384 512)))))
+
 (define install-orangepi-r1-plus-lts-rk3328-u-boot
   #~(lambda (bootloader root-index image)
       (let ((idb (string-append bootloader "/libexec/idbloader.img"))
@@ -252,6 +262,12 @@ (define u-boot-novena-bootloader
    (inherit u-boot-imx-bootloader)
    (package u-boot-novena)))
 
+(define u-boot-nanopi-r4s-rk3399-bootloader
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-nanopi-r4s-rk3399)
+   (disk-image-installer install-nanopi-r4s-rk3399-u-boot)))
+
 (define u-boot-orangepi-r1-plus-lts-rk3328-bootloader
   (bootloader
    (inherit u-boot-bootloader)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index cfe8046731..d1bf0fcd98 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -18,7 +18,7 @@
 ;;; Copyright © 2022, 2023 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
 ;;; Copyright © 2021 Stefan <stefan-guix@vodafonemail.de>
 ;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2023 Herman Rimm <herman@rimm.ee>
+;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1210,6 +1210,21 @@ (define-public u-boot-novena
 version, contrary to Novena upstream, does not load u-boot.img from the first
 partition."))
 
+(define-public u-boot-nanopi-r4s-rk3399
+  (let ((base (make-u-boot-package "nanopi-r4s-rk3399" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base)
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (setenv "BL31" (search-input-file inputs "/bl31.elf"))))))))
+      (inputs
+       (modify-inputs (package-inputs base)
+         (append arm-trusted-firmware-rk3399))))))
+
 (define-public u-boot-orangepi-r1-plus-lts-rk3328
   (let ((base (make-u-boot-package "orangepi-r1-plus-lts-rk3328" "aarch64-linux-gnu")))
     (package
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
  2024-05-09  5:35   ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
@ 2024-05-09  5:35   ` Herman Rimm via Guix-patches via
  2024-05-15 18:16     ` Vagrant Cascadian
  2024-05-09  5:35   ` [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
                     ` (3 subsequent siblings)
  5 siblings, 1 reply; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-05-09  5:35 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (%u-boot-nanopi-r4s-ddr3-patch): Add
variable.
(u-boot)[source]: Use patch.
* gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch: Add file.
* gnu/local.mk (dist_patch_DATA): Register patch.

Change-Id: Ibbf952f2806c9cac7fc29e1264d427bf6ee67d01
---
 gnu/local.mk                                  |  3 ++-
 gnu/packages/bootloaders.scm                  |  7 +++++-
 .../patches/u-boot-nanopi-r4s-ddr3.patch      | 25 +++++++++++++++++++
 3 files changed, 33 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index edd546f81d..9b3e80de08 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -62,7 +62,7 @@
 # Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
 # Copyright © 2023 Bruno Victal <mirai@makinata.eu>
 # Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
-# Copyright © 2023 Herman Rimm <herman@rimm.ee>
+# Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 # Copyright © 2023 Troy Figiel <troy@troyfigiel.com>
 # Copyright © 2024 David Elsing <david.elsing@posteo.net>
 #
@@ -2134,6 +2134,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/u-boot-build-without-libcrypto.patch	\
   %D%/packages/patches/u-boot-nintendo-nes-serial.patch		\
   %D%/packages/patches/u-boot-rockchip-inno-usb.patch		\
+  %D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch		\
   %D%/packages/patches/ucx-tcp-iface-ioctl.patch		\
   %D%/packages/patches/ultrastar-deluxe-no-freesans.patch		\
   %D%/packages/patches/ungoogled-chromium-extension-search-path.patch	\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index d1bf0fcd98..9443de0a1d 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -720,6 +720,10 @@ (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
+  ;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
+  (search-patch "u-boot-nanopi-r4s-ddr3.patch"))
+
 (define u-boot
   (package
     (name "u-boot")
@@ -728,7 +732,8 @@ (define u-boot
               (patches
                (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))
               (method url-fetch)
               (uri (string-append
                     "https://ftp.denx.de/pub/u-boot/"
diff --git a/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
new file mode 100644
index 0000000000..3c4f5efaf4
--- /dev/null
+++ b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
@@ -0,0 +1,25 @@
+diff --git a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
+index 69800cc368..a3054849f8 100644
+--- a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
++++ b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
+@@ -13,7 +13,7 @@
+  */
+ 
+ #include "rk3399-nanopi4-u-boot.dtsi"
+-#include "rk3399-sdram-lpddr4-100.dtsi"
++#include "rk3399-sdram-ddr3-1866.dtsi"
+ 
+ / {
+ 	smbios {
+diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
+index 4f4363cb0f..bfa7ee628d 100644
+--- a/configs/nanopi-r4s-rk3399_defconfig
++++ b/configs/nanopi-r4s-rk3399_defconfig
+@@ -54,7 +54,6 @@ CONFIG_PMIC_RK8XX=y
+ CONFIG_REGULATOR_PWM=y
+ CONFIG_REGULATOR_RK8XX=y
+ CONFIG_PWM_ROCKCHIP=y
+-CONFIG_RAM_ROCKCHIP_LPDDR4=y
+ CONFIG_BAUDRATE=1500000
+ CONFIG_DEBUG_UART_SHIFT=2
+ CONFIG_SYS_NS16550_MEM32=y
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10.
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
  2024-05-09  5:35   ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
  2024-05-09  5:35   ` [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
@ 2024-05-09  5:35   ` Herman Rimm via Guix-patches via
  2024-05-09  5:35   ` [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04 Herman Rimm via Guix-patches via
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-05-09  5:35 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/packages/firmware.scm(make-arm-trusted-firmware): Update to 2.10.
---
 gnu/packages/firmware.scm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 6f0c2da806..d155c5365c 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1094,18 +1094,17 @@ (define* (make-arm-trusted-firmware platform
                                        (gnu-triplet->nix-system triplet))))))
     (package
       (name (string-append "arm-trusted-firmware-" platform))
-      (version "2.9")
+      (version "2.10")
       (source
        (origin
          (method git-fetch)
          (uri (git-reference
-               ;; There are only GitHub generated release snapshots.
                (url "https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/")
                (commit (string-append "v" version))))
          (file-name (git-file-name "arm-trusted-firmware" version))
          (sha256
           (base32
-           "16fjbn1zck0d8b554h8lk1svqqn0zlawvrlkjxry9l71s9h4vd0p"))
+           "099r2c5vnvl83c2saca615dryr1byj2nm6imzkg5ix4kajsry2q8"))
          (snippet
           #~(begin
               (use-modules (guix build utils))
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04.
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
                     ` (2 preceding siblings ...)
  2024-05-09  5:35   ` [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
@ 2024-05-09  5:35   ` Herman Rimm via Guix-patches via
  2024-05-09  5:35   ` [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
  2024-05-15 20:26   ` [bug#70131] [PATCH 0/5] Update U-boot Vagrant Cascadian
  5 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-05-09  5:35 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (u-boot): Update to 2024.04.
[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
---
 gnu/local.mk                                  |   1 -
 gnu/packages/bootloaders.scm                  |  26 ++--
 .../u-boot-build-without-libcrypto.patch      | 123 ------------------
 3 files changed, 13 insertions(+), 137 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-build-without-libcrypto.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 9b3e80de08..4b22196acb 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2131,7 +2131,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/tuxpaint-stamps-path.patch		\
   %D%/packages/patches/twinkle-bcg729.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-rockchip-inno-usb.patch		\
   %D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch		\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 9443de0a1d..a6ba4b14da 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -716,10 +716,6 @@ (define %u-boot-allow-disabling-openssl-patch
   ;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
   (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
   ;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
   (search-patch "u-boot-nanopi-r4s-ddr3.patch"))
@@ -727,11 +723,10 @@ (define %u-boot-nanopi-r4s-ddr3-patch
 (define u-boot
   (package
     (name "u-boot")
-    (version "2024.01")
+    (version "2024.04")
     (source (origin
               (patches
                (list %u-boot-rockchip-inno-usb-patch
-                     %u-boot-build-without-libcrypto-patch
                      %u-boot-allow-disabling-openssl-patch
                      %u-boot-nanopi-r4s-ddr3-patch))
               (method url-fetch)
@@ -740,7 +735,7 @@ (define u-boot
                     "u-boot-" version ".tar.bz2"))
               (sha256
                (base32
-                "1czmpszalc6b8cj9j7q6cxcy19lnijv3916w3dag6yr3xpqi35mr"))))
+                "0jnx8f45101b971zmpimjyk6vvgab8kx9hhcm41svmzs77z57a0q"))))
     (build-system gnu-build-system)
     (native-inputs
      (list bison
@@ -837,9 +832,11 @@ (define-public u-boot-tools
                (("\\./tools/patman/patman") (which "true"))
                ;; FIXME: test fails, needs further investiation
                (("run_test \"binman\"") "# run_test \"binman\"")
-               ;; FIXME: test_spl fails, needs further investiation
-               (("test_ofplatdata or test_handoff or test_spl")
-                "test_ofplatdata or test_handoff")
+               ;; FIXME: tests fail without kwbimage, i.e. openssl.
+               (("run_test \"sandbox_noinst\"")
+                "# run_test \"sandbox_noinst\"")
+               (("run_test \"sandbox_vpl\"")
+                "# run_test \"sandbox_vpl\"")
                ;; FIXME: code coverage not working
                (("run_test \"binman code coverage\"")
                 "# run_test \"binman code coverage\"")
@@ -862,14 +859,16 @@ (define-public u-boot-tools
                            (("CONFIG_FIT_SIGNATURE=y")
                             "CONFIG_FIT_SIGNATURE=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
                            ;; with VPL targets
                            (("CONFIG_SANDBOX_VPL=y")
                             "CONFIG_SANDBOX_VPL=y
 CONFIG_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
                            ;; in u-boot-tools.
                            (("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
@@ -1071,7 +1070,8 @@ (define*-public (make-u-boot-package board triplet
                 (lambda _
                   (substitute* ".config"
                     (("CONFIG_TOOLS_LIBCRYPTO=.*$")
-                     "CONFIG_TOOLS_LIBCRYPTO=n"))))
+                     "CONFIG_TOOLS_LIBCRYPTO=n
+CONFIG_TOOLS_KWBIMAGE=n"))))
               (replace 'install
                 (lambda _
                   (let ((libexec (string-append #$output "/libexec"))
diff --git a/gnu/packages/patches/u-boot-build-without-libcrypto.patch b/gnu/packages/patches/u-boot-build-without-libcrypto.patch
deleted file mode 100644
index d56588941c..0000000000
--- a/gnu/packages/patches/u-boot-build-without-libcrypto.patch
+++ /dev/null
@@ -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
-
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader.
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
                     ` (3 preceding siblings ...)
  2024-05-09  5:35   ` [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04 Herman Rimm via Guix-patches via
@ 2024-05-09  5:35   ` Herman Rimm via Guix-patches via
  2024-05-15 20:26   ` [bug#70131] [PATCH 0/5] Update U-boot Vagrant Cascadian
  5 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-05-09  5:35 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/bootloader/u-boot.scm (u-boot-orangepi-zero2w-bootloader): Add
variable.
* gnu/packages/bootloaders.scm (u-boot-orangepi-zero2w): Add variable.
* gnu/packages/firmware.scm (arm-trusted-firmware-sun50i-h616): Add
variable.

Change-Id: Idb43fdabac51b3301f3bea24fec72bfa29636489
---
 gnu/bootloader/u-boot.scm    |  6 ++++++
 gnu/packages/bootloaders.scm | 18 ++++++++++++++++++
 gnu/packages/firmware.scm    |  6 ++++++
 3 files changed, 30 insertions(+)

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 0b00afbe78..8d62c3dad8 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -41,6 +41,7 @@ (define-module (gnu bootloader u-boot)
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
             u-boot-orangepi-r1-plus-lts-rk3328-bootloader
+            u-boot-orangepi-zero2w-bootloader
             u-boot-pine64-plus-bootloader
             u-boot-pine64-lts-bootloader
             u-boot-pinebook-bootloader
@@ -274,6 +275,11 @@ (define u-boot-orangepi-r1-plus-lts-rk3328-bootloader
    (package u-boot-orangepi-r1-plus-lts-rk3328)
    (disk-image-installer install-orangepi-r1-plus-lts-rk3328-u-boot)))
 
+(define u-boot-orangepi-zero2w-bootloader
+  (bootloader
+   (inherit u-boot-allwinner-bootloader)
+   (package u-boot-orangepi-zero2w)))
+
 (define u-boot-pine64-plus-bootloader
   (bootloader
    (inherit u-boot-allwinner64-bootloader)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index a6ba4b14da..9bc5aa7d40 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1144,6 +1144,24 @@ (define*-public (make-u-boot-sunxi64-package board triplet scp-firmware
        (modify-inputs (package-inputs base)
          (append arm-trusted-firmware-sun50i-a64))))))
 
+(define-public u-boot-orangepi-zero2w
+  (let ((base (make-u-boot-package
+               "orangepi_zero2w" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base)
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key native-inputs inputs #:allow-other-keys)
+                  (setenv "SCP" "/dev/null")
+                  (setenv "BL31" (search-input-file inputs "bl31.bin"))))))))
+      (inputs
+       (modify-inputs (package-inputs base)
+         ;; The Zero 2W uses the slightly revised Allwinner H618.
+         (append arm-trusted-firmware-sun50i-h616))))))
+
 (define-public u-boot-pine64-plus
   (make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu"
                                (delay crust-pine64-plus)))
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index d155c5365c..d282b4b684 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1154,6 +1154,12 @@ (define-public arm-trusted-firmware-sun50i-a64
       (inherit base)
       (name "arm-trusted-firmware-sun50i-a64"))))
 
+(define-public arm-trusted-firmware-sun50i-h616
+  (let ((base (make-arm-trusted-firmware "sun50i_h616")))
+    (package
+      (inherit base)
+      (name "arm-trusted-firmware-sun50i-h616"))))
+
 (define-public arm-trusted-firmware-rk3328
   (make-arm-trusted-firmware "rk3328"))
 
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
  2024-05-09  5:35   ` [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
@ 2024-05-15 18:16     ` Vagrant Cascadian
  0 siblings, 0 replies; 37+ messages in thread
From: Vagrant Cascadian @ 2024-05-15 18:16 UTC (permalink / raw)
  To: Herman Rimm, 70131; +Cc: Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 1742 bytes --]

On 2024-05-09, Herman Rimm wrote:
> * gnu/packages/bootloaders.scm (%u-boot-nanopi-r4s-ddr3-patch): Add
> variable.
> (u-boot)[source]: Use patch.
> * gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch: Add file.
> * gnu/local.mk (dist_patch_DATA): Register patch.
...
> diff --git a/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
> new file mode 100644
> index 0000000000..3c4f5efaf4
> --- /dev/null
> +++ b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
> @@ -0,0 +1,25 @@
> +diff --git a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
> +index 69800cc368..a3054849f8 100644
> +--- a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
> ++++ b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
> +@@ -13,7 +13,7 @@
> +  */
> + 
> + #include "rk3399-nanopi4-u-boot.dtsi"
> +-#include "rk3399-sdram-lpddr4-100.dtsi"
> ++#include "rk3399-sdram-ddr3-1866.dtsi"
> + 
> + / {
> + 	smbios {
> +diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
> +index 4f4363cb0f..bfa7ee628d 100644
> +--- a/configs/nanopi-r4s-rk3399_defconfig
> ++++ b/configs/nanopi-r4s-rk3399_defconfig
> +@@ -54,7 +54,6 @@ CONFIG_PMIC_RK8XX=y
> + CONFIG_REGULATOR_PWM=y
> + CONFIG_REGULATOR_RK8XX=y
> + CONFIG_PWM_ROCKCHIP=y
> +-CONFIG_RAM_ROCKCHIP_LPDDR4=y
> + CONFIG_BAUDRATE=1500000
> + CONFIG_DEBUG_UART_SHIFT=2
> + CONFIG_SYS_NS16550_MEM32=y
> -- 
> 2.41.0

Is this patch submitted upstream or present in newer versions? Are all
boards of this type using DDR3, or are there some that use LPDDR4?

This sort of information would be nice to include inside the .patch file
itself.


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 0/5] Update U-boot.
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
                     ` (4 preceding siblings ...)
  2024-05-09  5:35   ` [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
@ 2024-05-15 20:26   ` Vagrant Cascadian
  2024-05-16  7:28     ` Herman Rimm via Guix-patches via
  5 siblings, 1 reply; 37+ messages in thread
From: Vagrant Cascadian @ 2024-05-15 20:26 UTC (permalink / raw)
  To: Herman Rimm; +Cc: 70131, Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 1486 bytes --]

My summary of the situation so far...

On 2024-05-09, Herman Rimm wrote:
> Herman Rimm (5):
>   gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.

Looks good, although is it useful without the follow-up patch? If not, I
would squash the two in a single commit?


>   gnu: u-boot: Use DDR3 patch for Nano Pi R4S.

Question regarding the upstream status for this patch and including
relevent descriptions about upstream status, origin, purporse, etc. in
the .patch comments.


>   gnu: firmware: Update make-arm-trusted-firmware to 2.10.

I can confirm the upstream hashes on this and it builds.

I suspect this would be fine to merge as-is even without including the
other patches in the series, though I have not verified this as yet.


>   gnu: u-boot: Update to 2024.04.

Also able to confirm the upstream hashes, although at least two packages
to fail to build, u-boot-sandbox and u-boot-rockpro64-rk3399. From the
comments on the earlier series, I am guessing you were aware of this,
but figured I'd mention which packages.

This is probably due to trying to build without openssl, due to
(potential) license incompatibilities between openssl and GPL; this is
not well suppored upstream and we have been carrying patches for quite
some time about this...


>   gnu: bootloader: Add orangepi-zero2w bootloader.

Looks good.


For the most part, there are substitutes available from bordeaux, at
least for x86_64. I will also try to do some builds on aarch64.


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 0/5] Update U-boot.
  2024-05-15 20:26   ` [bug#70131] [PATCH 0/5] Update U-boot Vagrant Cascadian
@ 2024-05-16  7:28     ` Herman Rimm via Guix-patches via
  2024-05-16 15:56       ` Vagrant Cascadian
  0 siblings, 1 reply; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-05-16  7:28 UTC (permalink / raw)
  To: Vagrant Cascadian; +Cc: 70131, Efraim Flashner

Hello,

On Wed, May 15, 2024 at 01:26:01PM -0700, Vagrant Cascadian wrote:
> My summary of the situation so far...
> 
> On 2024-05-09, Herman Rimm wrote:
> > Herman Rimm (5):
> >   gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.
> 
> Looks good, although is it useful without the follow-up patch? If not, I
> would squash the two in a single commit?

The bootloader with the DDR3 patch works, so it should also work without
the patch.  I believe the LPDDR4 version is more common because it has
OpenWRT support while the DDR3 version does not [1].  The LPDDR4 version
would not be useful to me, but in general it would be more useful.

> >   gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
> 
> Question regarding the upstream status for this patch and including
> relevent descriptions about upstream status, origin, purporse, etc. in
> the .patch comments.

The patch is not submitted upstream or already present upstream.  I made
the patch for the DDR3 (as opposed to LPDDR4) variant of the Nano Pi
R4S.  I will write this in the patch comments as well.

Should there be bootloaders for both Nano Pi R4S variants?

> >   gnu: u-boot: Update to 2024.04.
> 
> Also able to confirm the upstream hashes, although at least two packages
> to fail to build, u-boot-sandbox and u-boot-rockpro64-rk3399. From the
> comments on the earlier series, I am guessing you were aware of this,
> but figured I'd mention which packages.

I will try getting u-boot-rockpro64-rk3399 to build.

Cheers,
Herman

[1]: https://openwrt.org/toh/friendlyarm/nanopi_r4s_v1




^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH 0/5] Update U-boot.
  2024-05-16  7:28     ` Herman Rimm via Guix-patches via
@ 2024-05-16 15:56       ` Vagrant Cascadian
  0 siblings, 0 replies; 37+ messages in thread
From: Vagrant Cascadian @ 2024-05-16 15:56 UTC (permalink / raw)
  To: Herman Rimm; +Cc: 70131, Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 2122 bytes --]

On 2024-05-16, Herman Rimm wrote:
> On Wed, May 15, 2024 at 01:26:01PM -0700, Vagrant Cascadian wrote:
>> My summary of the situation so far...
>> 
>> On 2024-05-09, Herman Rimm wrote:
>> > Herman Rimm (5):
>> >   gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.
>> 
>> Looks good, although is it useful without the follow-up patch? If not, I
>> would squash the two in a single commit?
>
> The bootloader with the DDR3 patch works, so it should also work without
> the patch.  I believe the LPDDR4 version is more common because it has
> OpenWRT support while the DDR3 version does not [1].  The LPDDR4 version
> would not be useful to me, but in general it would be more useful.

Got it, thanks!


>> >   gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
>> 
>> Question regarding the upstream status for this patch and including
>> relevent descriptions about upstream status, origin, purporse, etc. in
>> the .patch comments.
>
> The patch is not submitted upstream or already present upstream.  I made
> the patch for the DDR3 (as opposed to LPDDR4) variant of the Nano Pi
> R4S.  I will write this in the patch comments as well.

Great!

> Should there be bootloaders for both Nano Pi R4S variants?

Based on the fact that there are two models with different hardware,
seems like there should be two variants of the package.

Bringing this up upstream might also be a good idea, as they might
either make a second variant upstream, or suggest a clever way to have a
single build that autodetects which variant it is and "does the right
thing" out of the box.

If you do start such a thread, a link to the discussion would be great
to have in the patch comments.


>> >   gnu: u-boot: Update to 2024.04.
>> 
>> Also able to confirm the upstream hashes, although at least two packages
>> to fail to build, u-boot-sandbox and u-boot-rockpro64-rk3399. From the
>> comments on the earlier series, I am guessing you were aware of this,
>> but figured I'd mention which packages.
>
> I will try getting u-boot-rockpro64-rk3399 to build.

Thanks!

live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
                   ` (5 preceding siblings ...)
  2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
@ 2024-08-26 14:45 ` Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 2/8] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
                     ` (6 more replies)
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
  7 siblings, 7 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* gnu/bootloader/u-boot.scm (install-nanopi-r4s-rk3399-u-boot,
u-boot-nanopi-r4s-rk3399-bootloader): Add variable.
* gnu/packages/bootloaders.scm (u-boot-nanopi-r4s-rk3399): Add variable.

Change-Id: I6d4cb098727fe4027aea33a39c59d34000dfc4db
---
 gnu/bootloader/u-boot.scm    | 18 +++++++++++++++++-
 gnu/packages/bootloaders.scm | 17 ++++++++++++++++-
 2 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index c5437a7b63..7888a4e030 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2023 Herman Rimm <herman_rimm@protonmail.com>
+;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -37,6 +37,7 @@ (define-module (gnu bootloader u-boot)
             u-boot-cubietruck-bootloader
             u-boot-firefly-rk3399-bootloader
             u-boot-mx6cuboxi-bootloader
+            u-boot-nanopi-r4s-rk3399-bootloader
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
             u-boot-orangepi-r1-plus-lts-rk3328-bootloader
@@ -98,6 +99,15 @@ (define install-imx-u-boot
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               image (* 69 1024)))))
 
+(define install-nanopi-r4s-rk3399-u-boot
+  #~(lambda (bootloader root-index image)
+      (let ((spl (string-append bootloader "/libexec/idbloader.img"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device spl (stat:size (stat spl))
+                              image (* 64 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              image (* 16384 512)))))
+
 (define install-orangepi-r1-plus-lts-rk3328-u-boot
   #~(lambda (bootloader root-index image)
       (let ((idb (string-append bootloader "/libexec/idbloader.img"))
@@ -274,6 +284,12 @@ (define u-boot-novena-bootloader
    (inherit u-boot-imx-bootloader)
    (package u-boot-novena)))
 
+(define u-boot-nanopi-r4s-rk3399-bootloader
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-nanopi-r4s-rk3399)
+   (disk-image-installer install-nanopi-r4s-rk3399-u-boot)))
+
 (define u-boot-orangepi-r1-plus-lts-rk3328-bootloader
   (bootloader
    (inherit u-boot-bootloader)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 4072df50d7..f42d42c1c4 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -18,7 +18,7 @@
 ;;; Copyright © 2022, 2023 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
 ;;; Copyright © 2021 Stefan <stefan-guix@vodafonemail.de>
 ;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2023 Herman Rimm <herman@rimm.ee>
+;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -1237,6 +1237,21 @@ (define-public u-boot-novena
 version, contrary to Novena upstream, does not load u-boot.img from the first
 partition."))
 
+(define-public u-boot-nanopi-r4s-rk3399
+  (let ((base (make-u-boot-package "nanopi-r4s-rk3399" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base)
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (setenv "BL31" (search-input-file inputs "/bl31.elf"))))))))
+      (inputs
+       (modify-inputs (package-inputs base)
+         (append arm-trusted-firmware-rk3399))))))
+
 (define-public u-boot-orangepi-r1-plus-lts-rk3328
   (let ((base (make-u-boot-package "orangepi-r1-plus-lts-rk3328" "aarch64-linux-gnu")))
     (package
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 2/8] gnu: u-boot: Use DDR3 patch for Nano Pi R4S.
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
@ 2024-08-26 14:45   ` Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 3/8] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
                     ` (5 subsequent siblings)
  6 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* gnu/packages/bootloaders.scm (%u-boot-nanopi-r4s-ddr3-patch): Add
variable.
(u-boot)[source]: Use patch.
* gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch: Add file.
* gnu/local.mk (dist_patch_DATA): Register patch.

Change-Id: Ibbf952f2806c9cac7fc29e1264d427bf6ee67d01
---
 gnu/local.mk                                  |  3 +-
 gnu/packages/bootloaders.scm                  |  7 +++-
 .../patches/u-boot-nanopi-r4s-ddr3.patch      | 35 +++++++++++++++++++
 3 files changed, 43 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 11dff1c6c4..93cd03fbd7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -62,7 +62,7 @@
 # Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
 # Copyright © 2023 Bruno Victal <mirai@makinata.eu>
 # Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
-# Copyright © 2023 Herman Rimm <herman@rimm.ee>
+# Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
 # Copyright © 2023 Troy Figiel <troy@troyfigiel.com>
 # Copyright © 2024 David Elsing <david.elsing@posteo.net>
 # Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
@@ -2168,6 +2168,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/u-boot-build-without-libcrypto.patch	\
   %D%/packages/patches/u-boot-nintendo-nes-serial.patch		\
   %D%/packages/patches/u-boot-rockchip-inno-usb.patch		\
+  %D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch		\
   %D%/packages/patches/ucx-tcp-iface-ioctl.patch		\
   %D%/packages/patches/ultrastar-deluxe-no-freesans.patch		\
   %D%/packages/patches/ungoogled-chromium-extension-search-path.patch	\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index f42d42c1c4..1036c62de3 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -747,6 +747,10 @@ (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
+  ;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
+  (search-patch "u-boot-nanopi-r4s-ddr3.patch"))
+
 (define u-boot
   (package
     (name "u-boot")
@@ -755,7 +759,8 @@ (define u-boot
               (patches
                (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))
               (method url-fetch)
               (uri (string-append
                     "https://ftp.denx.de/pub/u-boot/"
diff --git a/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
new file mode 100644
index 0000000000..38825bbd1b
--- /dev/null
+++ b/gnu/packages/patches/u-boot-nanopi-r4s-ddr3.patch
@@ -0,0 +1,35 @@
+Someone created a thread on the U-Boot mailing list [1], referencing work
+done to support variants of RK3399 SoCs with different types of DRAM [2].
+This patch configures the Nano Pi R4S to use DDR3 instead of LPDDR4, but
+will be removed once [2] is included in a future U-Boot release.  This
+patch was created around April 2023 by Herman Rimm <herman@rimm.ee> for
+personal use and has only been submitted to GNU Guix.
+
+[1]: https://patchwork.ozlabs.org/project/uboot/patch/WwCslkoi6ts6A8RCd6KlxuRAMpItkfneEG-3BbNbG61gWVz0A2A3-0hl_Jg7W9quLr19luuiiT7naEi7djncCaEruUOnVq3pnb9dQFU_GqY=@protonmail.com/#2973664
+[2]: https://github.com/anaelorlinski/OpenWrt-NanoPi-R2S-R4S-Builds/commit/9d836044340ddef53f5d9f1946ac48c946a78284
+
+diff --git a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
+index 69800cc368..a3054849f8 100644
+--- a/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
++++ b/arch/arm/dts/rk3399-nanopi-r4s-u-boot.dtsi
+@@ -13,7 +13,7 @@
+  */
+ 
+ #include "rk3399-nanopi4-u-boot.dtsi"
+-#include "rk3399-sdram-lpddr4-100.dtsi"
++#include "rk3399-sdram-ddr3-1866.dtsi"
+ 
+ / {
+ 	smbios {
+diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
+index 4f4363cb0f..bfa7ee628d 100644
+--- a/configs/nanopi-r4s-rk3399_defconfig
++++ b/configs/nanopi-r4s-rk3399_defconfig
+@@ -54,7 +54,6 @@ CONFIG_PMIC_RK8XX=y
+ CONFIG_REGULATOR_PWM=y
+ CONFIG_REGULATOR_RK8XX=y
+ CONFIG_PWM_ROCKCHIP=y
+-CONFIG_RAM_ROCKCHIP_LPDDR4=y
+ CONFIG_BAUDRATE=1500000
+ CONFIG_DEBUG_UART_SHIFT=2
+ CONFIG_SYS_NS16550_MEM32=y
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 3/8] gnu: firmware: Update make-arm-trusted-firmware to 2.10.
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 2/8] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
@ 2024-08-26 14:45   ` Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 4/8] gnu: u-boot: Update to 2024.07 Herman Rimm via Guix-patches via
                     ` (4 subsequent siblings)
  6 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* gnu/packages/firmware.scm(make-arm-trusted-firmware): Update to 2.10.
---
 gnu/packages/firmware.scm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 4348612567..14fa72bf7e 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1105,18 +1105,17 @@ (define* (make-arm-trusted-firmware platform
                                        (gnu-triplet->nix-system triplet))))))
     (package
       (name (string-append "arm-trusted-firmware-" platform))
-      (version "2.9")
+      (version "2.10")
       (source
        (origin
          (method git-fetch)
          (uri (git-reference
-               ;; There are only GitHub generated release snapshots.
                (url "https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/")
                (commit (string-append "v" version))))
          (file-name (git-file-name "arm-trusted-firmware" version))
          (sha256
           (base32
-           "16fjbn1zck0d8b554h8lk1svqqn0zlawvrlkjxry9l71s9h4vd0p"))
+           "099r2c5vnvl83c2saca615dryr1byj2nm6imzkg5ix4kajsry2q8"))
          (snippet
           #~(begin
               (use-modules (guix build utils))
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 4/8] gnu: u-boot: Update to 2024.07.
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 2/8] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 3/8] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
@ 2024-08-26 14:45   ` Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 5/8] gnu: python-u-boot-pylib: Fix pyproject.toml Herman Rimm via Guix-patches via
                     ` (3 subsequent siblings)
  6 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* 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
---
 gnu/local.mk                                  |   1 -
 gnu/packages/bootloaders.scm                  |  26 ++--
 .../u-boot-build-without-libcrypto.patch      | 123 ------------------
 3 files changed, 13 insertions(+), 137 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-build-without-libcrypto.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 93cd03fbd7..5ca975fbe7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2165,7 +2165,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/tuxpaint-stamps-path.patch		\
   %D%/packages/patches/twinkle-bcg729.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-rockchip-inno-usb.patch		\
   %D%/packages/patches/u-boot-nanopi-r4s-ddr3.patch		\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 1036c62de3..fa9acd0bd9 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -743,10 +743,6 @@ (define %u-boot-allow-disabling-openssl-patch
   ;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
   (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
   ;; Use DDR3 instead of LPDDR4 for the Nano Pi R4S U-boot.
   (search-patch "u-boot-nanopi-r4s-ddr3.patch"))
@@ -754,11 +750,10 @@ (define %u-boot-nanopi-r4s-ddr3-patch
 (define u-boot
   (package
     (name "u-boot")
-    (version "2024.01")
+    (version "2024.07")
     (source (origin
               (patches
                (list %u-boot-rockchip-inno-usb-patch
-                     %u-boot-build-without-libcrypto-patch
                      %u-boot-allow-disabling-openssl-patch
                      %u-boot-nanopi-r4s-ddr3-patch))
               (method url-fetch)
@@ -767,7 +762,7 @@ (define u-boot
                     "u-boot-" version ".tar.bz2"))
               (sha256
                (base32
-                "1czmpszalc6b8cj9j7q6cxcy19lnijv3916w3dag6yr3xpqi35mr"))))
+                "13rwv28g6z8ihrs8k0066gblw37rvw6nsxkks6rxdwqfp6ddm4gm"))))
     (build-system gnu-build-system)
     (native-inputs
      (list bison
@@ -864,9 +859,11 @@ (define-public u-boot-tools
                (("\\./tools/patman/patman") (which "true"))
                ;; FIXME: test fails, needs further investiation
                (("run_test \"binman\"") "# run_test \"binman\"")
-               ;; FIXME: test_spl fails, needs further investiation
-               (("test_ofplatdata or test_handoff or test_spl")
-                "test_ofplatdata or test_handoff")
+               ;; FIXME: tests fail without kwbimage, i.e. openssl.
+               (("run_test \"sandbox_noinst\"")
+                "# run_test \"sandbox_noinst\"")
+               (("run_test \"sandbox_vpl\"")
+                "# run_test \"sandbox_vpl\"")
                ;; FIXME: code coverage not working
                (("run_test \"binman code coverage\"")
                 "# run_test \"binman code coverage\"")
@@ -889,14 +886,16 @@ (define-public u-boot-tools
                            (("CONFIG_FIT_SIGNATURE=y")
                             "CONFIG_FIT_SIGNATURE=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
                            ;; with VPL targets
                            (("CONFIG_SANDBOX_VPL=y")
                             "CONFIG_SANDBOX_VPL=y
 CONFIG_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
                            ;; in u-boot-tools.
                            (("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
@@ -1098,7 +1097,8 @@ (define*-public (make-u-boot-package board triplet
                 (lambda _
                   (substitute* ".config"
                     (("CONFIG_TOOLS_LIBCRYPTO=.*$")
-                     "CONFIG_TOOLS_LIBCRYPTO=n"))))
+                     "CONFIG_TOOLS_LIBCRYPTO=n
+CONFIG_TOOLS_KWBIMAGE=n"))))
               (replace 'install
                 (lambda _
                   (let ((libexec (string-append #$output "/libexec"))
diff --git a/gnu/packages/patches/u-boot-build-without-libcrypto.patch b/gnu/packages/patches/u-boot-build-without-libcrypto.patch
deleted file mode 100644
index d56588941c..0000000000
--- a/gnu/packages/patches/u-boot-build-without-libcrypto.patch
+++ /dev/null
@@ -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
-
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 5/8] gnu: python-u-boot-pylib: Fix pyproject.toml.
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
                     ` (2 preceding siblings ...)
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 4/8] gnu: u-boot: Update to 2024.07 Herman Rimm via Guix-patches via
@ 2024-08-26 14:45   ` Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 6/8] gnu: u-boot-rockpro64-rk3399: Unconfigure CONFIG_DM_SCSI Herman Rimm via Guix-patches via
                     ` (2 subsequent siblings)
  6 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* gnu/packages/bootloaders.scm (python-u-boot-pylib)[arguments]: Add
list-package phase.
---
 gnu/packages/bootloaders.scm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index fa9acd0bd9..d8d1add399 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -958,6 +958,13 @@ (define-public python-u-boot-pylib
           (add-after 'unpack 'chdir
             (lambda _
               (chdir "tools/u_boot_pylib")))
+          (add-after 'chdir 'list-package
+            (lambda _
+              (let ((port (open-file "pyproject.toml" "a")))
+                (display "[tool.setuptools.packages.find]\n" port)
+                (display "where = [\"..\"]\n" port)
+                (display "include = [\"u_boot_pylib*\"]" port)
+                (close-port port))))
           (replace 'check
             (lambda* (#:key tests? #:allow-other-keys)
               (when tests?
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 6/8] gnu: u-boot-rockpro64-rk3399: Unconfigure CONFIG_DM_SCSI.
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
                     ` (3 preceding siblings ...)
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 5/8] gnu: python-u-boot-pylib: Fix pyproject.toml Herman Rimm via Guix-patches via
@ 2024-08-26 14:45   ` Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 7/8] gnu: u-boot-sandbox: Unconfigure CONFIG_RSA and CONFIG_TOOLS_LIBCRYPTO Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 8/8] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
  6 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* gnu/packages/bootloaders (u-boot-rockpro64-rk3399): Remove
CONFIG_DM_SCSI in favor of CONFIG_SCSI.
---
 gnu/packages/bootloaders.scm | 1 -
 1 file changed, 1 deletion(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index d8d1add399..127340d4c1 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1463,7 +1463,6 @@ (define-public u-boot-rockpro64-rk3399
                                                "CONFIG_SATA_SIL=y"
                                                "CONFIG_SCSI=y"
                                                "CONFIG_SCSI_AHCI=y"
-                                               "CONFIG_DM_SCSI=y"
                                                ;; Disable SPL FIT signatures,
                                                ;; due to GPLv2 and Openssl
                                                ;; license incompatibilities
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 7/8] gnu: u-boot-sandbox: Unconfigure CONFIG_RSA and CONFIG_TOOLS_LIBCRYPTO.
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
                     ` (4 preceding siblings ...)
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 6/8] gnu: u-boot-rockpro64-rk3399: Unconfigure CONFIG_DM_SCSI Herman Rimm via Guix-patches via
@ 2024-08-26 14:45   ` Herman Rimm via Guix-patches via
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 8/8] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
  6 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* gnu/packages/bootloaders.scm (u-boot-sandbox): Remove CONFIG_RSA and
CONFIG_TOOLS_LIBCRYPTO.
---
 gnu/packages/bootloaders.scm | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 127340d4c1..69c0e0fcfd 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1340,9 +1340,7 @@ (define-public u-boot-sandbox
                                "# CONFIG_IMAGE_PRE_LOAD is not set"
                                "# CONFIG_IMAGE_PRE_LOAD_SIG is not set"
                                "# CONFIG_CMD_BOOTM_PRE_LOAD is not set"
-                               "CONFIG_RSA=y"
-                               "# CONFIG_EFI_SECURE_BOOT is not set"
-                               "# CONFIG_TOOLS_LIBCRYPTO is not set")
+                               "# CONFIG_EFI_SECURE_BOOT is not set")
                #:append-description
                "The sandbox configuration of U-Boot provides a
 @command{u-boot} command that runs as a normal user space application.  It can
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v2 8/8] gnu: bootloader: Add orangepi-zero2w bootloader.
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
                     ` (5 preceding siblings ...)
  2024-08-26 14:45   ` [bug#70131] [PATCH v2 7/8] gnu: u-boot-sandbox: Unconfigure CONFIG_RSA and CONFIG_TOOLS_LIBCRYPTO Herman Rimm via Guix-patches via
@ 2024-08-26 14:45   ` Herman Rimm via Guix-patches via
  6 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-08-26 14:45 UTC (permalink / raw)
  To: 70131

* gnu/bootloader/u-boot.scm (u-boot-orangepi-zero2w-bootloader): Add
variable.
* gnu/packages/bootloaders.scm (u-boot-orangepi-zero2w): Add variable.
* gnu/packages/firmware.scm (arm-trusted-firmware-sun50i-h616): Add
variable.

Change-Id: Idb43fdabac51b3301f3bea24fec72bfa29636489
---
 gnu/bootloader/u-boot.scm    |  6 ++++++
 gnu/packages/bootloaders.scm | 18 ++++++++++++++++++
 gnu/packages/firmware.scm    |  6 ++++++
 3 files changed, 30 insertions(+)

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 7888a4e030..7fd7288854 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -41,6 +41,7 @@ (define-module (gnu bootloader u-boot)
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
             u-boot-orangepi-r1-plus-lts-rk3328-bootloader
+            u-boot-orangepi-zero2w-bootloader
             u-boot-pine64-plus-bootloader
             u-boot-pine64-lts-bootloader
             u-boot-pinebook-bootloader
@@ -296,6 +297,11 @@ (define u-boot-orangepi-r1-plus-lts-rk3328-bootloader
    (package u-boot-orangepi-r1-plus-lts-rk3328)
    (disk-image-installer install-orangepi-r1-plus-lts-rk3328-u-boot)))
 
+(define u-boot-orangepi-zero2w-bootloader
+  (bootloader
+   (inherit u-boot-allwinner-bootloader)
+   (package u-boot-orangepi-zero2w)))
+
 (define u-boot-pine64-plus-bootloader
   (bootloader
    (inherit u-boot-allwinner64-bootloader)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 69c0e0fcfd..3befa1adfd 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1178,6 +1178,24 @@ (define*-public (make-u-boot-sunxi64-package board triplet scp-firmware
        (modify-inputs (package-inputs base)
          (append arm-trusted-firmware-sun50i-a64))))))
 
+(define-public u-boot-orangepi-zero2w
+  (let ((base (make-u-boot-package
+               "orangepi_zero2w" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base)
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key native-inputs inputs #:allow-other-keys)
+                  (setenv "SCP" "/dev/null")
+                  (setenv "BL31" (search-input-file inputs "bl31.bin"))))))))
+      (inputs
+       (modify-inputs (package-inputs base)
+         ;; The Zero 2W uses the slightly revised Allwinner H618.
+         (append arm-trusted-firmware-sun50i-h616))))))
+
 (define-public u-boot-pine64-plus
   (make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu"
                                (delay crust-pine64-plus)))
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 14fa72bf7e..8af5867dfd 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1165,6 +1165,12 @@ (define-public arm-trusted-firmware-sun50i-a64
       (inherit base)
       (name "arm-trusted-firmware-sun50i-a64"))))
 
+(define-public arm-trusted-firmware-sun50i-h616
+  (let ((base (make-arm-trusted-firmware "sun50i_h616")))
+    (package
+      (inherit base)
+      (name "arm-trusted-firmware-sun50i-h616"))))
+
 (define-public arm-trusted-firmware-rk3328
   (make-arm-trusted-firmware "rk3328"))
 
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 0/6] Update U-Boot.
  2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
                   ` (6 preceding siblings ...)
  2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
@ 2024-12-13 19:58 ` Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 1/6] Revert "gnu: u-boot-tools: Fix segfault while running tests." Herman Rimm via Guix-patches via
                     ` (7 more replies)
  7 siblings, 8 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-12-13 19:58 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

Hello,

The first and second patch should be applied together.  The second patch
updates U-Boot to v2024.10, and the patches for u-boot-rockpro64-rk3399
and u-boot-sandbox are updated and squashed into it.

I turned the ARM Trusted Firmware patch into #74849.  The last patch of
this series requires [PATCH 3/6] of #74849.

I will submit the patches adding Nano Pi R4S, etc. support as part of
#72987, in case they also work with future revisions of this series.
The fourth patch is split off from [PATCH v2] of #72987.  The third and
fifth patches are completely new.

Cheers,
Herman

Herman Rimm (6):
  Revert "gnu: u-boot-tools: Fix segfault while running tests."
  gnu: u-boot: Update to 2024.10.
  gnu: u-boot-tools: Remove extraneous native-input.
  gnu: u-boot: Use search-patches.
  gnu: bootloaders: u-boot-sandbox: Reformat.
  gnu: u-boot: Use guix-name.

 gnu/local.mk                                  |   2 -
 gnu/packages/bootloaders.scm                  | 139 +++++++-------
 .../u-boot-allow-disabling-openssl.patch      |   3 +
 .../u-boot-build-without-libcrypto.patch      | 123 -------------
 .../patches/u-boot-calloc-visibility.patch    |  18 --
 .../patches/u-boot-rockchip-inno-usb.patch    | 171 ++----------------
 6 files changed, 80 insertions(+), 376 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-build-without-libcrypto.patch
 delete mode 100644 gnu/packages/patches/u-boot-calloc-visibility.patch


base-commit: 0787a180b3ca64d3958438920ca1b58a2a27fba4
-- 
2.45.2





^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 1/6] Revert "gnu: u-boot-tools: Fix segfault while running tests."
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
@ 2024-12-13 19:58   ` Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 2/6] gnu: u-boot: Update to 2024.10 Herman Rimm via Guix-patches via
                     ` (6 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-12-13 19:58 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

This reverts commit e526b8b11debb184929abd013b7d589c9db245fa.
---
 gnu/local.mk                                   |  1 -
 gnu/packages/bootloaders.scm                   |  3 +--
 .../patches/u-boot-calloc-visibility.patch     | 18 ------------------
 3 files changed, 1 insertion(+), 21 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-calloc-visibility.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 39b142af5a..14b8c6932e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2275,7 +2275,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/twinkle-bcg729.patch			\
   %D%/packages/patches/u-boot-allow-disabling-openssl.patch	\
   %D%/packages/patches/u-boot-build-without-libcrypto.patch	\
-  %D%/packages/patches/u-boot-calloc-visibility.patch		\
   %D%/packages/patches/u-boot-nintendo-nes-serial.patch		\
   %D%/packages/patches/u-boot-rockchip-inno-usb.patch		\
   %D%/packages/patches/ucx-tcp-iface-ioctl.patch		\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 788c7dc9ef..db2cfd1131 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -766,8 +766,7 @@ (define u-boot
               (patches
                (list %u-boot-rockchip-inno-usb-patch
                      %u-boot-build-without-libcrypto-patch
-                     %u-boot-allow-disabling-openssl-patch
-                     (search-patch "u-boot-calloc-visibility.patch")))
+                     %u-boot-allow-disabling-openssl-patch))
               (method url-fetch)
               (uri (string-append
                     "https://ftp.denx.de/pub/u-boot/"
diff --git a/gnu/packages/patches/u-boot-calloc-visibility.patch b/gnu/packages/patches/u-boot-calloc-visibility.patch
deleted file mode 100644
index 93c52ff709..0000000000
--- a/gnu/packages/patches/u-boot-calloc-visibility.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Arrange so that LLVM's shared object doesn't end up using 'calloc' from
-U-Boot's 'malloc_simple.c' when it's initialized.
-
-  https://issues.guix.gnu.org/74270
-
-diff --git a/common/malloc_simple.c b/common/malloc_simple.c
-index 5a8ec538f8..4f5e350a3c 100644
---- a/common/malloc_simple.c
-+++ b/common/malloc_simple.c
-@@ -64,6 +64,8 @@ void *memalign_simple(size_t align, size_t bytes)
- }
- 
- #if CONFIG_IS_ENABLED(SYS_MALLOC_SIMPLE)
-+void *calloc(size_t nmemb, size_t elem_size)
-+  __attribute__ ((visibility ("hidden")));
- void *calloc(size_t nmemb, size_t elem_size)
- {
- 	size_t size = nmemb * elem_size;
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 2/6] gnu: u-boot: Update to 2024.10.
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 1/6] Revert "gnu: u-boot-tools: Fix segfault while running tests." Herman Rimm via Guix-patches via
@ 2024-12-13 19:58   ` Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 3/6] gnu: u-boot-tools: Remove extraneous native-input Herman Rimm via Guix-patches via
                     ` (5 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-12-13 19:58 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (u-boot): Update to 2024.10.
[source]: Remove build-without-libcrypto patch.  Use git-fetch.
(%u-boot-build-without-libcrypto-patch): Remove variable.
(u-boot-tools)[arguments]: Enable test_spl.  Disable sandbox tests and
kwbimage.
(python-u-boot-pylib)[arguments]: Add phase to fix build file.
(make-u-boot-package)[arguments]: Disable kwbimage.
(u-boot-sandbox): Only keep CONFIG_FIT_CIPHER disabled.
[inputs]: Add efitools.
(u-boot-rockpro64-rk3399): Replace CONFIG_DM_SCSI with CONFIG_SCSI.
* gnu/packages/patches/u-boot-build-without-libcrypto.patch: Delete.
* gnu/local.mk (dist_patch_DATA): Remove patch.

Change-Id: I07cb0df0431ed45af0beb05105ae948136dd9eb3
---
 gnu/local.mk                                  |   1 -
 gnu/packages/bootloaders.scm                  |  66 +++++-----
 .../u-boot-build-without-libcrypto.patch      | 123 ------------------
 3 files changed, 32 insertions(+), 158 deletions(-)
 delete mode 100644 gnu/packages/patches/u-boot-build-without-libcrypto.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 14b8c6932e..ace19eb8a4 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2274,7 +2274,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/tuxpaint-stamps-path.patch		\
   %D%/packages/patches/twinkle-bcg729.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-rockchip-inno-usb.patch		\
   %D%/packages/patches/ucx-tcp-iface-ioctl.patch		\
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index db2cfd1131..584a285c61 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -54,6 +54,7 @@ (define-module (gnu packages bootloaders)
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages guile)
+  #:use-module (gnu packages efi)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages llvm)
   #:use-module (gnu packages man)
@@ -754,26 +755,22 @@ (define %u-boot-allow-disabling-openssl-patch
   ;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
   (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
   (package
     (name "u-boot")
-    (version "2024.01")
+    (version "2024.10")
     (source (origin
               (patches
                (list %u-boot-rockchip-inno-usb-patch
-                     %u-boot-build-without-libcrypto-patch
                      %u-boot-allow-disabling-openssl-patch))
-              (method url-fetch)
-              (uri (string-append
-                    "https://ftp.denx.de/pub/u-boot/"
-                    "u-boot-" version ".tar.bz2"))
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://source.denx.de/u-boot/u-boot.git")
+                     (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
               (sha256
                (base32
-                "1czmpszalc6b8cj9j7q6cxcy19lnijv3916w3dag6yr3xpqi35mr"))))
+                "0yrhb0izihv47p781dc4cp0znc5g225ayl7anz23c6jdrmfbpz2h"))))
     (build-system gnu-build-system)
     (native-inputs
      (list bison
@@ -870,9 +867,11 @@ (define-public u-boot-tools
                (("\\./tools/patman/patman") (which "true"))
                ;; FIXME: test fails, needs further investiation
                (("run_test \"binman\"") "# run_test \"binman\"")
-               ;; FIXME: test_spl fails, needs further investiation
-               (("test_ofplatdata or test_handoff or test_spl")
-                "test_ofplatdata or test_handoff")
+               ;; FIXME: tests fail without kwbimage, i.e. openssl.
+               (("run_test \"sandbox_noinst\"")
+                "# run_test \"sandbox_noinst\"")
+               (("run_test \"sandbox_vpl\"")
+                "# run_test \"sandbox_vpl\"")
                ;; FIXME: code coverage not working
                (("run_test \"binman code coverage\"")
                 "# run_test \"binman code coverage\"")
@@ -895,14 +894,16 @@ (define-public u-boot-tools
                            (("CONFIG_FIT_SIGNATURE=y")
                             "CONFIG_FIT_SIGNATURE=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
                            ;; with VPL targets
                            (("CONFIG_SANDBOX_VPL=y")
                             "CONFIG_SANDBOX_VPL=y
 CONFIG_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
                            ;; in u-boot-tools.
                            (("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
@@ -968,6 +969,13 @@ (define-public python-u-boot-pylib
           (add-after 'unpack 'chdir
             (lambda _
               (chdir "tools/u_boot_pylib")))
+          (add-after 'chdir 'list-package
+            (lambda _
+              (let ((port (open-file "pyproject.toml" "a")))
+                (display "[tool.setuptools.packages.find]\n" port)
+                (display "where = [\"..\"]\n" port)
+                (display "include = [\"u_boot_pylib*\"]" port)
+                (close-port port))))
           (replace 'check
             (lambda* (#:key tests? #:allow-other-keys)
               (when tests?
@@ -1114,7 +1122,8 @@ (define*-public (make-u-boot-package board triplet
                 (lambda _
                   (substitute* ".config"
                     (("CONFIG_TOOLS_LIBCRYPTO=.*$")
-                     "CONFIG_TOOLS_LIBCRYPTO=n"))))
+                     "CONFIG_TOOLS_LIBCRYPTO=n
+CONFIG_TOOLS_KWBIMAGE=n"))))
               (replace 'install
                 (lambda _
                   (let ((libexec (string-append #$output "/libexec"))
@@ -1322,21 +1331,10 @@ (define-public u-boot-qemu-riscv64-smode
 (define-public u-boot-sandbox
   (let ((base (make-u-boot-package
                "sandbox" #f             ;build for the native system
-               ;; Disable CONFIG_TOOLS_LIBCRYPTO, CONFIG_FIT_SIGNATURE and
-               ;; CONFIG_FIT_CIPHER and their selectors as these features
-               ;; require OpenSSL, which is incompatible with the GPLv2-only
-               ;; parts of U-boot.  The options below replicate the changes
-               ;; that disabling the above features in 'make menuconfig' then
-               ;; refreshing the defconfig with 'make savedefconfig' would do.
-               #:configs (list "# CONFIG_FIT_RSASSA_PSS is not set"
-                               "# CONFIG_FIT_CIPHER is not set"
-                               "# CONFIG_LEGACY_IMAGE_FORMAT is not set"
-                               "# CONFIG_IMAGE_PRE_LOAD is not set"
-                               "# CONFIG_IMAGE_PRE_LOAD_SIG is not set"
-                               "# CONFIG_CMD_BOOTM_PRE_LOAD is not set"
-                               "CONFIG_RSA=y"
-                               "# CONFIG_EFI_SECURE_BOOT is not set"
-                               "# CONFIG_TOOLS_LIBCRYPTO is not set")
+               ;; These disabled features require OpenSSL, which is
+               ;; incompatible with the GPLv2-only parts of U-boot.
+               #:configs (map (cut string-append "# CONFIG_" <> " is not set")
+                              '("FIT_CIPHER"))
                #:append-description
                "The sandbox configuration of U-Boot provides a
 @command{u-boot} command that runs as a normal user space application.  It can
@@ -1356,8 +1354,9 @@ (define-public u-boot-sandbox
                   (mkdir (string-append #$output "/bin"))
                   (symlink (search-input-file outputs "libexec/u-boot")
                            (string-append #$output "/bin/u-boot"))))))))
+      ;; cert-to-efi-sig-list from efitools creates the EFI capsule ESL.
       (inputs (modify-inputs (package-inputs base)
-                (append sdl2))))))
+                (append efitools sdl2))))))
 
 (define-public u-boot-sifive-unleashed
   (let ((base (make-u-boot-package "sifive_unleashed" "riscv64-linux-gnu")))
@@ -1457,7 +1456,6 @@ (define-public u-boot-rockpro64-rk3399
                                                "CONFIG_SATA_SIL=y"
                                                "CONFIG_SCSI=y"
                                                "CONFIG_SCSI_AHCI=y"
-                                               "CONFIG_DM_SCSI=y"
                                                ;; Disable SPL FIT signatures,
                                                ;; due to GPLv2 and Openssl
                                                ;; license incompatibilities
diff --git a/gnu/packages/patches/u-boot-build-without-libcrypto.patch b/gnu/packages/patches/u-boot-build-without-libcrypto.patch
deleted file mode 100644
index d56588941c..0000000000
--- a/gnu/packages/patches/u-boot-build-without-libcrypto.patch
+++ /dev/null
@@ -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
-
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 3/6] gnu: u-boot-tools: Remove extraneous native-input.
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 1/6] Revert "gnu: u-boot-tools: Fix segfault while running tests." Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 2/6] gnu: u-boot: Update to 2024.10 Herman Rimm via Guix-patches via
@ 2024-12-13 19:58   ` Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 4/6] gnu: u-boot: Use search-patches Herman Rimm via Guix-patches via
                     ` (4 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-12-13 19:58 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/package/bootloaders.scm (u-boot-tools)[native-inputs]: Remove
sdl2.

Change-Id: I14d8a605f5e7232f6047ddccfcbd0249ee4b661c
---
 gnu/packages/bootloaders.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 584a285c61..2a3ca30046 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -838,8 +838,7 @@ (define-public u-boot-tools
                 python-filelock
                 python-pycryptodomex
                 python-pytest
-                python-pytest-xdist
-                sdl2)))
+                python-pytest-xdist)))
     (arguments
      `(#:make-flags '("HOSTCC=gcc")
        #:test-target "tcheck"
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 4/6] gnu: u-boot: Use search-patches.
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
                     ` (2 preceding siblings ...)
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 3/6] gnu: u-boot-tools: Remove extraneous native-input Herman Rimm via Guix-patches via
@ 2024-12-13 19:58   ` Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 5/6] gnu: bootloaders: u-boot-sandbox: Reformat Herman Rimm via Guix-patches via
                     ` (3 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-12-13 19:58 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (%u-boot-rockchip-inno-usb-patch,
%u-boot-allow-disabling-openssl-patch): Remove variables, move comments.
(u-boot)[source]: Use search-patches.
* gnu/packages/patches/u-boot-allow-disabling-openssl.patch: Comment.
* gnu/packages/patches/u-boot-rockchip-inno-usb.patch: Remove E-Mail
metadata.  Replace diffstat with comments.  Reapply to U-Boot v2024.10.

Change-Id: I760a2e81bddfc2a80ef149fe1ac4496cbbd937a0
---
 gnu/packages/bootloaders.scm                  |  34 ++--
 .../u-boot-allow-disabling-openssl.patch      |   3 +
 .../patches/u-boot-rockchip-inno-usb.patch    | 171 ++----------------
 3 files changed, 30 insertions(+), 178 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 2a3ca30046..ca189fca3a 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -744,33 +744,21 @@ (define-public dtc
 tree binary files.  These are board description files used by Linux and BSD.")
     (license license:gpl2+)))
 
-(define %u-boot-rockchip-inno-usb-patch
-  ;; Fix regression in 2020.10 causing freezes on boot with USB boot enabled.
-  ;; See https://gitlab.manjaro.org/manjaro-arm/packages/core/uboot-rockpro64/-/issues/4
-  ;; and https://patchwork.ozlabs.org/project/uboot/patch/20210406151059.1187379-1-icenowy@aosc.io
-  (search-patch "u-boot-rockchip-inno-usb.patch"))
-
-(define %u-boot-allow-disabling-openssl-patch
-  ;; Fixes build of u-boot 2021.10 without openssl
-  ;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
-  (search-patch "u-boot-allow-disabling-openssl.patch"))
-
 (define u-boot
   (package
     (name "u-boot")
     (version "2024.10")
-    (source (origin
-              (patches
-               (list %u-boot-rockchip-inno-usb-patch
-                     %u-boot-allow-disabling-openssl-patch))
-              (method git-fetch)
-              (uri (git-reference
-                     (url "https://source.denx.de/u-boot/u-boot.git")
-                     (commit (string-append "v" version))))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "0yrhb0izihv47p781dc4cp0znc5g225ayl7anz23c6jdrmfbpz2h"))))
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+              (url "https://source.denx.de/u-boot/u-boot.git")
+              (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0yrhb0izihv47p781dc4cp0znc5g225ayl7anz23c6jdrmfbpz2h"))
+       (patches (search-patches "u-boot-allow-disabling-openssl.patch"
+                                "u-boot-rockchip-inno-usb.patch"))))
     (build-system gnu-build-system)
     (native-inputs
      (list bison
diff --git a/gnu/packages/patches/u-boot-allow-disabling-openssl.patch b/gnu/packages/patches/u-boot-allow-disabling-openssl.patch
index 9201f9a51d..308424e1a4 100644
--- a/gnu/packages/patches/u-boot-allow-disabling-openssl.patch
+++ b/gnu/packages/patches/u-boot-allow-disabling-openssl.patch
@@ -10,6 +10,9 @@ CONFIG_FIT_PRELOAD to remove fit_pre_load_data, which depends on openssl.
 
 Addendum 2024-01-18, Herman Rimm: Patch updated to leave out upstreamed
 diffs with CONFIG_FIT_PRELOAD.
+---
+Fixes build of U-Boot v2021.10 without openssl.  See:
+https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
 
 diff --git a/tools/kwbimage.c b/tools/kwbimage.c
 index 4dce495ff0..976174ae77 100644
diff --git a/gnu/packages/patches/u-boot-rockchip-inno-usb.patch b/gnu/packages/patches/u-boot-rockchip-inno-usb.patch
index eeb25f4b89..5962e19e01 100644
--- a/gnu/packages/patches/u-boot-rockchip-inno-usb.patch
+++ b/gnu/packages/patches/u-boot-rockchip-inno-usb.patch
@@ -1,149 +1,7 @@
-Downloaded from:
-https://patchwork.ozlabs.org/project/uboot/patch/20210406151059.1187379-1-icenowy@aosc.io
-
-From patchwork Tue Apr  6 15:10:59 2021
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-X-Patchwork-Submitter: Icenowy Zheng <icenowy@aosc.io>
-X-Patchwork-Id: 1462876
-X-Patchwork-Delegate: ykai007@gmail.com
-Return-Path: <u-boot-bounces@lists.denx.de>
-X-Original-To: incoming@patchwork.ozlabs.org
-Delivered-To: patchwork-incoming@bilbo.ozlabs.org
-Authentication-Results: ozlabs.org;
- spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de
- (client-ip=85.214.62.61; helo=phobos.denx.de;
- envelope-from=u-boot-bounces@lists.denx.de; receiver=<UNKNOWN>)
-Authentication-Results: ozlabs.org;
-	dkim=fail reason="signature verification failed" (1024-bit key;
- unprotected) header.d=mymailcheap.com header.i=@mymailcheap.com
- header.a=rsa-sha256 header.s=default header.b=unszVtqT;
-	dkim=fail reason="signature verification failed" (1024-bit key;
- unprotected) header.d=aosc.io header.i=@aosc.io header.a=rsa-sha256
- header.s=default header.b=mWwYCh9A;
-	dkim-atps=neutral
-Received: from phobos.denx.de (phobos.denx.de [85.214.62.61])
-	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
-	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest
- SHA256)
-	(No client certificate requested)
-	by ozlabs.org (Postfix) with ESMTPS id 4FF9wc3GdNz9sW1
-	for <incoming@patchwork.ozlabs.org>; Wed,  7 Apr 2021 01:11:42 +1000 (AEST)
-Received: from h2850616.stratoserver.net (localhost [IPv6:::1])
-	by phobos.denx.de (Postfix) with ESMTP id C1F9C8040A;
-	Tue,  6 Apr 2021 17:11:32 +0200 (CEST)
-Authentication-Results: phobos.denx.de;
- dmarc=none (p=none dis=none) header.from=aosc.io
-Authentication-Results: phobos.denx.de;
- spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de
-Authentication-Results: phobos.denx.de;
-	dkim=fail reason="signature verification failed" (1024-bit key;
- unprotected) header.d=mymailcheap.com header.i=@mymailcheap.com
- header.b="unszVtqT";
-	dkim=fail reason="signature verification failed" (1024-bit key;
- unprotected) header.d=aosc.io header.i=@aosc.io header.b="mWwYCh9A";
-	dkim-atps=neutral
-Received: by phobos.denx.de (Postfix, from userid 109)
- id E4F22805B4; Tue,  6 Apr 2021 17:11:30 +0200 (CEST)
-X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de
-X-Spam-Level: 
-X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,
- DKIM_VALID,DKIM_VALID_AU,SPF_HELO_NONE autolearn=ham
- autolearn_force=no version=3.4.2
-Received: from relay3.mymailcheap.com (relay3.mymailcheap.com
- [217.182.66.161])
- (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
- (No client certificate requested)
- by phobos.denx.de (Postfix) with ESMTPS id 2FC4A8039D
- for <u-boot@lists.denx.de>; Tue,  6 Apr 2021 17:11:27 +0200 (CEST)
-Authentication-Results: phobos.denx.de;
- dmarc=none (p=none dis=none) header.from=aosc.io
-Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=icenowy@aosc.io
-Received: from filter2.mymailcheap.com (filter2.mymailcheap.com
- [91.134.140.82])
- by relay3.mymailcheap.com (Postfix) with ESMTPS id A6AC13ECDF;
- Tue,  6 Apr 2021 17:11:26 +0200 (CEST)
-Received: from localhost (localhost [127.0.0.1])
- by filter2.mymailcheap.com (Postfix) with ESMTP id 88D512A915;
- Tue,  6 Apr 2021 17:11:26 +0200 (CEST)
-DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mymailcheap.com;
- s=default; t=1617721886;
- bh=qb5gt5o7M9qjdJd67A3WHGZp/76w4s4FS6+u1VuEh/o=;
- h=From:To:Cc:Subject:Date:From;
- b=unszVtqTnO9MGZVbgLH5H0cMo3VfQ+g5377blmOUcrtzMSqNbDD5SM25MUhlTUKiB
- hTFq4L53gszBYfRPfh7Z5XgNVERULL5Zx0+WnVjZ7kUIp/wS3IQqxe81ChoFEsLTr8
- 22UB9NN3OSVkuN/jRAzX+lKpugVGBHwOCjZBZukQ=
-Received: from filter2.mymailcheap.com ([127.0.0.1])
- by localhost (filter2.mymailcheap.com [127.0.0.1]) (amavisd-new, port 10024)
- with ESMTP id V9lVOgo6gApH; Tue,  6 Apr 2021 17:11:25 +0200 (CEST)
-Received: from mail20.mymailcheap.com (mail20.mymailcheap.com [51.83.111.147])
- (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))
- (No client certificate requested)
- by filter2.mymailcheap.com (Postfix) with ESMTPS;
- Tue,  6 Apr 2021 17:11:25 +0200 (CEST)
-Received: from [213.133.102.83] (ml.mymailcheap.com [213.133.102.83])
- by mail20.mymailcheap.com (Postfix) with ESMTP id C9EA3400B6;
- Tue,  6 Apr 2021 15:11:24 +0000 (UTC)
-Authentication-Results: mail20.mymailcheap.com; dkim=pass (1024-bit key;
- unprotected) header.d=aosc.io header.i=@aosc.io header.b="mWwYCh9A";
- dkim-atps=neutral
-AI-Spam-Status: Not processed
-Received: from ice-e5v2.lan (unknown [59.41.163.135])
- (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
- key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest
- SHA256) (No client certificate requested)
- by mail20.mymailcheap.com (Postfix) with ESMTPSA id 251F840C16;
- Tue,  6 Apr 2021 15:11:10 +0000 (UTC)
-DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=aosc.io; s=default;
- t=1617721874; bh=qb5gt5o7M9qjdJd67A3WHGZp/76w4s4FS6+u1VuEh/o=;
- h=From:To:Cc:Subject:Date:From;
- b=mWwYCh9AM8eRWm9hiEqirytotj/G/C1p9r2fd0zUxPhS0UQH+kw6L3RWZnsfmXAYq
- HmYFiM3ktIfwevqQw89tOi8c2ktb49iYOyHXkfi8hTZl1dNsJDS94uyzBiHYY+U7x5
- P0aTRRaL5C8ua2c1GedoPx06nrARO/KMEFy39rxI=
 From: Icenowy Zheng <icenowy@aosc.io>
-To: Simon Glass <sjg@chromium.org>, Kever Yang <kever.yang@rock-chips.com>,
- Frank Wang <frank.wang@rock-chips.com>,
- Jagan Teki <jagan@amarulasolutions.com>
-Cc: u-boot@lists.denx.de,
-	Icenowy Zheng <icenowy@aosc.io>
+Date: Tue, 6 Apr 2021 23:10:59 +0800
 Subject: [PATCH] phy: rockchip: inno-usb2: fix hang when multiple controllers
  exit
-Date: Tue,  6 Apr 2021 23:10:59 +0800
-Message-Id: <20210406151059.1187379-1-icenowy@aosc.io>
-X-Mailer: git-send-email 2.30.2
-MIME-Version: 1.0
-X-Rspamd-Server: mail20.mymailcheap.com
-X-Spamd-Result: default: False [4.90 / 20.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
- ARC_NA(0.00)[]; R_DKIM_ALLOW(0.00)[aosc.io:s=default];
- RECEIVED_SPAMHAUS_PBL(0.00)[59.41.163.135:received];
- FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[];
- R_MISSING_CHARSET(2.50)[]; TO_MATCH_ENVRCPT_ALL(0.00)[];
- MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[aosc.io];
- BROKEN_CONTENT_TYPE(1.50)[]; R_SPF_SOFTFAIL(0.00)[~all];
- RCPT_COUNT_FIVE(0.00)[6]; ML_SERVERS(-3.10)[213.133.102.83];
- DKIM_TRACE(0.00)[aosc.io:+]; MID_CONTAINS_FROM(1.00)[];
- RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[];
- MIME_TRACE(0.00)[0:+];
- ASN(0.00)[asn:24940, ipnet:213.133.96.0/19, country:DE];
- RCVD_COUNT_TWO(0.00)[2];
- HFILTER_HELO_BAREIP(3.00)[213.133.102.83,1]
-X-Rspamd-Queue-Id: C9EA3400B6
-X-BeenThere: u-boot@lists.denx.de
-X-Mailman-Version: 2.1.34
-Precedence: list
-List-Id: U-Boot discussion <u-boot.lists.denx.de>
-List-Unsubscribe: <https://lists.denx.de/options/u-boot>,
- <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>
-List-Archive: <https://lists.denx.de/pipermail/u-boot/>
-List-Post: <mailto:u-boot@lists.denx.de>
-List-Help: <mailto:u-boot-request@lists.denx.de?subject=help>
-List-Subscribe: <https://lists.denx.de/listinfo/u-boot>,
- <mailto:u-boot-request@lists.denx.de?subject=subscribe>
-Errors-To: u-boot-bounces@lists.denx.de
-Sender: "U-Boot" <u-boot-bounces@lists.denx.de>
-X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de
-X-Virus-Status: Clean
 
 The OHCI and EHCI controllers are both bound to the same PHY. They will
 both do init and power_on operations when the controller is brought up
@@ -166,23 +24,26 @@ Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
 Fixes: ac97a9ece14e ("phy: rockchip: Add Rockchip USB2PHY driver")
 Tested-by: Peter Robinson <pbrobinson@gmail.com>
 ---
- drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 21 +++++++++++++++++++
- 1 file changed, 21 insertions(+)
+Fix U-Boot v2020.10 regression, freezing on boot with USB boot enabled:
+https://gitlab.manjaro.org/manjaro-arm/packages/core/uboot-rockpro64/-/issues/4
+
+Downloaded from:
+https://patchwork.ozlabs.org/project/uboot/patch/20210406151059.1187379-1-icenowy@aosc.io
 
 diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
-index 70e61eccb7..ce36db94a7 100644
+index 43f6e020a6a..2086192445d 100644
 --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
 +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
-@@ -64,6 +64,8 @@ struct rockchip_usb2phy {
- 	void *reg_base;
+@@ -47,6 +47,8 @@ struct rockchip_usb2phy {
+ 	struct regmap *reg_base;
  	struct clk phyclk;
  	const struct rockchip_usb2phy_cfg *phy_cfg;
 +	int init_count;
 +	int power_on_count;
  };
  
- static inline int property_enable(void *reg_base,
-@@ -106,6 +108,10 @@ static int rockchip_usb2phy_power_on(struct phy *phy)
+ static inline int property_enable(struct regmap *base,
+@@ -98,6 +100,10 @@ static int rockchip_usb2phy_power_on(struct phy *phy)
  	struct rockchip_usb2phy *priv = dev_get_priv(parent);
  	const struct rockchip_usb2phy_port_cfg *port_cfg = us2phy_get_port(phy);
  
@@ -193,7 +54,7 @@ index 70e61eccb7..ce36db94a7 100644
  	property_enable(priv->reg_base, &port_cfg->phy_sus, false);
  
  	/* waiting for the utmi_clk to become stable */
-@@ -120,6 +126,10 @@ static int rockchip_usb2phy_power_off(struct phy *phy)
+@@ -112,6 +118,10 @@ static int rockchip_usb2phy_power_off(struct phy *phy)
  	struct rockchip_usb2phy *priv = dev_get_priv(parent);
  	const struct rockchip_usb2phy_port_cfg *port_cfg = us2phy_get_port(phy);
  
@@ -204,8 +65,8 @@ index 70e61eccb7..ce36db94a7 100644
  	property_enable(priv->reg_base, &port_cfg->phy_sus, true);
  
  	return 0;
-@@ -132,6 +142,10 @@ static int rockchip_usb2phy_init(struct phy *phy)
- 	const struct rockchip_usb2phy_port_cfg *port_cfg = us2phy_get_port(phy);
+@@ -123,6 +133,10 @@ static int rockchip_usb2phy_init(struct phy *phy)
+ 	struct rockchip_usb2phy *priv = dev_get_priv(parent);
  	int ret;
  
 +	priv->init_count++;
@@ -215,7 +76,7 @@ index 70e61eccb7..ce36db94a7 100644
  	ret = clk_enable(&priv->phyclk);
  	if (ret && ret != -ENOSYS) {
  		dev_err(phy->dev, "failed to enable phyclk (ret=%d)\n", ret);
-@@ -154,6 +168,10 @@ static int rockchip_usb2phy_exit(struct phy *phy)
+@@ -137,6 +151,10 @@ static int rockchip_usb2phy_exit(struct phy *phy)
  	struct udevice *parent = dev_get_parent(phy->dev);
  	struct rockchip_usb2phy *priv = dev_get_priv(parent);
  
@@ -226,7 +87,7 @@ index 70e61eccb7..ce36db94a7 100644
  	clk_disable(&priv->phyclk);
  
  	return 0;
-@@ -294,6 +312,9 @@ static int rockchip_usb2phy_probe(struct udevice *dev)
+@@ -281,6 +299,9 @@ static int rockchip_usb2phy_probe(struct udevice *dev)
  		return ret;
  	}
  
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 5/6] gnu: bootloaders: u-boot-sandbox: Reformat.
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
                     ` (3 preceding siblings ...)
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 4/6] gnu: u-boot: Use search-patches Herman Rimm via Guix-patches via
@ 2024-12-13 19:58   ` Herman Rimm via Guix-patches via
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 6/6] gnu: u-boot: Use guix-name Herman Rimm via Guix-patches via
                     ` (2 subsequent siblings)
  7 siblings, 0 replies; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-12-13 19:58 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (u-boot-sandbox): Wrap at 72 columns.

Change-Id: I440c05b369c0be1437a3174e055efeeda8e5fe01
---
 gnu/packages/bootloaders.scm | 55 ++++++++++++++++++------------------
 1 file changed, 28 insertions(+), 27 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index ca189fca3a..521e0d5bcd 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1316,34 +1316,35 @@ (define-public u-boot-qemu-riscv64-smode
   (make-u-boot-package "qemu-riscv64_smode" "riscv64-linux-gnu"))
 
 (define-public u-boot-sandbox
-  (let ((base (make-u-boot-package
-               "sandbox" #f             ;build for the native system
-               ;; These disabled features require OpenSSL, which is
-               ;; incompatible with the GPLv2-only parts of U-boot.
-               #:configs (map (cut string-append "# CONFIG_" <> " is not set")
-                              '("FIT_CIPHER"))
-               #:append-description
-               "The sandbox configuration of U-Boot provides a
-@command{u-boot} command that runs as a normal user space application.  It can
-be used to test the functionality of U-Boot interactively without having to
-deploy to an actual target device.  @xref{Sandbox<6>,,,u-boot, The U-Boot
+  (define base
+    (make-u-boot-package
+      "sandbox" #f             ;build for the native system
+      ;; These disabled features require OpenSSL, which is
+      ;; incompatible with the GPLv2-only parts of U-boot.
+      #:configs (map (cut string-append "# CONFIG_" <> " is not set")
+                     '("FIT_CIPHER"))
+      #:append-description
+      "The sandbox configuration of U-Boot provides a @command{u-boot}
+command that runs as a normal user space application.  It can be used to
+test the functionality of U-Boot interactively without having to deploy
+to an actual target device.  @xref{Sandbox<6>,,,u-boot, The U-Boot
 Documentation} for more information (for example by running @samp{info
-\"(u-boot) Sandbox<6>\"}).")))
-    (package
-      (inherit base)
-      (arguments
-       (substitute-keyword-arguments (package-arguments base)
-         ((#:phases phases '%standard-phases)
-          #~(modify-phases #$phases
-              (add-after 'install 'symlink-u-boot-command
-                (lambda* (#:key outputs #:allow-other-keys)
-                  ;; For ease of discovery.
-                  (mkdir (string-append #$output "/bin"))
-                  (symlink (search-input-file outputs "libexec/u-boot")
-                           (string-append #$output "/bin/u-boot"))))))))
-      ;; cert-to-efi-sig-list from efitools creates the EFI capsule ESL.
-      (inputs (modify-inputs (package-inputs base)
-                (append efitools sdl2))))))
+\"(u-boot) Sandbox<6>\"})."))
+  (package
+    (inherit base)
+    (arguments
+     (substitute-keyword-arguments (package-arguments base)
+       ((#:phases phases '%standard-phases)
+        #~(modify-phases #$phases
+            (add-after 'install 'symlink-u-boot-command
+              (lambda* (#:key outputs #:allow-other-keys)
+                ;; For ease of discovery.
+                (mkdir (string-append #$output "/bin"))
+                (symlink (search-input-file outputs "libexec/u-boot")
+                         (string-append #$output "/bin/u-boot"))))))))
+    ;; cert-to-efi-sig-list from efitools creates the EFI capsule ESL.
+    (inputs (modify-inputs (package-inputs base)
+              (append efitools sdl2)))))
 
 (define-public u-boot-sifive-unleashed
   (let ((base (make-u-boot-package "sifive_unleashed" "riscv64-linux-gnu")))
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 6/6] gnu: u-boot: Use guix-name.
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
                     ` (4 preceding siblings ...)
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 5/6] gnu: bootloaders: u-boot-sandbox: Reformat Herman Rimm via Guix-patches via
@ 2024-12-13 19:58   ` Herman Rimm via Guix-patches via
  2024-12-15  8:46     ` Vagrant Cascadian
  2024-12-15  9:20   ` [bug#70131] [PATCH v3 0/6] Update U-Boot Vagrant Cascadian
  2024-12-18 23:25   ` bug#70131: " Vagrant Cascadian
  7 siblings, 1 reply; 37+ messages in thread
From: Herman Rimm via Guix-patches via @ 2024-12-13 19:58 UTC (permalink / raw)
  To: 70131; +Cc: Efraim Flashner, Vagrant Cascadian

* gnu/packages/bootloaders.scm (u-boot): Use guix-name.

Change-Id: I7226519a676ba201be3a95078112b6514a201731
---
 gnu/packages/bootloaders.scm | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 521e0d5bcd..a0deecbfb5 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1038,9 +1038,7 @@ (define*-public (make-u-boot-package board triplet
                                        (gnu-triplet->nix-system triplet))))))
     (package
       (inherit u-boot)
-      (name (string-append "u-boot-"
-                           (string-replace-substring (string-downcase board)
-                                                     "_" "-")
+      (name (string-append (guix-name "u-boot-" board)
                            (or name-suffix "")))
       (description (if append-description
                        (string-append (package-description u-boot)
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 6/6] gnu: u-boot: Use guix-name.
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 6/6] gnu: u-boot: Use guix-name Herman Rimm via Guix-patches via
@ 2024-12-15  8:46     ` Vagrant Cascadian
  0 siblings, 0 replies; 37+ messages in thread
From: Vagrant Cascadian @ 2024-12-15  8:46 UTC (permalink / raw)
  To: Herman Rimm, 70131; +Cc: Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 2352 bytes --]

On 2024-12-13, Herman Rimm wrote:
> * gnu/packages/bootloaders.scm (u-boot): Use guix-name.

Triggers build failure:

error: guix-name: unbound variable
hint: Did you forget a `use-modules' form?

error: googletest: unbound variable
hint: Did you forget a `use-modules' form?
...
In unknown file:
          10 (force #<promise #<procedure ffffa6c1b7a0 at gnu/packag…>)
In gnu/packages.scm:
   243:33  9 (fold-packages #<procedure ffffa6228750 at gnu/package…> …)
In guix/discovery.scm:
   158:11  8 (all-modules _ #:warn _)
In srfi/srfi-1.scm:
   460:18  7 (fold #<procedure ffffab39ba40 at guix/discovery.scm:1…> …)
In guix/discovery.scm:
   148:19  6 (_ _ ())
    115:5  5 (scheme-modules _ _ #:warn _)
In srfi/srfi-1.scm:
   691:23  4 (filter-map #<procedure ffffab39b8e0 at guix/discove…> . #)
In guix/discovery.scm:
   123:24  3 (_ . _)
In guix/ui.scm:
    363:2  2 (report-unbound-variable-error _ #:frame _)
In ice-9/boot-9.scm:
  1685:16  1 (raise-exception _ #:continuable? _)
  1685:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Throw to key `match-error' with args `("match" "no matching pattern"
(unbound-variable "resolve-interface" "no binding `~A' in module ~A"
(shared-mime-info (gnu packages freedesktop)) #f))'.


>
> Change-Id: I7226519a676ba201be3a95078112b6514a201731
> ---
>  gnu/packages/bootloaders.scm | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
> index 521e0d5bcd..a0deecbfb5 100644
> --- a/gnu/packages/bootloaders.scm
> +++ b/gnu/packages/bootloaders.scm
> @@ -1038,9 +1038,7 @@ (define*-public (make-u-boot-package board triplet
>                                         (gnu-triplet->nix-system triplet))))))
>      (package
>        (inherit u-boot)
> -      (name (string-append "u-boot-"
> -                           (string-replace-substring (string-downcase board)
> -                                                     "_" "-")
> +      (name (string-append (guix-name "u-boot-" board)
>                             (or name-suffix "")))
>        (description (if append-description
>                         (string-append (package-description u-boot)
> -- 
> 2.45.2


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 0/6] Update U-Boot.
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
                     ` (5 preceding siblings ...)
  2024-12-13 19:58   ` [bug#70131] [PATCH v3 6/6] gnu: u-boot: Use guix-name Herman Rimm via Guix-patches via
@ 2024-12-15  9:20   ` Vagrant Cascadian
  2024-12-17 22:04     ` Vagrant Cascadian
  2024-12-18 23:25   ` bug#70131: " Vagrant Cascadian
  7 siblings, 1 reply; 37+ messages in thread
From: Vagrant Cascadian @ 2024-12-15  9:20 UTC (permalink / raw)
  To: Herman Rimm, 70131; +Cc: Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 1182 bytes --]

On 2024-12-13, Herman Rimm wrote:
> The first and second patch should be applied together.  The second patch
> updates U-Boot to v2024.10, and the patches for u-boot-rockpro64-rk3399
> and u-boot-sandbox are updated and squashed into it.

I successfully build-tested a few of these (with the guix-name patch
reverted):

/gnu/store/pqsbkssz6x8mfrxkhnf07xhczkk9s3bl-u-boot-rock64-rk3328-2024.10
/gnu/store/s6vwgw88s5cx01nwrwmx31pn8x6g0d6i-u-boot-rockpro64-rk3399-2024.10
/gnu/store/z4ziy84n4fk8pqyqddyhxxa2ssdn1fb1-u-boot-rpi-arm64-2024.10

This is obviously not comprehensive... as there are quite a few
variants.

I might be able to actually test the above targets actually produce a
working u-boot and even have some old guix installs on some of them that
I might be able to update to actually boot test them all the way.

Might even be able to build test and boot test a few more as well, but
for now, let's start with those...


> I turned the ARM Trusted Firmware patch into #74849.  The last patch of
> this series requires [PATCH 3/6] of #74849.

I tested without that patch applied, as there were issues getting
arm-trusted-firmware variants to build.


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 0/6] Update U-Boot.
  2024-12-15  9:20   ` [bug#70131] [PATCH v3 0/6] Update U-Boot Vagrant Cascadian
@ 2024-12-17 22:04     ` Vagrant Cascadian
  2024-12-17 22:39       ` Vagrant Cascadian
  0 siblings, 1 reply; 37+ messages in thread
From: Vagrant Cascadian @ 2024-12-17 22:04 UTC (permalink / raw)
  To: Herman Rimm, 70131; +Cc: vagrant, Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 2188 bytes --]

On 2024-12-15, Vagrant Cascadian wrote:
> On 2024-12-13, Herman Rimm wrote:
>> The first and second patch should be applied together.  The second patch
>> updates U-Boot to v2024.10, and the patches for u-boot-rockpro64-rk3399
>> and u-boot-sandbox are updated and squashed into it.
>
> I successfully build-tested a few of these (with the guix-name patch
> reverted):
>
> /gnu/store/pqsbkssz6x8mfrxkhnf07xhczkk9s3bl-u-boot-rock64-rk3328-2024.10
> /gnu/store/s6vwgw88s5cx01nwrwmx31pn8x6g0d6i-u-boot-rockpro64-rk3399-2024.10
> /gnu/store/z4ziy84n4fk8pqyqddyhxxa2ssdn1fb1-u-boot-rpi-arm64-2024.10
>
> This is obviously not comprehensive... as there are quite a few
> variants.

I have built-tested all the u-boot-* except u-boot-sandbox and
u-boot-documentation. There are huge toolchains not built for aarch64 at
the moment (e.g. all of rust) that need to be rebuilt to properly test
all of those. Similarly, I did not test the dependents of u-boot-tools,
although u-boot-tools itself builds fine.

I might be able to at least test those on x86_64 when I get a chance to
boot an x86_64 machine.


> I might be able to actually test the above targets actually produce a
> working u-boot and even have some old guix installs on some of them
> that I might be able to update to actually boot test them all the way.
>
> Might even be able to build test and boot test a few more as well, but
> for now, let's start with those...

I just did some basic boot testing of u-boot-pinebook and
u-boot-rock64-rk3328, by manually installing and booting Debian with it,
though I have not tested with Guix System (and not sure I will be able
to).

I might be able to test u-boot-sifive-unmatched next. Having troubles
unrelated to these patches with the rockpro64 board, but hope to get
those fixed. Have a number of the armhf boards too, though not sure I
actually have an OS installed on any of them to make testing quick and
easy enough to bother.

But with a few more boot tests, and testing that u-boot-tools dependents
still build and u-boot-sandbox and u-boot-documentation builds, I think
I would be comfortable merging this patch series soon (without the
guix-name patch).

live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 0/6] Update U-Boot.
  2024-12-17 22:04     ` Vagrant Cascadian
@ 2024-12-17 22:39       ` Vagrant Cascadian
  2024-12-18  0:04         ` Vagrant Cascadian
  0 siblings, 1 reply; 37+ messages in thread
From: Vagrant Cascadian @ 2024-12-17 22:39 UTC (permalink / raw)
  To: Herman Rimm, 70131; +Cc: vagrant, Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 554 bytes --]

On 2024-12-17, Vagrant Cascadian wrote:
> I just did some basic boot testing of u-boot-pinebook and
> u-boot-rock64-rk3328, by manually installing and booting Debian with it,
> though I have not tested with Guix System (and not sure I will be able
> to).
>
> I might be able to test u-boot-sifive-unmatched next. Having troubles
> unrelated to these patches with the rockpro64 board, but hope to get
> those fixed.

Boot tested u-boot-rockpro64-rk3399 booting Debian. So that is three
targets not fundamentally broken, at least. :)

live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [bug#70131] [PATCH v3 0/6] Update U-Boot.
  2024-12-17 22:39       ` Vagrant Cascadian
@ 2024-12-18  0:04         ` Vagrant Cascadian
  0 siblings, 0 replies; 37+ messages in thread
From: Vagrant Cascadian @ 2024-12-18  0:04 UTC (permalink / raw)
  To: Herman Rimm, 70131; +Cc: vagrant, Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 1290 bytes --]

On 2024-12-17, Vagrant Cascadian wrote:
> On 2024-12-17, Vagrant Cascadian wrote:
>> I just did some basic boot testing of u-boot-pinebook and
>> u-boot-rock64-rk3328, by manually installing and booting Debian with it,
>> though I have not tested with Guix System (and not sure I will be able
>> to).
>>
>> I might be able to test u-boot-sifive-unmatched next. Having troubles
>> unrelated to these patches with the rockpro64 board, but hope to get
>> those fixed.
>
> Boot tested u-boot-rockpro64-rk3399 booting Debian. So that is three
> targets not fundamentally broken, at least. :)

And also boot tested u-boot-sifive-unmatched, which had a glitch in how
it changed the boot device order and booted an old kernel from a device
that the previous defaults did not boot... so that is a bit
odd... worked around it by renaming the extlinux.conf file so that it
would not select it.

Other platforms that switched from u-boot's distro boot to u-boot's
bootstd might have similar issues, so it is something to note possibly
in a news entry.

This might be worth setting BOOTSTD_FULL=y in the configuration; without
it there is no way to select the boot device if the first one it picks
is not the one you actually want... and possibly trying to get that
upstream too.


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

* bug#70131: [PATCH v3 0/6] Update U-Boot.
  2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
                     ` (6 preceding siblings ...)
  2024-12-15  9:20   ` [bug#70131] [PATCH v3 0/6] Update U-Boot Vagrant Cascadian
@ 2024-12-18 23:25   ` Vagrant Cascadian
  7 siblings, 0 replies; 37+ messages in thread
From: Vagrant Cascadian @ 2024-12-18 23:25 UTC (permalink / raw)
  To: Herman Rimm, 70131-done; +Cc: Efraim Flashner

[-- Attachment #1: Type: text/plain, Size: 1150 bytes --]

On 2024-12-13, Herman Rimm wrote:
> Herman Rimm (6):
>   Revert "gnu: u-boot-tools: Fix segfault while running tests."
>   gnu: u-boot: Update to 2024.10.
>   gnu: u-boot-tools: Remove extraneous native-input.
>   gnu: u-boot: Use search-patches.
>   gnu: bootloaders: u-boot-sandbox: Reformat.

Thanks for your work on all this!

After testing that everything at least builds on x86_64-linux, and most
of the targets built on aarch64-linux, and some boot testing of a few
targets, these were pushed as:

1a62f687e504c67f26693f3bc60a90e503ab4ea9 gnu: bootloaders: u-boot-sandbox: Reformat.
56c6466887a3fdca0bc407418f807448a58e35d2 gnu: u-boot: Use search-patches.
9e858182581fa17f6248bbbcb9d8742320a42217 gnu: u-boot-tools: Remove extraneous native-input.
ef50749aed807de28458b38b35e941a414637459 gnu: u-boot: Update to 2024.10.
8a016fa0562e7f23b32a3fa25542b19af64b9c0e Revert "gnu: u-boot-tools: Fix segfault while running tests."


>   gnu: u-boot: Use guix-name.

I left out the guix-name patch as it failed to build.


With that update out of the way, hopefully it will make the other
changes a little easier to finish up!


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2024-12-18 23:27 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-01 20:20 [bug#70131] [PATCH 0/5] Add bootloaders and update U-Boot Herman Rimm via Guix-patches via
2024-04-01 20:22 ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
2024-04-01 20:22 ` [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
2024-04-01 20:22 ` [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
2024-04-01 20:22 ` [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04-rc5 Herman Rimm via Guix-patches via
2024-04-01 20:22 ` [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
2024-05-09  5:35 ` [bug#70131] [PATCH 0/5] Update U-boot Herman Rimm via Guix-patches via
2024-05-09  5:35   ` [bug#70131] [PATCH 1/5] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
2024-05-09  5:35   ` [bug#70131] [PATCH 2/5] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
2024-05-15 18:16     ` Vagrant Cascadian
2024-05-09  5:35   ` [bug#70131] [PATCH 3/5] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
2024-05-09  5:35   ` [bug#70131] [PATCH 4/5] gnu: u-boot: Update to 2024.04 Herman Rimm via Guix-patches via
2024-05-09  5:35   ` [bug#70131] [PATCH 5/5] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
2024-05-15 20:26   ` [bug#70131] [PATCH 0/5] Update U-boot Vagrant Cascadian
2024-05-16  7:28     ` Herman Rimm via Guix-patches via
2024-05-16 15:56       ` Vagrant Cascadian
2024-08-26 14:45 ` [bug#70131] [PATCH v2 1/8] gnu: bootloader: Add nanopi-r4s-rk3399 bootloader Herman Rimm via Guix-patches via
2024-08-26 14:45   ` [bug#70131] [PATCH v2 2/8] gnu: u-boot: Use DDR3 patch for Nano Pi R4S Herman Rimm via Guix-patches via
2024-08-26 14:45   ` [bug#70131] [PATCH v2 3/8] gnu: firmware: Update make-arm-trusted-firmware to 2.10 Herman Rimm via Guix-patches via
2024-08-26 14:45   ` [bug#70131] [PATCH v2 4/8] gnu: u-boot: Update to 2024.07 Herman Rimm via Guix-patches via
2024-08-26 14:45   ` [bug#70131] [PATCH v2 5/8] gnu: python-u-boot-pylib: Fix pyproject.toml Herman Rimm via Guix-patches via
2024-08-26 14:45   ` [bug#70131] [PATCH v2 6/8] gnu: u-boot-rockpro64-rk3399: Unconfigure CONFIG_DM_SCSI Herman Rimm via Guix-patches via
2024-08-26 14:45   ` [bug#70131] [PATCH v2 7/8] gnu: u-boot-sandbox: Unconfigure CONFIG_RSA and CONFIG_TOOLS_LIBCRYPTO Herman Rimm via Guix-patches via
2024-08-26 14:45   ` [bug#70131] [PATCH v2 8/8] gnu: bootloader: Add orangepi-zero2w bootloader Herman Rimm via Guix-patches via
2024-12-13 19:58 ` [bug#70131] [PATCH v3 0/6] Update U-Boot Herman Rimm via Guix-patches via
2024-12-13 19:58   ` [bug#70131] [PATCH v3 1/6] Revert "gnu: u-boot-tools: Fix segfault while running tests." Herman Rimm via Guix-patches via
2024-12-13 19:58   ` [bug#70131] [PATCH v3 2/6] gnu: u-boot: Update to 2024.10 Herman Rimm via Guix-patches via
2024-12-13 19:58   ` [bug#70131] [PATCH v3 3/6] gnu: u-boot-tools: Remove extraneous native-input Herman Rimm via Guix-patches via
2024-12-13 19:58   ` [bug#70131] [PATCH v3 4/6] gnu: u-boot: Use search-patches Herman Rimm via Guix-patches via
2024-12-13 19:58   ` [bug#70131] [PATCH v3 5/6] gnu: bootloaders: u-boot-sandbox: Reformat Herman Rimm via Guix-patches via
2024-12-13 19:58   ` [bug#70131] [PATCH v3 6/6] gnu: u-boot: Use guix-name Herman Rimm via Guix-patches via
2024-12-15  8:46     ` Vagrant Cascadian
2024-12-15  9:20   ` [bug#70131] [PATCH v3 0/6] Update U-Boot Vagrant Cascadian
2024-12-17 22:04     ` Vagrant Cascadian
2024-12-17 22:39       ` Vagrant Cascadian
2024-12-18  0:04         ` Vagrant Cascadian
2024-12-18 23:25   ` bug#70131: " Vagrant Cascadian

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).