On 12 Nov 2014, at 15:51, Peter Maydell <peter.mayd...@linaro.org> wrote:
> ... I'd suggest looking at Alistair's patches > on the list for supporting the netduino2, will certainly do. and I also plan to review the patches of Andre Bechus, available from https://github.com/beckus/qemu_stm32. >> for me, the plain arm-softmmu is not usable, since it forwards the >> semihosting calls via gdb instead of using native implementation, >> so I had to add a configuration variable to change this behaviour. > > That sounds like the kind of thing that other people might also > want to be able to do, so it would be better to make arm-softmmu > be runtime configurable on this, I think. for the gnuarmeclipse-qemu target, since I never need to forward semihosting to gdb, the solution was to add a configuration variable and statically set it at build time to always use native calls. --- gdbstub.c --- /* If gdb is connected when the first semihosting syscall occurs then use remote gdb syscalls. Otherwise use native file IO. */ int use_gdb_syscalls(void) { #if !defined(CONFIG_SEMIHOSTING_NATIVE) if (gdb_syscall_mode == GDB_SYS_UNKNOWN) { gdb_syscall_mode = (gdbserver_state ? GDB_SYS_ENABLED : GDB_SYS_DISABLED); } return gdb_syscall_mode == GDB_SYS_ENABLED; #else // Make semihosting always use native file IO. if (gdb_syscall_mode == GDB_SYS_UNKNOWN) { gdb_syscall_mode = GDB_SYS_DISABLED; } return FALSE; #endif } for arm-softmmu you probably need a way to configure this at run-time, which would involve a new monitor command, that can be issued from the GDB client via 'mon XXXX'. I guess you are not happy with a new gnuarmeclipse-qemu target, but since my experience with arm-softmmu is almost null, I want to avoid breaking anything there. regards, Liviu