X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fserver%2Fgdb_server.h;h=041497510cd15b8ec865a13c807d29d8d0d47c1c;hb=ec6c1962c2398a574a5c413b41483370347b9f5b;hp=e81ee694dee95fab30d15710a1b95b8a3a2f1dff;hpb=526fe3d83e118d87af34353a7140c02f3f1a3c19;p=fw%2Fopenocd diff --git a/src/server/gdb_server.h b/src/server/gdb_server.h index e81ee694d..041497510 100644 --- a/src/server/gdb_server.h +++ b/src/server/gdb_server.h @@ -2,9 +2,12 @@ * Copyright (C) 2005 by Dominic Rath * * Dominic.Rath@gmx.de * * * - * Copyright (C) 2007,2008 Øyvind Harboe * + * Copyright (C) 2007,2008 Øyvind Harboe * * oyvind.harboe@zylin.com * * * + * Copyright (C) 2008 by Spencer Oliver * + * spen@spen-soft.co.uk * + * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * @@ -23,31 +26,35 @@ #ifndef GDB_SERVER_H #define GDB_SERVER_H -#include "target.h" -#include "server.h" -#include "image.h" +struct image; #define GDB_BUFFER_SIZE 16384 -typedef struct gdb_connection_s +struct gdb_connection { char buffer[GDB_BUFFER_SIZE]; char *buf_p; int buf_cnt; int ctrl_c; enum target_state frontend_state; - image_t *vflash_image; + struct image *vflash_image; int closed; int busy; -} gdb_connection_t; + int noack_mode; + bool sync; /* set flag to true if you want the next stepi to return immediately. + allowing GDB to pick up a fresh set of register values from the target + without modifying the target state. */ + +}; -typedef struct gdb_service_s +struct gdb_service { - struct target_s *target; -} gdb_service_t; + struct target *target; +}; -extern int gdb_init(); -extern int gdb_register_commands(command_context_t *command_context); +int gdb_target_add_one(struct target *target); +int gdb_target_add_all(struct target *target); +int gdb_register_commands(struct command_context *command_context); #define ERROR_GDB_BUFFER_TOO_SMALL (-800) #define ERROR_GDB_TIMEOUT (-801)