system: hurd: Boot with pci.arbiter and rumpdisk.

* gnu/system.scm (hurd-multiboot-modules): Add commands for pci.arbiter and
rumpdisk.

Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
This commit is contained in:
Janneke Nieuwenhuizen 2023-05-15 19:11:35 +02:00 committed by Josselin Poiret
parent 09657f3ee7
commit 7f86dad611
No known key found for this signature in database
GPG key ID: 505E40B916171A8A

View file

@ -10,7 +10,7 @@
;;; Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de> ;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <jannek@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <jannek@gnu.org>
;;; Copyright © 2020, 2022 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com> ;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com>
@ -1486,16 +1486,28 @@ (define (operating-system-multiboot-modules os)
(define (hurd-multiboot-modules os) (define (hurd-multiboot-modules os)
(let* ((hurd (operating-system-hurd os)) (let* ((hurd (operating-system-hurd os))
(pci-arbiter-command
(list (file-append hurd "/hurd/pci-arbiter.static")
"pci-arbiter"
"--host-priv-port='${host-port}'"
"--device-master-port='${device-port}'"
"--next-task='${disk-task}'"
"'$(pci-task=task-create)'"
"'$(task-resume)'"))
(rumpdisk-command
(list (file-append hurd "/hurd/rumpdisk.static")
"rumpdisk"
"--next-task='${fs-task}'"
"'$(disk-task=task-create)'"))
(root-file-system-command (root-file-system-command
(list (file-append hurd "/hurd/ext2fs.static") (list (file-append hurd "/hurd/ext2fs.static")
"ext2fs" "ext2fs"
"--multiboot-command-line='${kernel-command-line}'" "--multiboot-command-line='${kernel-command-line}'"
"--host-priv-port='${host-port}'"
"--device-master-port='${device-port}'"
"--exec-server-task='${exec-task}'" "--exec-server-task='${exec-task}'"
"--store-type=typed" "--store-type=typed"
"--x-xattr-translator-records" "--x-xattr-translator-records"
"'${root}'" "'$(task-create)'" "'$(task-resume)'")) "'${root}'"
"'$(fs-task=task-create)'"))
(target (%current-target-system)) (target (%current-target-system))
(libc (if target (libc (if target
(with-parameters ((%current-target-system #f)) (with-parameters ((%current-target-system #f))
@ -1512,7 +1524,10 @@ (define (hurd-multiboot-modules os)
;; (file-append hurd "/hurd/exec") "'$(exec-task=task-create)'") ;; (file-append hurd "/hurd/exec") "'$(exec-task=task-create)'")
(list (file-append hurd "/hurd/exec.static") "exec" (list (file-append hurd "/hurd/exec.static") "exec"
"'$(exec-task=task-create)'"))) "'$(exec-task=task-create)'")))
(list root-file-system-command exec-server-command))) (list pci-arbiter-command
rumpdisk-command
root-file-system-command
exec-server-command)))
(define* (operating-system-boot-parameters os root-device (define* (operating-system-boot-parameters os root-device
#:key system-kernel-arguments?) #:key system-kernel-arguments?)