basic ARM semihosting support
authorNicolas Pitre <nico@fluxnic.net>
Thu, 3 Dec 2009 22:27:13 +0000 (17:27 -0500)
committerDavid Brownell <dbrownell@users.sourceforge.net>
Fri, 4 Dec 2009 02:42:01 +0000 (18:42 -0800)
commited59dfc80aa6fc48a0894c8e46cee675f38ac949
tree2f0e0d1f3efb989f5b43f794536cce04bbd3e622
parentf62c035c5277871193fa9904f430cf57221c0b89
basic ARM semihosting support

Semihosting enables code running on an ARM target to use the
I/O facilities on the host computer. The target application must
be linked against a library that forwards operation requests by
using the SVC instruction that is trapped at the Supervisor Call
vector by the debugger.  The "hosted" library version provided
with CodeSourcery's Sourcery G++ Lite for ARM EABI is one example.

This is currently available for ARM9 processors, but any ARM
variant should be able to support this with little additional work.

Tested using binaries compiled with Sourcery G++ Lite 2009q1-161
and ARM RVCT 3.0.

[dbrownell@users.sourceforge.net: doc tweaks, NEWS]

Signed-off-by: Nicolas Pitre <nico@marvell.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
NEWS
doc/openocd.texi
src/target/Makefile.am
src/target/arm7_9_common.c
src/target/arm_semihosting.c [new file with mode: 0644]
src/target/arm_semihosting.h [new file with mode: 0644]