aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHerman Rimm <herman@rimm.ee>2024-12-13 22:07:35 +0100
committerVagrant Cascadian <vagrant@debian.org>2025-03-04 14:23:10 -0800
commit6e41ca397dd2810ee78bce8fdd11da5ba09c8fd4 (patch)
treef4af9b99295f1d06072056c4a97d70babe0d7cc4
parent0c88ec25603030b4e9af874a61de3a83ba77ac94 (diff)
downloadguix-6e41ca397dd2810ee78bce8fdd11da5ba09c8fd4.tar.gz
guix-6e41ca397dd2810ee78bce8fdd11da5ba09c8fd4.zip
gnu: bootloader: Add orangepi-zero2w bootloader.
* 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 Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
-rw-r--r--gnu/bootloader/u-boot.scm6
-rw-r--r--gnu/packages/bootloaders.scm18
-rw-r--r--gnu/packages/firmware.scm3
3 files changed, 27 insertions, 0 deletions
diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 5d5fc1bff2..64fb319f50 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -41,6 +41,7 @@
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
@@ -225,6 +226,11 @@ is BLOCK-SIZE * COUNT, or FILE size if COUNT is not given."
(inherit u-boot-rockchip-bootloader)
(package u-boot-orangepi-r1-plus-lts-rk3328)))
+(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 e4e402cd90..58a7a66777 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1214,6 +1214,24 @@ removed so that it fits within common partitioning schemes.")))
(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 2e78936d83..cb003ab43b 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1172,6 +1172,9 @@ interface standards, such as:
(define-public arm-trusted-firmware-sun50i-a64
(make-arm-trusted-firmware "sun50i_a64"))
+(define-public arm-trusted-firmware-sun50i-h616
+ (make-arm-trusted-firmware "sun50i_h616"))
+
(define-public arm-trusted-firmware-rk3328
(make-arm-trusted-firmware "rk3328"))