From 9f6f8bcddcc68bec294fb4d119c954fc6d8c1814 Mon Sep 17 00:00:00 2001 From: Rodrigo Arias Mallo Date: Thu, 11 Jul 2024 16:00:43 +0200 Subject: [PATCH] Don't use DTB in U-Boot, read it from OpenSBI --- JOURNAL.md | 18 ++++++++++++++++++ lagarto-ox.nix | 4 ++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/JOURNAL.md b/JOURNAL.md index 8458bac..cf7bce2 100644 --- a/JOURNAL.md +++ b/JOURNAL.md @@ -1393,3 +1393,21 @@ from the host to the serial console to test it. It may be worth enabling huge pages again, as there didn't seem to have any effect. + +### OBSERVATION: There are extra regions mapped by OpenSBI + +In the OpenSBI 1.2 test from buildroot: + + Domain0 Region00 : 0x0000000080000000-0x000000008003ffff () + Domain0 Region01 : 0x0000000000000000-0xffffffffffffffff (R,W,X) + Domain0 Next Address : 0x0000000080200000 + Domain0 Next Arg1 : 0x0000000080010000 + +But with OpenSBI 1.4: + + Domain0 Region00 : 0x0000000040000000-0x0000000040000fff M: (I,R,W) S/U: (R,W) + Domain0 Region01 : 0x0000000080020000-0x000000008002ffff M: (R,W) S/U: () + Domain0 Region02 : 0x0000000080000000-0x000000008001ffff M: (R,X) S/U: () + Domain0 Region03 : 0x0000000000000000-0xffffffffffffffff M: () S/U: (R,W,X) + Domain0 Next Address : 0x0000000080200000 + Domain0 Next Arg1 : 0x0000000080013000 diff --git a/lagarto-ox.nix b/lagarto-ox.nix index 104f85c..a3f75df 100644 --- a/lagarto-ox.nix +++ b/lagarto-ox.nix @@ -217,7 +217,7 @@ bootrom = "${final.bitstreams}/lagarto-3-ox/large_bootrom.bin"; uboot = prev.ubootQemuRiscv64Smode.override { - filesToInstall = [ "u-boot.bin" "u-boot-nodtb.bin" ]; + filesToInstall = [ "u-boot-nodtb.bin" ]; #version = "2023.07.02-print-cpu-probe"; #src = builtins.fetchGit { # url = "file:///home/Computational/rarias/riscv/u-boot"; @@ -319,7 +319,7 @@ #"PLATFORM_RISCV_ISA=rv64imafd" # No compressed instructions #"PLATFORM_RISCV_ISA=rv64g" # No compressed instructions #"PLATFORM_RISCV_ABI=lp64d" - "FW_PAYLOAD_PATH=${final.uboot}/u-boot.bin" + "FW_PAYLOAD_PATH=${final.uboot}/u-boot-nodtb.bin" "FW_FDT_PATH=${final.ox-dtb}" ]; patches = [ ./ox-alveo-platform-plic.patch ];