📄 serdbg.h
字号:
/*===============================================================*\| Project: RTEMS remote gdb over serial line |+-----------------------------------------------------------------+| File: serdbg.h |+-----------------------------------------------------------------+| Copyright (c) 2002 IMD || Ingenieurbuero fuer Microcomputertechnik Th. Doerfler || <Thomas.Doerfler@imd-systems.de> || all rights reserved |+-----------------------------------------------------------------+| this file declares intialization functions to add || a gdb remote debug stub to an RTEMS system || |+-----------------------------------------------------------------+| date history ID || ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ || 04.04.02 creation doe |\*===============================================================*//* * $Id: serdbg.h,v 1.1.4.1 2004/09/17 16:59:37 joel Exp $ */#ifndef _SERDBG_H#define _SERDBG_H#include <rtems.h>#include <termios.h>#ifdef __cplusplusextern "C" {#endiftypedef struct { unsigned32 baudrate; /* debug baud rate, e.g. 57600 */ void (*callout)(void); /* callout pointer during polling */ int (*open_io)(const char *dev_name,unsigned32 baudrate); /* I/O open fnc */ const char *devname; /* debug device, e.g. "/dev/tty01" */ unsigned8 skip_init_bkpt; /* if TRUE, do not stop when initializing */} serdbg_conf_t;/* * must be defined in init module... */extern serdbg_conf_t serdbg_conf;/*=========================================================================*\| Function: |\*-------------------------------------------------------------------------*/void putDebugChar(/*-------------------------------------------------------------------------*\| Purpose: || send character to remote debugger |+---------------------------------------------------------------------------+| Input Parameters: |\*-------------------------------------------------------------------------*/ char c /* char to send */ );/*-------------------------------------------------------------------------*\| Return Value: || <none> |\*=========================================================================*//*=========================================================================*\| Function: |\*-------------------------------------------------------------------------*/int getDebugChar(/*-------------------------------------------------------------------------*\| Purpose: || get character from remote debugger |+---------------------------------------------------------------------------+| Input Parameters: |\*-------------------------------------------------------------------------*/ void /* <none> */ );/*-------------------------------------------------------------------------*\| Return Value: || <none> |\*=========================================================================*//*=========================================================================*\| Function: |\*-------------------------------------------------------------------------*/void serdbg_exceptionHandler(/*-------------------------------------------------------------------------*\| Purpose: || hook directly to an exception vector |+---------------------------------------------------------------------------+| Input Parameters: |\*-------------------------------------------------------------------------*/ int vecnum, /* vector index to hook at */ void *vector /* address of handler function */ );/*-------------------------------------------------------------------------*\| Return Value: || <none> |\*=========================================================================*//*=========================================================================*\| Function: |\*-------------------------------------------------------------------------*/int serdbg_init(/*-------------------------------------------------------------------------*\| Purpose: || initialize remote gdb session over serial line |+---------------------------------------------------------------------------+| Input Parameters: |\*-------------------------------------------------------------------------*/ void );/*-------------------------------------------------------------------------*\| Return Value: || rtems_status_code |\*=========================================================================*//* * stuff from serdbgio.c *//*=========================================================================*\| Function: |\*-------------------------------------------------------------------------*/int serdbg_open/*-------------------------------------------------------------------------*\| Purpose: || try to open given serial debug port |+---------------------------------------------------------------------------+| Input Parameters: |\*-------------------------------------------------------------------------*/( const char *dev_name, /* name of device to open */ unsigned32 baudrate /* baud rate to use */ );/*-------------------------------------------------------------------------*\| Return Value: || 0 on success, -1 and errno otherwise |\*=========================================================================*//*=========================================================================*\| Function: |\*-------------------------------------------------------------------------*/void putDebugChar/*-------------------------------------------------------------------------*\| Purpose: || send one character to serial port |+---------------------------------------------------------------------------+| Input Parameters: |\*-------------------------------------------------------------------------*/( char c /* character to print */ );/*-------------------------------------------------------------------------*\| Return Value: || <none> |\*=========================================================================*//*=========================================================================*\| Function: |\*-------------------------------------------------------------------------*/int getDebugChar/*-------------------------------------------------------------------------*\| Purpose: || wait for one character from serial port |+---------------------------------------------------------------------------+| Input Parameters: |\*-------------------------------------------------------------------------*/( void /* none */ );/*-------------------------------------------------------------------------*\| Return Value: || received character |\*=========================================================================*/#ifdef __cplusplus}#endif#endif /* _SERDBG_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -