X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fserver%2Fgdb_server.h;h=74b80ad247d5868c88ccffb4a59e7f6d8e060d84;hb=392fe709275d830b0da79b46a6b1447264178c52;hp=d9d31067fa728369da0a4bc3342aebddf3679cf2;hpb=164cb6d04eb582207575c4b8f42c8d1eb4aa2480;p=openocd.git diff --git a/src/server/gdb_server.h b/src/server/gdb_server.h index d9d31067fa..74b80ad247 100644 --- a/src/server/gdb_server.h +++ b/src/server/gdb_server.h @@ -2,12 +2,15 @@ * Copyright (C) 2005 by Dominic Rath * * Dominic.Rath@gmx.de * * * - * Copyright (C) 2007,2008 Øyvind Harboe * + * Copyright (C) 2007-2009 Øyvind Harboe * * oyvind.harboe@zylin.com * * * * Copyright (C) 2008 by Spencer Oliver * * spen@spen-soft.co.uk * * * + * Copyright (C) 2011 by Broadcom Corporation * + * Evan Hunter - ehunter@broadcom.com * + * * * 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,37 +26,28 @@ * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ + #ifndef GDB_SERVER_H #define GDB_SERVER_H -#include "target.h" +struct image; +struct reg; +#include -struct image_s; +#define GDB_BUFFER_SIZE 16384 -#define GDB_BUFFER_SIZE 16384 +int gdb_target_add_all(struct target *target); +int gdb_register_commands(struct command_context *command_context); -typedef struct gdb_connection_s -{ - char buffer[GDB_BUFFER_SIZE]; - char *buf_p; - int buf_cnt; - int ctrl_c; - enum target_state frontend_state; - struct image_s *vflash_image; - int closed; - int busy; - int noack_mode; -} gdb_connection_t; - -typedef struct gdb_service_s -{ - struct target_s *target; -} gdb_service_t; +int gdb_put_packet(struct connection *connection, char *buffer, int len); -extern int gdb_init(void); -extern int gdb_register_commands(command_context_t *command_context); +static inline struct target *get_target_from_connection(struct connection *connection) +{ + struct gdb_service *gdb_service = connection->service->priv; + return gdb_service->target; +} #define ERROR_GDB_BUFFER_TOO_SMALL (-800) #define ERROR_GDB_TIMEOUT (-801) -#endif /* GDB_SERVER_H */ +#endif /* GDB_SERVER_H */