[Qemu-devel] [PATCH] --semihosting-cmdline added

2015-04-17 Thread Liviu Ionescu
struct ... Semihosting added, with all semihosting config variables - use a minimalistic boot info in armv7m.c Signed-off-by: Liviu Ionescu i...@livius.net --- gdbstub.c | 6 ++-- hw/arm/armv7m.c | 12 +++ include/exec/gdbstub.h | 6 include/sysemu/sysemu.h | 21

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-15 Thread Liviu Ionescu
On 15 Apr 2015, at 14:53, Leon Alrae leon.al...@imgtec.com wrote: On 15/04/2015 10:09, Liviu Ionescu wrote: Peter/Leon, I'm planning for my future releases, and, to avoid incompatible versions, I would like to help with the semihosting configuration issue, to speed up things

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-15 Thread Liviu Ionescu
On 15 Apr 2015, at 15:49, Leon Alrae leon.al...@imgtec.com wrote: ... If there aren't any objections for the proposed solution, then let's just cook up the patch. the changes related to moving --semihosting-cmdline to the end of the line are in:

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-15 Thread Liviu Ionescu
programs that need to pass such arguments. please let me know how can I be of any help. regards, Liviu On 14 Apr 2015, at 20:42, Liviu Ionescu i...@livius.net wrote: On 08 Apr 2015, at 19:20, Leon Alrae leon.al...@imgtec.com wrote: ... I do understand however that in your particular

[Qemu-devel] Cross-Compiling Static QEMU for Windows

2015-04-14 Thread Liviu Ionescu
[1] http://gnuarmeclipse.livius.net/wiki/How_to_build_QEMU this page is quite old, there is a new one in my wiki, and in the latest Windows builds I no longer use the --static option, but... I don't remember exactly the reason for this... regards, Liviu

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-14 Thread Liviu Ionescu
On 08 Apr 2015, at 19:20, Leon Alrae leon.al...@imgtec.com wrote: ... I do understand however that in your particular case cmdline is more convenient, thus I personally don’t mind having both options: the user-friendly cmdline and more flexible arg. I was a bit optimistic with the first

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-09 Thread Liviu Ionescu
On 09 Apr 2015, at 20:58, Peter Maydell peter.mayd...@linaro.org wrote: On 9 April 2015 at 18:41, Stefan Weil s...@weilnetz.de wrote: I think -mthreads is essential (needed for thread local storage), and -D_POSIX=1 is also needed for 64 bit builds. My 64-bit builds worked without either

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-09 Thread Liviu Ionescu
On 09 Apr 2015, at 10:40, Liviu Ionescu i...@livius.net wrote: I guess you either tweaked the pkg-config to find them, or you set some environment variables before configure. ... can you share these details too? I want to reproduce exactly your environment. the reason I ask

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-09 Thread Liviu Ionescu
On 09 Apr 2015, at 08:12, Stefan Weil s...@weilnetz.de wrote: The first four are custom packages, and you can get them from http://qemu.weilnetz.de/debian/. The last one is Wheezy specific and not needed. ok, got them, installed them and got no errors, they are now listed by dpkg -l The

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-09 Thread Liviu Ionescu
On 09 Apr 2015, at 20:58, Peter Maydell peter.mayd...@linaro.org wrote: On 9 April 2015 at 18:41, Stefan Weil s...@weilnetz.de wrote: I think -mthreads is essential (needed for thread local storage), and -D_POSIX=1 is also needed for 64 bit builds. My 64-bit builds worked without either

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-08 Thread Liviu Ionescu
On 08 Apr 2015, at 09:20, Stefan Weil s...@weilnetz.de wrote: ../../../configure --cross-prefix=x86_64-w64-mingw32- --enable-trace-backend=stderr --extra-cflags=-Wno-missing-format-attribute make ... mingw-w64.Here is my package list (from Debian Jessie): ok I'm just installing a

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-08 Thread Liviu Ionescu
On 08 Apr 2015, at 09:20, Stefan Weil s...@weilnetz.de wrote: ... Here is my package list (from Debian Jessie): ii binutils-mingw-w64-i686 2.22-8+deb7u2+2+deb7u1amd64 Cross-binutils for Win32 (x86) using MinGW-w64 ii binutils-mingw-w64-x86-64 2.22-8+deb7u2+2+deb7u1

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-08 Thread Liviu Ionescu
On 08 Apr 2015, at 02:10, Peter Maydell peter.mayd...@linaro.org wrote: ... I dug out my notes on my setup at the time. ... but at the time (about June last year) this was a reproducible recipe that other people were able to use to build working w64 binaries. thank you, Peter, I'll first

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-08 Thread Liviu Ionescu
On 08 Apr 2015, at 09:20, Stefan Weil s...@weilnetz.de wrote: Here is my package list (from Debian Jessie): ii binutils-mingw-w64-i686 2.22-8+deb7u2+2+deb7u1amd64 Cross-binutils for Win32 (x86) using MinGW-w64 ii binutils-mingw-w64-x86-64 2.22-8+deb7u2+2+deb7u1

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-07 Thread Liviu Ionescu
On 08 Apr 2015, at 00:30, Peter Maydell peter.mayd...@linaro.org wrote: On 7 April 2015 at 22:21, Liviu Ionescu i...@livius.net wrote: I could not identify if the problem is within qemu or mingw-w64, but I would not rule out a problem in qemu. I would first suspect a customisation made

[Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-07 Thread Liviu Ionescu
I was too optimistic, my 64-bit Windows build of the ARM emulator is not functional. :-( I also tested other 64-bit builds of qemu-system-arm made with mingw-w64 and they are also not functional, they generally crash with some nasty DLL errors when emulation is about to start (for example

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-07 Thread Liviu Ionescu
On 08 Apr 2015, at 01:36, Peter Maydell peter.mayd...@linaro.org wrote: No, I built an actual 64 bit Windows binary and it worked. ok, then it must be only a matter of configure, which does not detect running on mingw-w64 to set the required options (perhaps like -mthreads -D_POSIX=1),

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional

2015-04-07 Thread Liviu Ionescu
On 08 Apr 2015, at 00:46, Liviu Ionescu i...@livius.net wrote: ... the 64-bit Windows build prepared by Stefan Weil seems to be done with the old mingw-w32 on Windows, not mingw-w64. correction, I'm no longer convinced this is true, the build might be done with mingw-w64, but with a lot

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-04 Thread Liviu Ionescu
On 01 Apr 2015, at 16:18, Leon Alrae leon.al...@imgtec.com wrote: ... I would like to follow up with a clean up where we've got a semi-hosting specific structure rather than keep generating more semihosting_* variables. I checked the differences between my fork and the master branch

[Qemu-devel] GNU ARM Eclipse QEMU progress

2015-04-03 Thread Liviu Ionescu
after completing the build procedures, I did a major cleanup in the code I already added to the project. the purpose was to clearly identify the modified code and to make future merges as conflict-free as possible. currently all added code is generally behind #if

[Qemu-devel] build script for windows, gnu/linux os x

2015-04-03 Thread Liviu Ionescu
hi, the script to build the multi-platform GNU ARM Eclipse QEMU is now fully functional and is able to create: - windows nsis setup files - os x pkg install packages - linux tgz archives. the windows versions (both 32-bit and 64-bit) are cross compiled with mingw-w64 on ubuntu. the

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-02 Thread Liviu Ionescu
On 02 Apr 2015, at 10:56, Leon Alrae leon.al...@imgtec.com wrote: ... The UHI semihosting supports Argn syscall which returns single argument, and Argn is called multiple times to build argv (each argument can contain whitespaces). ok, I don't want to comment too much on UHI design, since

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-02 Thread Liviu Ionescu
On 02 Apr 2015, at 13:36, Leon Alrae leon.al...@imgtec.com wrote: How would you pass arguments containing whitespaces via -semihosting-config cmdline without having to reinvent shell within QEMU? I missed the fact that you already provided the implementation for this below... for

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-02 Thread Liviu Ionescu
On 02 Apr 2015, at 17:27, Matthew Fortune matthew.fort...@imgtec.com wrote: Liviu Ionescu i...@livius.net writes: for completeness: ilg-mbp:gnuarmeclipse-qemu.git ilg$ /Applications/GNU ARM Eclipse/QEMU/2.2.91-20150402-dev/bin/qemu-system-gnuarmeclipse - verbose -machine STM32-H103

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-01 Thread Liviu Ionescu
On 01 Apr 2015, at 18:45, Christopher Covington c...@codeaurora.org wrote: I think the commit message and help text should include some information on how this is different from -append and what the result is of specifying both -append foo=a and -semihosting-config arg=foo=b. if I remember

Re: [Qemu-devel] [RFC PATCH] vl.c: add -semihosting-config arg sub-argument

2015-04-01 Thread Liviu Ionescu
On 01 Apr 2015, at 16:18, Leon Alrae leon.al...@imgtec.com wrote: ... This simple patch adds arg sub-argument which in my opinion is flexible enough to satisfy semi-hosting interfaces which allocate buffers at runtime (so it is possible to pass any number of strings of any length) as well

Re: [Qemu-devel] arm: semihosting: Preliminary AArch64 support

2015-03-30 Thread Liviu Ionescu
On 30 Mar 2015, at 14:44, Leon Alrae leon.al...@imgtec.com wrote: ... QEMU parser doesn't seem to support the same sub-argument used multiple times (always the last value is used): -semihosting-config arg=argument 1,arg=argument 2,arg=argument 3 yes, unfortunately it is not supported.

Re: [Qemu-devel] arm: semihosting: Preliminary AArch64 support

2015-03-27 Thread Liviu Ionescu
On 27 Mar 2015, at 18:22, Christopher Covington christopher.coving...@linaro.org wrote: Hi, Here are a few patches preparing for and adding AArch64 Angel semihosting support. please note that the semihosting support is still incomplete, the code to pass the semihosting command line

Re: [Qemu-devel] arm: semihosting: Preliminary AArch64 support

2015-03-27 Thread Liviu Ionescu
On 27 Mar 2015, at 19:15, Leon Alrae leon.al...@imgtec.com wrote: ... introducing separate -semihosting-arg option to pass input arguments if we'll ever go for this solution, I would call it -semihosting-cmdline, since it should include the entire command line, starting with argv[0]. ...

[Qemu-devel] [Bug 1216845] Re: qemu-system-arm semihosting always calls exit(0)

2015-02-04 Thread Liviu Ionescu
thank you for your suggestion. as semihosting servers I use the j-link gdb server, openocd and qemu. if I got it right, you suggest to modify all these servers to retrieve the exit code from a specific location. as long as this is not documented in the ARM manuals, I cannot recommend such a

Re: [Qemu-devel] MinGW build

2014-12-02 Thread Liviu Ionescu
On 01 Dec 2014, at 20:42, Stefan Weil s...@weilnetz.de wrote: Here are some more hints which might help people to get cross compilation for Windows running. http://qemu.weilnetz.de/debian/ includes some packages which I made from the GTK all-in-one bundles and also packages for libfdt which

Re: [Qemu-devel] MinGW build

2014-12-01 Thread Liviu Ionescu
On 28 Nov 2014, at 09:03, Stefan Weil s...@weilnetz.de wrote: This is my build script: http://qemu.weilnetz.de/results/make-installers-all. we finally have a functional windows version, installed with a setup, as you recommended. the build procedure was fully documented at:

Re: [Qemu-devel] MinGW build

2014-11-27 Thread Liviu Ionescu
On 26 Nov 2014, at 22:13, Peter Maydell peter.mayd...@linaro.org wrote: Hmm. We have a workaround already for a similar thing in include/sysemu/os-win32.h, but that works by declaring a prototype rather than using a #define, and it's guarded by defined(_WIN64). I wonder if some of those

Re: [Qemu-devel] MinGW build

2014-11-27 Thread Liviu Ionescu
On 27 Nov 2014, at 21:34, Peter Maydell peter.mayd...@linaro.org wrote: On 27 November 2014 at 16:43, Liviu Ionescu i...@livius.net wrote: in qemu-common.h: #ifdef _WIN32 #include sysemu/os-win32.h #endif #ifdef __MINGW32__ #include sysemu/os-win32.h #endif Wait, so your mingw

Re: [Qemu-devel] MinGW build

2014-11-27 Thread Liviu Ionescu
On 27 Nov 2014, at 22:09, Stefan Weil s...@weilnetz.de wrote: There is a better alternative: use Mingw-w64. working on it. Maybe we should drop MinGW support completely... ok, as soon as we fix the build details on MinGW-w64, I'll remove the MinGW instructions from my wiki. Liviu

Re: [Qemu-devel] MinGW build

2014-11-27 Thread Liviu Ionescu
On 27 Nov 2014, at 22:18, Peter Maydell peter.mayd...@linaro.org wrote: On 27 November 2014 at 20:09, Stefan Weil s...@weilnetz.de wrote: *nearly means that there are still warnings for format strings in C++ code. Hmm, do we still have these with the libvixl version we have now? If so,

Re: [Qemu-devel] MinGW build

2014-11-27 Thread Liviu Ionescu
On 27 Nov 2014, at 23:14, Stefan Weil s...@weilnetz.de wrote: Do you really need statically linked executables actually I don't know, my experience with Windows is limited :-( on OS X, if I distribute a folder containing an executable and a bunch of dynamic libraries, the folder where the

Re: [Qemu-devel] MinGW build

2014-11-27 Thread Liviu Ionescu
On 28 Nov 2014, at 00:04, Peter Maydell peter.mayd...@linaro.org wrote: ... OSX ... clang ... a bunch of warnings ... I'm hoping we'll be able to fix these for 2.3. ok, thank you, Liviu

Re: [Qemu-devel] MinGW build

2014-11-27 Thread Liviu Ionescu
On 28 Nov 2014, at 08:20, Stefan Weil s...@weilnetz.de wrote: Windows dynamic libraries (DLL files) are also loaded from the executable's directory if they exist there. You don't need a special setup to make that work, it's the standard behaviour. ok, great! could you send me your build

[Qemu-devel] MinGW build

2014-11-26 Thread Liviu Ionescu
since I had some troubles to build QEMU on Windows, I compiled a page with some instructions: http://gnuarmeclipse.livius.net/wiki/How_to_build_QEMU#Windows the purpose was to generate a standalone executable, that requires no libraries. although the procedure is fully functional, I

Re: [Qemu-devel] MinGW build

2014-11-26 Thread Liviu Ionescu
On 26 Nov 2014, at 22:13, Peter Maydell peter.mayd...@linaro.org wrote: ... We have a workaround already for a similar thing in include/sysemu/os-win32.h, ok, I'll investigate. Do you have any experience with mingw-w64? unfortunately not, but, time permitting, I'll check it. In any case,

[Qemu-devel] Cortex-M development progress

2014-11-25 Thread Liviu Ionescu
As mentioned in a previous message, I started work on a more detailed implementation for the M profile. At first I defined in target-arm/cpu.c the cpu-s for all variants (M0/M0+/M1/M3/M4/M7). /* Cortex-M cores. Currently only M3 is tested and fully functional. */ { .name = cortex-m0,

Re: [Qemu-devel] Cortex-M development progress

2014-11-25 Thread Liviu Ionescu
On 25 Nov 2014, at 22:37, Peter Maydell peter.mayd...@linaro.org wrote: I'd also strongly prefer not to implement three dozen boards unless we really need them all. Again, start with one and implement a decent subset of the devices it has on it. we probably have different goals. I don't

[Qemu-devel] [PATCH] armv7m: optional -kernel if -gdb present

2014-11-20 Thread Liviu Ionescu
For standalone emulation, the image must be specified via -kernel, but when using QEMU as a GDB server, the presence of -kernel is no longer mandatory, since the image can be loaded by the GDB client. Signed-off-by: Liviu Ionescu i...@livius.net --- hw/arm/armv7m.c | 3 ++- include

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-20 Thread Liviu Ionescu
Hi, with the latest submitted patches, the functionality I expect for qemu-system-arm is complete. (I have some more cosmetic suggestions, to be discussed later). to test the functionality, you can download an unit test application from:

Re: [Qemu-devel] [PATCH] armv7m: optional -kernel if -gdb present

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 14:29, Peter Maydell peter.mayd...@linaro.org wrote: -if (!kernel_filename !qtest_enabled()) { +if (!kernel_filename !qtest_enabled() !with_gdb) { fprintf(stderr, Guest image must be specified (using -kernel)\n); exit(1); } just delete

Re: [Qemu-devel] [PATCH] armv7m: optional -kernel if -gdb present

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 14:50, Peter Maydell peter.mayd...@linaro.org wrote: Same thing as if you start a hardware board with nothing loaded into the flash. (Probably this means go into an infinite loop of taking exceptions.) hmmm... and you consider this behaviour to meet the user-friendly

Re: [Qemu-devel] [PATCH] armv7m: optional -kernel if -gdb present

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 15:20, Peter Maydell peter.mayd...@linaro.org wrote: ... However the solutions you're proposing are often specific to M-profile ARM, ok, I'll keep this local to my branch. what about the previous patch, is it acceptable? regards, Liviu

Re: [Qemu-devel] [PATCH] Add -semihosting-config ....cmdline=string.

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 15:31, Peter Maydell peter.mayd...@linaro.org wrote: I think you can avoid having to plumb the command line string into the MachineState and arm_boot_info structures, because you can just have the semihosting code look the option up by name: QemuOpts *opts =

Re: [Qemu-devel] [PATCH] Add -semihosting-config ....cmdline=string.

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 17:10, Peter Maydell peter.mayd...@linaro.org wrote: something is missing with the way options are handled, this call fails with BAD_ACCESS. What's this? It's not an error code in QEMU... no, it is a system condition, EXC_BAD_ACCESS, generally caused by a bad pointer.

Re: [Qemu-devel] [PATCH v2] Add the -semihosting-config option.

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 17:22, Peter Maydell peter.mayd...@linaro.org wrote: ... I had to move the declaration and definition of semihosting_target to gdbstub.h and gdbstub.c, because otherwise the linux-user targets won't compile. (They don't compile vl.c.) :-( please let me know when the

[Qemu-devel] [PATCH v2] Add -semihosting-config ....cmdline=string.

2014-11-20 Thread Liviu Ionescu
streamlined, to use the MachineState structure instead of separate strings. Signed-off-by: Liviu Ionescu i...@livius.net --- hw/arm/armv7m.c | 14 +- hw/arm/stellaris.c| 12 include/hw/arm/arm.h | 2 +- qemu-options.hx | 10 +++--- target-arm/arm-semi.c | 27

Re: [Qemu-devel] [PATCH] Add -semihosting-config ....cmdline=string.

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 17:39, Peter Maydell peter.mayd...@linaro.org wrote: NB: you'll want to stick this inside the !CONFIG_USER_ONLY did this. now it works for me, but please check if it compiles properly for other targets. regards, Liviu

Re: [Qemu-devel] [PATCH v2] Add -semihosting-config ....cmdline=string.

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 18:40, Liviu Ionescu i...@livius.net wrote: A new sub-option was added to -semihosting-config to define the entire semihosting command line (cmdline=string). unfortunately the use of a sub-option is not appropriate, the command line string must be allowed to include *any

Re: [Qemu-devel] [PATCH v2] Add -semihosting-config ....cmdline=string.

2014-11-20 Thread Liviu Ionescu
On 20 Nov 2014, at 22:20, Eric Blake ebl...@redhat.com wrote: Instead, try: -semihosting-config target=native,cmdline=MessageTest --gtest_output=xml:gcm.xml,,baburiba with double comma, the output of my custom qemu shows that the command line was properly parsed: GNU ARM Eclipse QEMU

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-19 Thread Liviu Ionescu
On 18 Nov 2014, at 21:46, Liviu Ionescu i...@livius.net wrote: once you integrate them... thank you for integrating them. so can I base my next patches on them? I'll work on another patch, to fix passing the semihosting command line down to the armv7m code, since currently this triggers

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-19 Thread Liviu Ionescu
On 19 Nov 2014, at 14:08, Peter Maydell peter.mayd...@linaro.org wrote: ... (Bear in mind that my target-arm.next branch is a rebasing branch, so you can't git merge or pull it; you need to fetch it and then rebase your patchstack on it.) I currently have two more branches in my git, for

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-19 Thread Liviu Ionescu
On 19 Nov 2014, at 15:20, Peter Maydell peter.mayd...@linaro.org wrote: Yes, we should do this. (We have to make cmdline= optional anyway, to support old and previously working command lines.) ok, so I'll add the optional 'cmdline=' to the newly added '-semihosting-config'. since this was

[Qemu-devel] [PATCH] Add -semihosting-config ....cmdline=string.

2014-11-19 Thread Liviu Ionescu
streamlined, to use the MachineState structure instead of separate strings. The semihosting_cmdline was added to the structures MachineState and arm_boot_info. Signed-off-by: Liviu Ionescu i...@livius.net --- hw/arm/armv7m.c | 15 ++- hw/arm/stellaris.c| 12 include

Re: [Qemu-devel] runtime configurable semihosting

2014-11-18 Thread Liviu Ionescu
On 18 Nov 2014, at 15:31, Peter Maydell peter.mayd...@linaro.org wrote: Sorry, yes, you're right; I should have looked more carefully. So we do need a new option; or we should fix the parser. if the current keyword is not in the list, it can be pushed back, and defaults used.

[Qemu-devel] [PATCH] add semihosting-config option

2014-11-18 Thread Liviu Ionescu
- allow to define where the semihosting calls will be addressed Signed-off-by: Liviu Ionescu i...@livius.net --- gdbstub.c | 12 include/sysemu/sysemu.h | 6 ++ qemu-options.hx | 12 +++- vl.c| 49

[Qemu-devel] [PATCH] pass semihosting exit code back to system

2014-11-18 Thread Liviu Ionescu
Signed-off-by: Liviu Ionescu i...@livius.net --- target-arm/arm-semi.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/target-arm/arm-semi.c b/target-arm/arm-semi.c index ebb5235..4b982ad 100644 --- a/target-arm/arm-semi.c +++ b/target-arm/arm-semi.c @@ -58,6

[Qemu-devel] [PATCH] pass ARM semihosting exit code back to system

2014-11-18 Thread Liviu Ionescu
if the application code passed via TARGET_SYS_EXIT is ADP_Stopped_ApplicationExit, and return 0, otherwise return 1. Liviu Ionescu (1): pass semihosting exit code back to system target-arm/arm-semi.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) -- 1.9.3 (Apple Git-50)

[Qemu-devel] [PATCH] add -semihosting-config option

2014-11-18 Thread Liviu Ionescu
('gdb'). The default is auto, which means 'gdb' during debug sessions and 'native' otherwise. Liviu Ionescu (1): add semihosting-config option gdbstub.c | 12 include/sysemu/sysemu.h | 6 ++ qemu-options.hx | 12 +++- vl.c| 49

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-18 Thread Liviu Ionescu
On 17 Nov 2014, at 14:32, Peter Maydell peter.mayd...@linaro.org wrote: You can start out by separating out one or two and submitting those. just did that, I submitted two patches, one to add the -semihosting-config and one to fix the exit code. if you have further comments, please let me

[Qemu-devel] [PATCH v2] Pass semihosting exit code back to system.

2014-11-18 Thread Liviu Ionescu
if the application code passed via TARGET_SYS_EXIT is ADP_Stopped_ApplicationExit, and return 0, otherwise return 1. Signed-off-by: Liviu Ionescu i...@livius.net --- target-arm/arm-semi.c | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/target-arm/arm-semi.c b/target-arm/arm

Re: [Qemu-devel] [PATCH] pass semihosting exit code back to system

2014-11-18 Thread Liviu Ionescu
On 18 Nov 2014, at 21:48, Peter Maydell peter.mayd...@linaro.org wrote: The ARM documentation seems to define this value as 0x20026 rather than with a shift-and-decimal-value, so I'd rather follow that. right, I changed it and resent. regards, Liviu

[Qemu-devel] [PATCH v2] Add the -semihosting-config option.

2014-11-18 Thread Liviu Ionescu
('gdb'). The default is auto, which means 'gdb' during debug sessions and 'native' otherwise. Signed-off-by: Liviu Ionescu i...@livius.net --- gdbstub.c | 13 +++-- include/sysemu/sysemu.h | 6 ++ qemu-options.hx | 12 +++- vl.c| 49

[Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-18 Thread Liviu Ionescu
. The MachineState was propagated from the board initialisation functions up to armv7m_init(). Liviu Ionescu (1): functional ARM semihosting under GDB gdbstub.c | 12 +++ hw/arm/armv7m.c | 27 +++- hw/arm/stellaris.c | 14 + include/hw

[Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-18 Thread Liviu Ionescu
Signed-off-by: Liviu Ionescu i...@livius.net --- gdbstub.c | 12 +++ hw/arm/armv7m.c | 27 +++- hw/arm/stellaris.c | 14 + include/hw/arm/arm.h| 8 --- include/hw/boards.h | 1 + include/sysemu/sysemu.h | 7

Re: [Qemu-devel] [PATCH] add semihosting-config option

2014-11-18 Thread Liviu Ionescu
On 18 Nov 2014, at 21:44, Peter Maydell peter.mayd...@linaro.org wrote: ...and there isn't much point in these if()s right, removed Also we prefer 'true' and 'false' to TRUE and FALSE. fixed (The change won't hit master until after we release 2.2 in early December, so there's no

Re: [Qemu-devel] [PATCH v2] Pass semihosting exit code back to system.

2014-11-18 Thread Liviu Ionescu
On 18 Nov 2014, at 23:19, Paolo Bonzini pbonz...@redhat.com wrote: The isa-debugexit and testdev character device do not exit with exitcode 0, in order to distinguish an exit from a system power down; the low-order bit is always 1. The return values then should be 1 and 3 instead of 0 and

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-17 Thread Liviu Ionescu
On 17 Nov 2014, at 14:32, Peter Maydell peter.mayd...@linaro.org wrote: that it's combining six different features and bug fixes into a single commit. Could you separate them out into their own patches? sure. in practical terms, this requires separate branches and each be applied to master,

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-17 Thread Liviu Ionescu
On 17 Nov 2014, at 14:35, Peter Maydell peter.mayd...@linaro.org wrote: Compare the handling of 'rtc' and similar options: you get to have an implied option name so -foo is treated like -foo enable=true, I already considered this in a previous tentative version, but the implementation

Re: [Qemu-devel] runtime configurable semihosting

2014-11-13 Thread Liviu Ionescu
On 12 Nov 2014, at 21:17, Liviu Ionescu i...@livius.net wrote: semihosting ... be runtime configurable on this, I think. I took a quick look at the syntax of command options and monitor commands, and I would suggest the following: - extend the option -semihosting with an optional

Re: [Qemu-devel] runtime configurable semihosting

2014-11-13 Thread Liviu Ionescu
On 13 Nov 2014, at 23:23, Liviu Ionescu i...@livius.net wrote: ... gdb, but since I never used this configuration... btw, can anyone suggest how to configure things to test this kind of 'semihosting forwarding'? does the standard GDB support this, or a custom one is required? from

Re: [Qemu-devel] runtime configurable semihosting

2014-11-13 Thread Liviu Ionescu
On 13 Nov 2014, at 23:38, Peter Maydell peter.mayd...@linaro.org wrote: On 13 November 2014 21:23, Liviu Ionescu i...@livius.net wrote: ...I'm confused, I think. I thought 'gdb' was an option you added? that's correct, but only part of the whole image, in fact I added -semihosting-target

Re: [Qemu-devel] runtime configurable semihosting

2014-11-13 Thread Liviu Ionescu
On 14 Nov 2014, at 00:16, Peter Maydell peter.mayd...@linaro.org wrote: Right, but what does it mean to say 'gdb' that's different from 'auto' ? auto sends either to gdb or qemu, gdb always sends to gdb, native always to qemu. What happens in that case if you don't have a gdb attached?

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-13 Thread Liviu Ionescu
to test the patch, you can download an unit test application from: https://dl.dropboxusercontent.com/u/78151643/gcm.elf there are two use cases: 1) standalone (usually unit tests integrated in a continuous integration system) $ ./qemu-system-arm -machine lm3s6965evb -image gcm.elf

Re: [Qemu-devel] Better Cortex-M support?

2014-11-13 Thread Liviu Ionescu
On 14 Nov 2014, at 03:01, Alistair Francis alistai...@gmail.com wrote: I haven't looked into CMSIS or using SysTick, so I can't confirm that they work. I don't have any experience with using either, so I can't really be of much help with those. when you'll have some time, perhaps it would be

Re: [Qemu-devel] [PATCH] functional ARM semihosting under GDB

2014-11-13 Thread Liviu Ionescu
On 14 Nov 2014, at 02:25, Liviu Ionescu i...@livius.net wrote: (gdb) system_reset in fact this is (gdb) mon system_reset Liviu

Re: [Qemu-devel] Better Cortex-M support?

2014-11-12 Thread Liviu Ionescu
On 12 Nov 2014, at 15:02, Peter Maydell peter.mayd...@linaro.org wrote: The instructions themselves are generally supported for the A profile cores, so getting that part right would mostly involve enabling those feature bits for the new M4 CPU class. ok The difficult bits are going to

Re: [Qemu-devel] Better Cortex-M support?

2014-11-12 Thread Liviu Ionescu
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.

Re: [Qemu-devel] Better Cortex-M support?

2014-11-12 Thread Liviu Ionescu
On 13 Nov 2014, at 02:11, Alistair Francis alistai...@gmail.com wrote: I am trying to model the Netduino Plus 2 (STM32F4xx - Cortex-M4) board... upstreamed to mainline by using the Netduino 2 board (STM32F2xx - Cortex-M3). ok, great work! however, I'm more interested in a more systematic

Re: [Qemu-devel] Better Cortex-M support?

2014-11-11 Thread Liviu Ionescu
On 28 Oct 2014, at 12:43, Liviu Ionescu i...@livius.net wrote: ... GNU ARM Eclipse plug-ins (http://gnuarmeclipse.livius.net/blog/), and I'm considering, for the mid-term future, adding a new debugging plug-in to run certain tests under un emulator I did the first steps towards this, I

Re: [Qemu-devel] Better Cortex-M support?

2014-10-29 Thread Liviu Ionescu
On 28 Oct 2014, at 16:18, Peter Maydell peter.mayd...@linaro.org wrote: (There's also flash at address zero.) if this is wrong, can you suggest a fix? some time ago when I first used qemu the entire memory was similar, ram or flash alike. should I define them explicitly? so valid RAM is

Re: [Qemu-devel] Better Cortex-M support?

2014-10-29 Thread Liviu Ionescu
On 28 Oct 2014, at 19:08, Peter Maydell peter.mayd...@linaro.org wrote: once the core Cortex-M emulation is fully functional, it should be easier to add support for specific devices, by configuring some of the parameters (flash/ram, add some peripherals, etc). QEMU doesn't conveniently

Re: [Qemu-devel] Better Cortex-M support?

2014-10-29 Thread Liviu Ionescu
On 29 Oct 2014, at 12:31, Peter Maydell peter.mayd...@linaro.org wrote: I think I'd call that a bug; I suspect there's an unfortunate interaction between the gdbstub and semihosting ... should we open a ticket for this? regards, Liviu

Re: [Qemu-devel] Better Cortex-M support?

2014-10-29 Thread Liviu Ionescu
On 29 Oct 2014, at 17:11, Paolo Bonzini pbonz...@redhat.com wrote: On 10/28/2014 03:40 PM, Peter Maydell wrote: I think writes via gdb will be treated in the same way as writes by the CPU (ie interpreted as attempts to program the flash device). QEMU doesn't support a debug access

Re: [Qemu-devel] Better Cortex-M support?

2014-10-29 Thread Liviu Ionescu
On 29 Oct 2014, at 17:31, Paolo Bonzini pbonz...@redhat.com wrote: That's due to usage of the breakpoint instruction, as Peter pointed out. Are we treating the breakpoint as a breakpoint and dropping into gdb rather than treating it as a semihosting call? my first thought was that the

[Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
Hi! I'm currently maintaining the GNU ARM Eclipse plug-ins (http://gnuarmeclipse.livius.net/blog/), and I'm considering, for the mid-term future, adding a new debugging plug-in to run certain tests under un emulator, and the first choice was QEMU. Do you know if there are any plans to

Re: [Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
On 28 Oct 2014, at 14:22, Peter Maydell peter.mayd...@linaro.org wrote: ... We do see a steady trickle of people complaining that the M profile emulation is not very good, so it would be nice to see it more actively maintained upstream. ok, than I'll probably clone the repo, add a

Re: [Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
On 28 Oct 2014, at 14:45, Peter Maydell peter.mayd...@linaro.org wrote: qemu: Unsupported SemiHosting SWI 0x00 R00= R01= R02= R03= R04= R05= R06= R07=200ffed8 R08= R09= R10= R11= R12=

Re: [Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
On 28 Oct 2014, at 14:57, Peter Maydell peter.mayd...@linaro.org wrote: On 28 October 2014 12:52, Liviu Ionescu i...@livius.net wrote: On 28 Oct 2014, at 14:45, Peter Maydell peter.mayd...@linaro.org wrote: qemu: Unsupported SemiHosting SWI 0x00 R00= R01= R02= R03

Re: [Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
Do you have a test binary (plus qemu command line) you can send me? sure: https://dl.dropboxusercontent.com/u/78151643/minimal.elf for reference, when running the code with Bechus (2.1.1), the result is: ilg-mbp:build ilg$ /Users/ilg/bin/qemu-system-arm -machine stm32-p103 -nographic

Re: [Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
On 28 Oct 2014, at 16:40, Peter Maydell peter.mayd...@linaro.org wrote: There's no such thing as a generic Cortex-M3 emulation. We model actual hardware (though in this case not a very useful set of boards). at least for now I do not plan to go into emulating actual hardware, I'd like to

Re: [Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
On 28 Oct 2014, at 17:03, Peter Maydell peter.mayd...@linaro.org wrote: existing stellaris boards a bit more flexible, so they honour the command line '-m' option to specify the SRAM size; thank you, I'll consider this, but generally I would like to avoid making my plug-in configuration

Re: [Qemu-devel] Better Cortex-M support?

2014-10-28 Thread Liviu Ionescu
On 28 Oct 2014, at 17:38, Peter Maydell peter.mayd...@linaro.org wrote: It is simply not possible to avoid being specific here. QEMU insists that you say which machine model you want to run on, and the Cortex-M3 CPU itself does not define all the properties of a machine. If your test code

[Qemu-devel] configure fails if path contains spaces

2014-10-28 Thread Liviu Ionescu
I tried to build from git and configure fails, since the current path contains spaces (a common situation on OS X). Regards, Liviu

Re: [Qemu-devel] configure fails if path contains spaces

2014-10-28 Thread Liviu Ionescu
On 28 Oct 2014, at 23:10, Peter Maydell peter.mayd...@linaro.org wrote: ... and make is notoriously bad at dealing with spaces in filenames. really? my Eclipse CDT based build plug-in generates makefiles which have no problems dealing with spaces in file names or folders. I could be wrong

<    1   2   3   4   5   >