From patchwork Thu Feb 20 14:42:37 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 1241459 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=AzSoTFI2; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 48NclY49DTz9sNg for ; Fri, 21 Feb 2020 01:43:21 +1100 (AEDT) Received: from localhost ([::1]:43536 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j4n2t-0006TD-GS for incoming@patchwork.ozlabs.org; Thu, 20 Feb 2020 09:43:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43250) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j4n2S-0006KO-0z for qemu-devel@nongnu.org; Thu, 20 Feb 2020 09:42:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j4n2N-0004CI-H0 for qemu-devel@nongnu.org; Thu, 20 Feb 2020 09:42:51 -0500 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:46183) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j4n2N-0004BK-6r; Thu, 20 Feb 2020 09:42:47 -0500 Received: by mail-pg1-x543.google.com with SMTP id y30so2027484pga.13; Thu, 20 Feb 2020 06:42:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id; bh=eH6ZHmsuk1D2shOXK2Vqe7pUD0m3WtmY70bCnxqjJ7A=; b=AzSoTFI2N2/SoH5Cp4z9BvQadlZ7wSHyCV6/KISlJ+iB69secoyzWCf/lVc7K+24jR 5PvwS72lPfvoQBx9RnbR16os7JX3qvOA8mgonZSGmaUTwUi7nbSrqazSJvbmXE88AV7r ouH1Q4Iil834tvWzfoAKjTckBVxOMIScks5I80D6Z4kFAyTWRcx3E00bzhFRsU0Ji/cy PpMFdip024Ac/w7SaRDutZZXBC1vQyp1L2hs5HxijtZTFevg3geTXyXMqGjGj95aI8iO 6rZLj1lzF8lvRsY1IunmPLH4+eRvgcABhsSjfNxbMH0xDTmVyo8GKTF25JJpdUD70CaF hl/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id; bh=eH6ZHmsuk1D2shOXK2Vqe7pUD0m3WtmY70bCnxqjJ7A=; b=FmBhQqwpTGzAhwvkAbPJehUfMhp54e4FaZk/tBncfHCFIjqEmqtcENIe6g0i4rA91k d1AtMN17JtxIyKqgMTw2yhmxn4iIR0VZSzDIVddyc5kCDJDCJWOcw+Gp/GZJBAjbVoIe WpYepoLZtI0g9x0AL/Mw7aKNb0g503fElE4amqXI3dIutklZiVfXXnmmAqUVXnHzHZN6 UlxbgCydYDethI517/oJ+kKujWPfQXCgqhSHfzkOU4LwKBxzMfEApD7J49oB6KAbQ8WC Ck/IiBlvDSYbjUeKMQ9MrKoqE1TbbAHmg+Yy7rWITgRtxRjU9jKNLaPCIMzN446obIpr HACQ== X-Gm-Message-State: APjAAAUguJxpFqHyHUIMR4bV2XH7+hY3cREw6duWXGwJmIYJwldOy4vi kQu/SLOYsCxzVcE6xDoixSQ= X-Google-Smtp-Source: APXvYqyJ58/+psNs8d+q8xya5qoNeRHDlzNI0PF+T6xz4s/nd7h/fBBlFkTL1cxvwysihu33fNEHVw== X-Received: by 2002:a63:dc02:: with SMTP id s2mr11885919pgg.400.1582209764935; Thu, 20 Feb 2020 06:42:44 -0800 (PST) Received: from localhost.localdomain (unknown-224-80.windriver.com. [147.11.224.80]) by smtp.gmail.com with ESMTPSA id v9sm3837140pja.26.2020.02.20.06.42.43 (version=TLS1 cipher=AES128-SHA bits=128/128); Thu, 20 Feb 2020 06:42:44 -0800 (PST) From: Bin Meng To: Alistair Francis , Bastian Koppelmann , Palmer Dabbelt , Sagar Karandikar , qemu-devel@nongnu.org, qemu-riscv@nongnu.org Subject: [PATCH 1/2] riscv: roms: Add 32-bit OpenSBI firmware image for sifive_u Date: Thu, 20 Feb 2020 06:42:37 -0800 Message-Id: <1582209758-2996-1-git-send-email-bmeng.cn@gmail.com> X-Mailer: git-send-email 1.7.1 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::543 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Although the real world SiFive HiFive Unleashed board is a 64-bit hardware configuration, with QEMU it is possible to test 32-bit configuration with the same hardware features. This updates the roms Makefile to add the build rules for creating the 32-bit OpenSBI firmware image for sifive_u machine. A pre-built OpenSBI image (built from commit 3e7d666) has been added as the default bios for 32-bit sifive_u machine. Signed-off-by: Bin Meng --- Makefile | 2 +- pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin | Bin 0 -> 49472 bytes roms/Makefile | 7 +++++++ 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin diff --git a/Makefile b/Makefile index b5a7377..ee7aa6d 100644 --- a/Makefile +++ b/Makefile @@ -804,7 +804,7 @@ u-boot.e500 u-boot-sam460-20100605.bin \ qemu_vga.ndrv \ edk2-licenses.txt \ hppa-firmware.img \ -opensbi-riscv32-virt-fw_jump.bin \ +opensbi-riscv32-sifive_u-fw_jump.bin opensbi-riscv32-virt-fw_jump.bin \ opensbi-riscv64-sifive_u-fw_jump.bin opensbi-riscv64-virt-fw_jump.bin diff --git a/pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin b/pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin new file mode 100644 index 0000000000000000000000000000000000000000..93e2556baa261bfd796cdc484b345bf958c8afea GIT binary patch literal 49472 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