From: Zheng Junjie <zhengjunjie@iscas.ac.cn>
To: 69899@debbugs.gnu.org
Subject: [bug#69899] [PATCH 3/7] vm: When target riscv64-linux, use u-boot-qemu-riscv64-bootloader.
Date: Tue, 19 Mar 2024 23:18:37 +0800 [thread overview]
Message-ID: <528b248a19b9debbaad5181749f49f5aa4e82f77.1710861023.git.zhengjunjie@iscas.ac.cn> (raw)
In-Reply-To: <cover.1710861023.git.zhengjunjie@iscas.ac.cn>
* gnu/system/vm.scm (virtualized-operating-system) When target riscv64-linux,
use u-boot-qemu-riscv64-bootloader. Add system, target keyword.
Change-Id: I22d64d00670a705e4b81427e44a83d504598b536
---
gnu/system/vm.scm | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index 40e965d272..d4044a4a39 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -52,6 +52,7 @@ (define-module (gnu system vm)
#:use-module (gnu bootloader)
#:use-module (gnu bootloader grub)
+ #:use-module (gnu bootloader u-boot)
#:use-module (gnu image)
#:use-module (gnu system image)
#:use-module (gnu system linux-container)
@@ -137,7 +138,9 @@ (define (mapping->file-system mapping)
(define* (virtualized-operating-system os
#:optional (mappings '())
- #:key (full-boot? #f) volatile?)
+ #:key (full-boot? #f) volatile?
+ (system (%current-system))
+ (target (%current-target-system)))
"Return an operating system based on OS suitable for use in a virtualized
environment with the store shared with the host. MAPPINGS is a list of
<file-system-mapping> to realize in the virtualized OS."
@@ -167,15 +170,18 @@ (define* (virtualized-operating-system os
(append (map mapping->file-system mappings)
user-file-systems)))
- (operating-system (inherit os)
-
+ (operating-system
+ (inherit os)
;; XXX: Until we run QEMU with UEFI support (with the OVMF firmware),
;; force the traditional i386/BIOS method.
;; See <https://bugs.gnu.org/28768>.
(bootloader (bootloader-configuration
- (inherit (operating-system-bootloader os))
- (bootloader grub-bootloader)
- (targets '("/dev/vda"))))
+ (inherit (operating-system-bootloader os))
+ (bootloader
+ (if (target-riscv64? (or target system))
+ u-boot-qemu-riscv64-bootloader
+ grub-bootloader))
+ (targets '("/dev/vda"))))
(initrd (lambda (file-systems . rest)
(apply (operating-system-initrd os)
@@ -259,7 +265,9 @@ (define* (system-qemu-image/shared-store-script os
(mlet* %store-monad ((os -> (virtualized-operating-system
os mappings
#:full-boot? full-boot?
- #:volatile? volatile?))
+ #:volatile? volatile?
+ #:system system
+ #:target target))
(base-image -> (system-image
(image
(inherit
--
2.41.0
next prev parent reply other threads:[~2024-03-19 15:25 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-19 15:15 [bug#69899] [PATCH 0/7] support to use `guix system vm' with riscv64 Zheng Junjie
2024-03-19 15:18 ` [bug#69899] [PATCH 1/7] bootloader: Add u-boot-qemu-riscv64-bootloader Zheng Junjie
2024-03-19 15:18 ` [bug#69899] [PATCH 2/7] vm: use #$ for kernel-arguments Zheng Junjie
2024-03-19 15:18 ` Zheng Junjie [this message]
2024-03-19 15:18 ` [bug#69899] [PATCH 4/7] gnu: linux-libre-riscv64-generic: add more options Zheng Junjie
2024-03-19 15:18 ` [bug#69899] [PATCH 5/7] linux-initrd: don't add hid-apple module for riscv64-linux Zheng Junjie
2024-03-19 15:18 ` [bug#69899] [PATCH 6/7] vm: add arguments to use virt machine type for qemu-riscv64 Zheng Junjie
2024-03-19 15:18 ` [bug#69899] [PATCH 7/7] vm: If not the same local architecture, don't enable kvm Zheng Junjie
2024-03-26 16:07 ` [bug#69899] [PATCH 0/7] support to use `guix system vm' with riscv64 Leo Famulari
2024-03-27 9:15 ` Zheng Junjie
2024-03-31 21:02 ` Ludovic Courtès
2024-04-01 17:20 ` Zheng Junjie
2024-04-03 22:42 ` Leo Famulari
2024-04-16 17:04 ` Ludovic Courtès
2024-03-31 21:03 ` bug#69899: " Ludovic Courtès
2024-04-15 15:33 ` [bug#69899] [PATCH 1/2] vm: override %CURRENT-SYSTEM to always use a native emulator Zheng Junjie
2024-04-15 15:33 ` [bug#69899] [PATCH 2/2] vm: Don't add -enable-kvm when SYSTEM and %system are not same Zheng Junjie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=528b248a19b9debbaad5181749f49f5aa4e82f77.1710861023.git.zhengjunjie@iscas.ac.cn \
--to=zhengjunjie@iscas.ac.cn \
--cc=69899@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.