From 3d8f1f386479219c4236b5c0fe483442c1bc7461 Mon Sep 17 00:00:00 2001 From: Zhang RunMin Date: Thu, 19 Mar 2026 20:56:24 +0800 Subject: [PATCH] docs: platform: update qemu_virt.md When using GDB for debugging, if FW_TEXT_START is not set to 0x80000000 during compilation, the following error occurs: Reading symbols from build/platform/generic/firmware/fw_payload.elf... Remote debugging using localhost:1234 mips_warm_boot () at /home/zrmin/opensbi/platform/generic/mips/mips_warm_boot.S:11 11 j _start_warm (gdb) b _start Breakpoint 1 at 0x0: file /home/zrmin/opensbi/firmware/fw_base.S, line 50. (gdb) c Continuing. Remote connection closed (gdb) With FW_TEXT_START=0x80000000, debugging works correctly: Reading symbols from build/platform/generic/firmware/fw_payload.elf... Remote debugging using localhost:1234 0x0000000000001000 in ?? () (gdb) b _start Breakpoint 1 at 0x80000000: file /home/zrmin/opensbi/firmware/fw_base.S, line 50. (gdb) c Continuing. Breakpoint 1, _start () at /home/zrmin/opensbi/firmware/fw_base.S:50 50 MOV_3R s0, a0, s1, a1, s2, a2 (gdb) This is because QEMU loads OpenSBI at address 0x80000000. When FW_TEXT_START does not match this address, the debug symbols are incorrectly offset, causing GDB to fail to set breakpoints properly. Signed-off-by: Zhang RunMin Reviewed-by: Anup Patel Link: https://lore.kernel.org/r/20260319125641.480161-1-runmin.zhang@ingenic.com Signed-off-by: Anup Patel --- docs/platform/qemu_virt.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/platform/qemu_virt.md b/docs/platform/qemu_virt.md index fd87ee5a..4513df8b 100644 --- a/docs/platform/qemu_virt.md +++ b/docs/platform/qemu_virt.md @@ -158,6 +158,9 @@ qemu-system-riscv32 -M virt -m 256M -nographic \ Debugging with GDB ------------------ +Note: the command line examples here assume that OpenSBI was compiled using +the `DEBUG=1 FW_TEXT_START=0x80000000` configuration. + In a first console start OpenSBI with QEMU: ```