summary refs log tree commit diff
path: root/gnu/bootloader/u-boot.scm
diff options
context:
space:
mode:
authorLiliana Marie Prikler <liliana.prikler@gmail.com>2023-07-13 17:21:32 +0200
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-07-13 17:21:32 +0200
commit15406013fe63f2ab238eec2d7a8adbc586806ac8 (patch)
tree8377d7c70a925f7c5ea4c04473c4eb547610b64b /gnu/bootloader/u-boot.scm
parenta3ac317ab4a90f66ac65055fa26dee58ed2367b8 (diff)
parentdd4c1992103a65b8fbdc80fe07a9fe9be822769a (diff)
downloadguix-emacs-team.tar.gz
Merge branch 'master' into emacs-team emacs-team
Diffstat (limited to 'gnu/bootloader/u-boot.scm')
-rw-r--r--gnu/bootloader/u-boot.scm17
1 files changed, 17 insertions, 0 deletions
diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 65d7923465..712db15b02 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -43,6 +44,7 @@
             u-boot-puma-rk3399-bootloader
             u-boot-rock64-rk3328-bootloader
             u-boot-rockpro64-rk3399-bootloader
+            u-boot-sifive-unmatched-bootloader
             u-boot-ts7970-q-2g-1000mhz-c-bootloader
             u-boot-wandboard-bootloader))
 
@@ -135,6 +137,15 @@
             (install-dir (string-append mount-point "/boot")))
         (install-file u-boot.imx install-dir))))
 
+(define install-sifive-unmatched-u-boot
+  #~(lambda (bootloader root-index image)
+      (let ((spl (string-append bootloader "/libexec/spl/u-boot-spl.bin"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device spl (stat:size (stat spl))
+                              image (* 34 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              image (* 2082 512)))))
+
 
 
 ;;;
@@ -273,3 +284,9 @@
    (package u-boot-ts7970-q-2g-1000mhz-c)
    (installer install-u-boot-ts7970-q-2g-1000mhz-c-u-boot)
    (disk-image-installer #f)))
+
+(define u-boot-sifive-unmatched-bootloader
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-sifive-unmatched)
+   (disk-image-installer install-sifive-unmatched-u-boot)))