diff options
| author | Zhang RunMin <[email protected]> | 2026-03-19 20:56:24 +0800 |
|---|---|---|
| committer | Anup Patel <[email protected]> | 2026-05-11 10:26:36 +0530 |
| commit | 3d8f1f386479219c4236b5c0fe483442c1bc7461 (patch) | |
| tree | ec282cacbd527a2ecde71bcc8443788d3d66b0be | |
| parent | 8cd279e321ce8eedd2750d3e2ed9a906e43e6e38 (diff) | |
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 <[email protected]>
Reviewed-by: Anup Patel <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Anup Patel <[email protected]>
| -rw-r--r-- | docs/platform/qemu_virt.md | 3 |
1 files changed, 3 insertions, 0 deletions
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: ``` |
