diff mbox series

[bug#69899,1/7] bootloader: Add u-boot-qemu-riscv64-bootloader.

Message ID 560d073808f3cda2f330a0b30bf2f59b79f21fbd.1710861023.git.zhengjunjie@iscas.ac.cn
State New
Headers show
Series support to use `guix system vm' with riscv64. | expand

Commit Message

Z572 March 19, 2024, 3:18 p.m. UTC
* gnu/bootloader/u-boot.scm (u-boot-qemu-riscv64-bootloader): New variable.

Change-Id: If6622838d2250c90a26380849b92387aa7122fbb
---
 gnu/bootloader/u-boot.scm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
diff mbox series

Patch

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index d20aabd538..8e7cc05191 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -6,6 +6,7 @@ 
 ;;; 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 © 2024 Zheng Junjie <873216071@qq.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -47,6 +48,7 @@  (define-module (gnu bootloader u-boot)
             u-boot-rock64-rk3328-bootloader
             u-boot-rockpro64-rk3399-bootloader
             u-boot-sifive-unmatched-bootloader
+            u-boot-qemu-riscv64-bootloader
             u-boot-ts7970-q-2g-1000mhz-c-bootloader
             u-boot-wandboard-bootloader))
 
@@ -157,6 +159,12 @@  (define install-sifive-unmatched-u-boot
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               image (* 2082 512)))))
 
+(define install-qemu-riscv64-u-boot
+  #~(lambda (bootloader device mount-point)
+      (let ((u-boot.bin (string-append bootloader "/libexec/u-boot.bin"))
+            (install-dir (string-append mount-point "/boot")))
+        (install-file u-boot.bin install-dir))))
+
 
 
 ;;;
@@ -307,3 +315,10 @@  (define u-boot-sifive-unmatched-bootloader
    (inherit u-boot-bootloader)
    (package u-boot-sifive-unmatched)
    (disk-image-installer install-sifive-unmatched-u-boot)))
+
+(define u-boot-qemu-riscv64-bootloader
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-qemu-riscv64)
+   (installer install-qemu-riscv64-u-boot)
+   (disk-image-installer #f)))