summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorVagrant Cascadian <vagrant@debian.org>2021-05-11 21:15:15 +0000
committerVagrant Cascadian <vagrant@debian.org>2023-07-19 22:54:20 -0700
commited5dc3a25d858a394bb7db937a51d866c3cdc6ed (patch)
treefc6b2b930911fcab522464f3b957819813726b85 /gnu
parentb0d47d9e18e52ff7935aebe6ab37e702f58101be (diff)
downloadguix-ed5dc3a25d858a394bb7db937a51d866c3cdc6ed.tar.gz
gnu: u-boot: Add crust firmware to pinebook, pine64_plus and pine64-lts.
* 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.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/bootloaders.scm18
1 files changed, 11 insertions, 7 deletions
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 966f1787f8..ea69fc890b 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1010,7 +1010,7 @@ removed so that it fits within common partitioning schemes.")))
 (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 scp-firmware
                                              #:key defconfig configs)
   (let ((base (make-u-boot-package
                board triplet #:defconfig defconfig #:configs configs)))
@@ -1022,23 +1022,27 @@ removed so that it fits within common partitioning schemes.")))
           #~(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 scp-firmware)))
       (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")))