From patchwork Thu Jul 27 20:13:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Juliana Sims X-Patchwork-Id: 1093 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 697BB27BBE2; Thu, 27 Jul 2023 22:59:44 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 37AF727BBE9 for ; Thu, 27 Jul 2023 22:59:41 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qP8LC-0005Hy-Uq; Thu, 27 Jul 2023 17:16:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qP8L7-0005Hm-8A for guix-patches@gnu.org; Thu, 27 Jul 2023 17:16:06 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qP8L6-0001Sv-73; Thu, 27 Jul 2023 17:16:04 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qP8L4-0000Mh-FJ; Thu, 27 Jul 2023 17:16:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#64907] [PATCH 0/2] gnu: Add rvvm support packages. Resent-From: Juliana Sims Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, ludo@gnu.org, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Thu, 27 Jul 2023 21:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 64907 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 64907@debbugs.gnu.org Cc: Juliana Sims , Efraim Flashner , Ludovic =?utf-8?q?Court=C3=A8s?= , Vagrant Cascadian X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: Efraim Flashner , Ludovic =?utf-8?q?Court=C3=A8s?= , Vagrant Cascadian Received: via spool by submit@debbugs.gnu.org id=B.16904925231341 (code B ref -1); Thu, 27 Jul 2023 21:16:02 +0000 Received: (at submit) by debbugs.gnu.org; 27 Jul 2023 21:15:23 +0000 Received: from localhost ([127.0.0.1]:43232 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qP8KQ-0000LY-EM for submit@debbugs.gnu.org; Thu, 27 Jul 2023 17:15:22 -0400 Received: from lists.gnu.org ([2001:470:142::17]:50760) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qP8KM-0000LE-Vf for submit@debbugs.gnu.org; Thu, 27 Jul 2023 17:15:21 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qP8K8-00055i-3D for guix-patches@gnu.org; Thu, 27 Jul 2023 17:15:05 -0400 Received: from relay9-d.mail.gandi.net ([217.70.183.199]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qP8K4-00012T-1f for guix-patches@gnu.org; Thu, 27 Jul 2023 17:15:02 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 2C5E5FF803; Thu, 27 Jul 2023 21:14:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=incana.org; s=gm1; t=1690492494; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=2sZlJN+3DdmqsmiwW2tq3IrYx0wqr1Ys3QF14HnKb9g=; b=Kngns+9FmsO/gog7KJ8AxBZAR4I5SF3JVXnj4XlR0loBcA2Kh+NQrc83j4yoaybZqAhkIi TiP2bHE94pHxEHCX42SlSgOHw35HWfy3GW4qdHJsPwgrk3xFAdhUdNwYuY0+6DyNRLaF8a TP2tL8f+c1L0NvWyP8mFnfJoQxsXAxBk8pE07xGpvscVXZUg6eZdqgs0gUMH3LcG0KzCUO bmo+DYj1zOz/f4VmXMGN2buhtJBM0epqZnMCPwg73cibbwhexKAArrlyQ/cBi46I/VoTVp lpiYqMReb01karg8tD5T0IV5jhz0FoJnVai9kzDeOIKEBp73xDlhjqUax+IBRw== From: Juliana Sims Date: Thu, 27 Jul 2023 16:13:57 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 X-GND-Sasl: juli@incana.org Received-SPF: pass client-ip=217.70.183.199; envelope-from=juli@incana.org; helo=relay9-d.mail.gandi.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Hello, These patches create specialized U-Boot and OpenSBI packages to use with RVVM by applying RVVM's author's patches to those projects. Additionally, they build this patched version of U-Boot into OpenSBI's `fw_payload.bin`, mimicking the binary release from RVVM. The RVVM author claims faster execution than QEMU. As such, the ultimate goal of these packages is to create a system service which will allow developers to easily run Guix under RVVM for the purpose of development, much like hurd-vm-service-type provides a way to run Hurd under Guix. However, that's a larger project, and getting these packaged as they are will already prove useful. Anyone wishing to use them can simply run: ``` guix shell --pure rvvm opensbi-rvvm rvvm /gnu/store/-opensbi-rvvm-/fw_payload.bin -i .img [...] ``` I have tested these packages with the FreeBSD-13.2 RV64 raw disk image, so I know they run successfully. It's worth noting that opensbi-generic works fine with RVVM. However, it does not provide `fw_payload.bin` - only `fw_jump.bin` - so this version provides more flexibility. That said, opensbi-rvvm is 5.3 MB compared to opensbi-generic's 1.3 MB. Because of that, I'm ambivalent about adding it. I leave the decision on whether or not to include it entirely up to others; there's no sense in throwing away work I already did if it may be useful. It may be worth noting that RVVM also has patches for the Linux kernel. However, upon inspection they seem to primarily be concerned with decreasing binary size, which can be worked around if needed. The linux-libre-riscv64-generic package should work just fine, but this has not been tested. Thanks, Juli Juliana Sims (2): gnu: Add u-boot-rvvm. gnu: Add opensbi-rvvm. gnu/packages/bootloaders.scm | 23 +++++++ gnu/packages/firmware.scm | 32 +++++++++ .../patches/opensbi-rvvm-lowram-fdt.patch | 21 ++++++ .../patches/u-boot-rvvm-support.patch | 67 +++++++++++++++++++ 4 files changed, 143 insertions(+) create mode 100644 gnu/packages/patches/opensbi-rvvm-lowram-fdt.patch create mode 100644 gnu/packages/patches/u-boot-rvvm-support.patch base-commit: 35c8d631d2bd63c64e863b5509f29fdcb7f856e6