I'm currently working on GDB updates.
The idea is to get rid of the readspr/writespr commands to access spr registers.

As a matter of fact those commands use qRcmd RSP packets to get data from
the GDB client but this is not compliant with the RSP protocol.
This is not a really big deal when you are working with openrisc specific
gdb clients versions. However, if we want to get our OpenOCD port to be
mainstream, we can't use this trick.

This series, implement spr access using p/P RSP commands and registers
definition using remote target description file.

This patch keeps compatibility with "classic" gdb clients.

I already modified OpenOCD to send the target descriptor file and get/set
spr registers using p/P packets (https://github.com/Franck79/openOCD,
auto_tdesc branch, work in progress).

As a matter of fact, OpenOCD generates the target descriptor file at run time
based on the target registers (we can still tells it tu use an existing file,
this is just a TCL config).
So adding a register (and handle it in gdb) is very easy. We could imagine a
simple TCL command to add a register definition if we don't want to recompile
OpenOCD nor GBD...

Franck Jullien (3):
  target-description: add tdesc/feature functions
  or32: set gdbarch num regs to gpr + spr regs
  or32: add target descriptor support

 gdb/or32-tdep.c           |  160 +++++++++++++++++++++++++++++++++++++++++++--
 gdb/or32-tdep.h           |    4 +-
 gdb/target-descriptions.c |   69 +++++++++++++++++++
 gdb/target-descriptions.h |   24 +++++++
 4 files changed, 251 insertions(+), 6 deletions(-)

_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc

Reply via email to