diff mbox series

[bug#64149,3/5] gnu: u-boot: Add crust firmware to pinebook, pine64_plus and pine64-lts.

Message ID 20230709014736.54114-3-vagrant@debian.org
State New
Headers show
Series [bug#64149,1/5] gnu: arm-trusted-firmware: Update to 2.9. | expand

Commit Message

Vagrant Cascadian July 9, 2023, 1:47 a.m. UTC
From: Vagrant Cascadian <vagrant@debian.org>

* gnu/packages/bootloaders.scm (make-u-boot-sunxi64-package): Take argument
  for System Control Processor (SCP) firmware.
  [native-inputs]: Add SCP firmware.
  [phases]: Adjust 'set-environment to also set SCP variable.
  (u-boot-pine64-plus, u-boot-pine64-lts, u-boot-pinebook): Pass appropriate
  crust firmware as the SCP firmware.
---
 gnu/packages/bootloaders.scm | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)
diff mbox series

Patch

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 8be5303a74..18f6398692 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1009,7 +1009,7 @@  (define-public u-boot-am335x-boneblack
 (define-public u-boot-am335x-evm
   (make-u-boot-package "am335x_evm" "arm-linux-gnueabihf"))
 
-(define*-public (make-u-boot-sunxi64-package board triplet
+(define*-public (make-u-boot-sunxi64-package board triplet scpfirmware
                                              #:key defconfig configs)
   (let ((base (make-u-boot-package
                board triplet #:defconfig defconfig #:configs configs)))
@@ -1021,22 +1021,24 @@  (define*-public (make-u-boot-sunxi64-package board triplet
           #~(modify-phases #$phases
               (add-after 'unpack 'set-environment
                 (lambda* (#:key native-inputs inputs #:allow-other-keys)
-                  ;; Avoid dependency on crust-firmware https://issues.guix.gnu.org/48371
-                  (setenv "SCP" "/dev/null")
+                  (setenv "SCP" (search-input-file native-inputs "libexec/scp.bin"))
                   (setenv "BL31" (search-input-file inputs "bl31.bin"))))))))
+      (native-inputs
+       (modify-inputs (package-native-inputs base)
+         (append scpfirmware)))
       (inputs
        (modify-inputs (package-inputs base)
          (append arm-trusted-firmware-sun50i-a64))))))
 
 (define-public u-boot-pine64-plus
-  (make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu"))
+  (make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu" crust-pine64-plus))
 
 (define-public u-boot-pine64-lts
-  (make-u-boot-sunxi64-package "pine64-lts" "aarch64-linux-gnu"))
+  (make-u-boot-sunxi64-package "pine64-lts" "aarch64-linux-gnu" crust-pine64-plus))
 
 (define-public u-boot-pinebook
   (make-u-boot-sunxi64-package
-   "pinebook" "aarch64-linux-gnu"
+   "pinebook" "aarch64-linux-gnu" crust-pinebook
    ;; Fix regression with LCD video output introduced in 2020.01
    ;; https://patchwork.ozlabs.org/patch/1225130/
    #:configs '("CONFIG_VIDEO_BPP32=y")))