gdbstub.h File Reference
#include "gdbstub-internal.h"
#include <gdb/gdb_hooks.h>
#include "BitManipulations.h"
Include dependency graph for gdbstub.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  gdb_state_t
 

Macros

#define GDB_F(str)   _F(str)
 
#define GDB_PROGMEM   PROGMEM
 
#define gdbstub_break_internal(flag)
 

Enumerations

enum  GdbDebugFlag {
  DBGFLAG_DEBUG_EXCEPTION, DBGFLAG_SYSTEM_EXCEPTION, DBGFLAG_CTRL_BREAK, DBGFLAG_PACKET_STARTED,
  DBGFLAG_RESTART
}
 
enum  SyscallState { syscall_ready, syscall_pending, syscall_active }
 

Functions

void gdbstub_init ()
 
void gdbstub_handle_exception ()
 

Variables

volatile gdb_state_t gdb_state
 
const uint8_t gdb_exception_signals []
 

Macro Definition Documentation

◆ GDB_F

#define GDB_F (   str)    _F(str)

◆ GDB_PROGMEM

#define GDB_PROGMEM   PROGMEM

◆ gdbstub_break_internal

#define gdbstub_break_internal (   flag)
Value:
{ \
bitSet(gdb_state.flags, flag); \
gdb_do_break(); \
}

Enumeration Type Documentation

◆ GdbDebugFlag

Enumerator
DBGFLAG_DEBUG_EXCEPTION 

For debug exceptions, cause is DBGCAUSE (see DebugCause bits)

DBGFLAG_SYSTEM_EXCEPTION 

For system exceptions, cause is EXCCAUSE (see EXCCAUSE_* values)

DBGFLAG_CTRL_BREAK 

Break caused by call to gdbstub_ctrl_break()

DBGFLAG_PACKET_STARTED 

Incoming packet detected by uart interrupt handler.

DBGFLAG_RESTART 

Breaking into debugger because of unexpected system restart.

◆ SyscallState

Enumerator
syscall_ready 

Ready for new syscall.

syscall_pending 

Syscall queued but not yet sent to GDB.

syscall_active 

Syscall executing, awaiting response from GDB.

Function Documentation

◆ gdbstub_handle_exception()

void gdbstub_handle_exception ( )

◆ gdbstub_init()

void gdbstub_init ( )

Variable Documentation

◆ gdb_exception_signals

const uint8_t gdb_exception_signals[]

◆ gdb_state

volatile gdb_state_t gdb_state
uint8_t flags
Combination of GdbDebugFlag.
Definition: gdbstub.h:54
volatile gdb_state_t gdb_state