7#ifndef ZEPHYR_INCLUDE_DEBUG_GDBSTUB_H_
8#define ZEPHYR_INCLUDE_DEBUG_GDBSTUB_H_
11#define GDB_EXCEPTION_INVALID_INSTRUCTION 4UL
12#define GDB_EXCEPTION_BREAKPOINT 5UL
13#define GDB_EXCEPTION_MEMORY_FAULT 7UL
14#define GDB_EXCEPTION_DIVIDE_ERROR 8UL
15#define GDB_EXCEPTION_INVALID_MEMORY 11UL
16#define GDB_EXCEPTION_OVERFLOW 16UL
19#define GDB_MEM_REGION_NO_ACCESS 0UL
20#define GDB_MEM_REGION_READ BIT(0)
21#define GDB_MEM_REGION_WRITE BIT(1)
23#define GDB_MEM_REGION_RO \
26#define GDB_MEM_REGION_RW \
27 (GDB_MEM_REGION_READ | GDB_MEM_REGION_WRITE)
75 char *
hex,
size_t hexlen);
const size_t gdb_mem_num_regions
const struct gdb_mem_region gdb_mem_region_array[]
bool gdb_mem_can_write(const uintptr_t addr, const size_t len, uint8_t *align)
Check if a memory block can be written into.
size_t gdb_bin2hex(const uint8_t *buf, size_t buflen, char *hex, size_t hexlen)
Convert a binary array into string representation.
bool gdb_mem_can_read(const uintptr_t addr, const size_t len, uint8_t *align)
Check if a memory block can be read.
uint32_t hex
Definition: printk.c:77
__UINT8_TYPE__ uint8_t
Definition: stdint.h:58
__UINTPTR_TYPE__ uintptr_t
Definition: stdint.h:75
__UINT16_TYPE__ uint16_t
Definition: stdint.h:59
uintptr_t end
Definition: gdbstub.h:35
uintptr_t start
Definition: gdbstub.h:32
uint8_t alignment
Definition: gdbstub.h:41
uint16_t attributes
Definition: gdbstub.h:38