Load DTB from firmware on QEMU targets (riscv64)
See more details in the patch comment. Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
This commit is contained in:
parent
0b81445810
commit
b400f345f0
|
@ -0,0 +1,55 @@
|
||||||
|
From 48fb0ffbe410feaaf4a122eab7ae3547092fbf35 Mon Sep 17 00:00:00 2001
|
||||||
|
From: David Abdurachmanov <davidlt@rivosinc.com>
|
||||||
|
Date: Thu, 26 Jan 2023 16:24:47 +0200
|
||||||
|
Subject: [PATCH] Use QEMU provided DTB on QEMU targets
|
||||||
|
|
||||||
|
This is already available for Unleashed/Unmatched boards. Typically we
|
||||||
|
use DTB built and provided by the kernel package in Fedora. For the QEMU
|
||||||
|
we can get DTB via:
|
||||||
|
|
||||||
|
qemu-system-riscv64 -nographic -smp 8 -m 2G -machine virt,dumpdtb=qemu-riscv.dtb
|
||||||
|
|
||||||
|
Then this needs to be placed (in /boot partition):
|
||||||
|
|
||||||
|
/dtb-6.0.10-300.0.riscv64.fc37.riscv64
|
||||||
|
|
||||||
|
In that case EXTLINUX will use fdtdir + machine/vendor information to
|
||||||
|
locate it.
|
||||||
|
|
||||||
|
QEMU DTS is not shipped part of the kernel tree.
|
||||||
|
|
||||||
|
If fdtdir is removed from extlinux.conf it should just assume that DTB
|
||||||
|
is available and loaded from the firmware.
|
||||||
|
|
||||||
|
QEMU or U-Boot firmware provided DTB is located at fdtcontroladdr. Let's
|
||||||
|
set fdt_addr to it.
|
||||||
|
|
||||||
|
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
|
||||||
|
---
|
||||||
|
configs/qemu-riscv64_defconfig | 2 ++
|
||||||
|
configs/qemu-riscv64_spl_defconfig | 2 ++
|
||||||
|
2 files changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configs/qemu-riscv64_defconfig b/configs/qemu-riscv64_defconfig
|
||||||
|
index 611d5eb3..8df45b2b 100644
|
||||||
|
--- a/configs/qemu-riscv64_defconfig
|
||||||
|
+++ b/configs/qemu-riscv64_defconfig
|
||||||
|
@@ -26,3 +26,5 @@ CONFIG_SYSRESET=y
|
||||||
|
CONFIG_SYSRESET_SBI=y
|
||||||
|
CONFIG_CMD_POWEROFF=y
|
||||||
|
CONFIG_SYSRESET_CMD_POWEROFF=y
|
||||||
|
+CONFIG_USE_PREBOOT=y
|
||||||
|
+CONFIG_PREBOOT="setenv fdt_addr ${fdtcontroladdr}; fdt addr ${fdtcontroladdr};"
|
||||||
|
diff --git a/configs/qemu-riscv64_spl_defconfig b/configs/qemu-riscv64_spl_defconfig
|
||||||
|
index 68b16f0a..28e8b3ef 100644
|
||||||
|
--- a/configs/qemu-riscv64_spl_defconfig
|
||||||
|
+++ b/configs/qemu-riscv64_spl_defconfig
|
||||||
|
@@ -26,3 +26,5 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
|
||||||
|
CONFIG_DM_MTD=y
|
||||||
|
CONFIG_SYS_MAX_FLASH_BANKS=2
|
||||||
|
# CONFIG_BINMAN_FDT is not set
|
||||||
|
+CONFIG_USE_PREBOOT=y
|
||||||
|
+CONFIG_PREBOOT="setenv fdt_addr ${fdtcontroladdr}; fdt addr ${fdtcontroladdr};"
|
||||||
|
--
|
||||||
|
2.37.1
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
|
|
||||||
Name: uboot-tools
|
Name: uboot-tools
|
||||||
Version: 2023.01
|
Version: 2023.01
|
||||||
Release: 2%{?candidate:.%{candidate}}.1.riscv64%{?dist}
|
Release: 2%{?candidate:.%{candidate}}.2.riscv64%{?dist}
|
||||||
Summary: U-Boot utilities
|
Summary: U-Boot utilities
|
||||||
License: GPLv2+ BSD LGPL-2.1+ LGPL-2.0+
|
License: GPLv2+ BSD LGPL-2.1+ LGPL-2.0+
|
||||||
URL: http://www.denx.de/wiki/U-Boot
|
URL: http://www.denx.de/wiki/U-Boot
|
||||||
|
@ -38,6 +38,7 @@ Patch7: rockchip-Add-initial-support-for-the-PinePhone-Pro.patch
|
||||||
Patch20: 0001-board-sifive-spl-Initialized-the-PWM-setting-in-the-.patch
|
Patch20: 0001-board-sifive-spl-Initialized-the-PWM-setting-in-the-.patch
|
||||||
Patch21: 0002-board-sifive-spl-Set-remote-thermal-of-TMP451-to-85-.patch
|
Patch21: 0002-board-sifive-spl-Set-remote-thermal-of-TMP451-to-85-.patch
|
||||||
Patch22: 0003-Enable-sbi-command-and-SBI-sysreset.patch
|
Patch22: 0003-Enable-sbi-command-and-SBI-sysreset.patch
|
||||||
|
Patch23: 0001-Use-QEMU-provided-DTB-on-QEMU-targets.patch
|
||||||
|
|
||||||
BuildRequires: bc
|
BuildRequires: bc
|
||||||
BuildRequires: bison
|
BuildRequires: bison
|
||||||
|
@ -255,10 +256,13 @@ cp -p board/sunxi/README.nand builds/docs/README.sunxi-nand
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jan 26 2023 David Abdurachmanov <davidlt@rivosinc.com> - 2023.01-2.2.riscv64
|
||||||
|
- Load DTB from firmware on QEMU targets (riscv64)
|
||||||
|
|
||||||
* Thu Jan 26 2023 David Abdurachmanov <davidlt@rivosinc.com> - 2023.01-2.1.riscv64
|
* Thu Jan 26 2023 David Abdurachmanov <davidlt@rivosinc.com> - 2023.01-2.1.riscv64
|
||||||
- Rebuild with OpenSBI v1.2
|
- Rebuild with OpenSBI v1.2
|
||||||
|
|
||||||
* Tue Jan 25 2023 David Abdurachmanov <davidlt@rivosinc.com> - 2023.01-2.0.riscv64
|
* Wed Jan 25 2023 David Abdurachmanov <davidlt@rivosinc.com> - 2023.01-2.0.riscv64
|
||||||
- Add support for riscv64
|
- Add support for riscv64
|
||||||
|
|
||||||
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2023.01-2
|
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2023.01-2
|
||||||
|
|
Loading…
Reference in New Issue