On Mon, Apr 6, 2020 at 8:05 AM Vincent Chen <vincent.c...@sifive.com> wrote: > > On Fri, Apr 3, 2020 at 6:12 PM Daniel Thompson > <daniel.thomp...@linaro.org> wrote: > > > > On Tue, Mar 31, 2020 at 11:23:06PM +0800, Vincent Chen wrote: > > > This patch set implements required ports to enable RISC-V kernel to > > > support > > > KGDB and KDB features. Because there is no immediate value in the RISC-V > > > trap instruction, the kernel cannot identify the purpose of each trap > > > exception through the opcode. This makes the existing identification > > > schemes in other architecture unsuitable for the RISC-V kernel. In order > > > to solve this problem, this patch adds the kgdb_has_hit_break() to kgdb.c > > > to help the RISC-V kernel identify the KGDB trap exception. In addition, > > > the XML target description was introduced in this patch set to enable KGDB > > > to report the contents of the status, cause and steal registers. > > > > > > This patchset has passed the kgdbts test suite provided by Linux kernel on > > > HiFive unleashed board and QEMU. > > > > Can you share the defconfig and qemu boot lines used for testing. > > > > I'd like to see if they can easily be integrated into kgdbtest. Normally > > figuring out the qemu boot line is the hardest bit of adding support for > > an architecture one is not familar with. > > > The process of building a RISC-V kernel is a bit different from other > architecture. Maybe you can refer the steps in > https://risc-v-getting-started-guide.readthedocs.io/en/latest/linux-qemu.html > to build the kernel image and run it. > > For the Linux configuration used by KGDB, I just enable KGDB related > configuration based on riscv defconfig. The riscv defconfig can > founded in arch/riscv/configs/defconfig > > The QEMU boot lines are listed in the following. > > qemu-system-riscv64 -M virt -m 256M -nographic \ > -kernel <bbl image>\ > -append "debug root=/dev/vda rw console=ttyS0" \ > -drive file=<root file system>,format=raw,id=hd0 \ > -serial tcp:localhost:2345,server \ > -gdb tcp::1133 \ > -device virtio-blk-device,drive=hd0 \
Majority of folks (including distros) have moved to OpenSBI instead of BBL. In fact, QEMU releases ship with OpenSBI as default M-mode firmware. To boot Linux on QEMU Virt with OpenSBI as M-mode firmware refer: https://github.com/riscv/opensbi/blob/master/docs/platform/qemu_virt.md Regards, Anup _______________________________________________ Kgdb-bugreport mailing list Kgdb-bugreport@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport