|
Zephyr Project API 4.0.0
A Scalable Open Source RTOS
|
Functions | |
| void | arch_gdb_init (void) |
| Architecture layer debug start. | |
| void | arch_gdb_continue (void) |
| Continue running program. | |
| void | arch_gdb_step (void) |
| Continue with one step. | |
| size_t | arch_gdb_reg_readall (struct gdb_ctx *ctx, uint8_t *buf, size_t buflen) |
| Read all registers, and outputs as hexadecimal string. | |
| size_t | arch_gdb_reg_writeall (struct gdb_ctx *ctx, uint8_t *hex, size_t hexlen) |
| Take a hexadecimal string and update all registers. | |
| size_t | arch_gdb_reg_readone (struct gdb_ctx *ctx, uint8_t *buf, size_t buflen, uint32_t regno) |
| Read one register, and outputs as hexadecimal string. | |
| size_t | arch_gdb_reg_writeone (struct gdb_ctx *ctx, uint8_t *hex, size_t hexlen, uint32_t regno) |
| Take a hexadecimal string and update one register. | |
| int | arch_gdb_add_breakpoint (struct gdb_ctx *ctx, uint8_t type, uintptr_t addr, uint32_t kind) |
| Add breakpoint or watchpoint. | |
| int | arch_gdb_remove_breakpoint (struct gdb_ctx *ctx, uint8_t type, uintptr_t addr, uint32_t kind) |
| Remove breakpoint or watchpoint. | |
#include <include/zephyr/arch/arch_interface.h>
Add breakpoint or watchpoint.
| ctx | GDB context |
| type | Breakpoint or watchpoint type |
| addr | Address of breakpoint or watchpoint |
| kind | Size of breakpoint/watchpoint in bytes |
| 0 | Operation successful |
| -1 | Error encountered |
| -2 | Not supported |
| void arch_gdb_continue | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Continue running program.
Continue software execution.
| void arch_gdb_init | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Architecture layer debug start.
This function is called by gdb_init()
#include <include/zephyr/arch/arch_interface.h>
Read all registers, and outputs as hexadecimal string.
This reads all CPU registers and outputs as hexadecimal string. The output string must be parsable by GDB.
| ctx | GDB context |
| buf | Buffer to output hexadecimal string. |
| buflen | Length of buffer. |
#include <include/zephyr/arch/arch_interface.h>
Read one register, and outputs as hexadecimal string.
This reads one CPU register and outputs as hexadecimal string. The output string must be parsable by GDB.
| ctx | GDB context |
| buf | Buffer to output hexadecimal string. |
| buflen | Length of buffer. |
| regno | Register number |
#include <include/zephyr/arch/arch_interface.h>
Take a hexadecimal string and update all registers.
This takes in a hexadecimal string as presented from GDB, and updates all CPU registers with new values.
| ctx | GDB context |
| hex | Input hexadecimal string. |
| hexlen | Length of hexadecimal string. |
#include <include/zephyr/arch/arch_interface.h>
Take a hexadecimal string and update one register.
This takes in a hexadecimal string as presented from GDB, and updates one CPU registers with new value.
| ctx | GDB context |
| hex | Input hexadecimal string. |
| hexlen | Length of hexadecimal string. |
| regno | Register number |
| int arch_gdb_remove_breakpoint | ( | struct gdb_ctx * | ctx, |
| uint8_t | type, | ||
| uintptr_t | addr, | ||
| uint32_t | kind | ||
| ) |
#include <include/zephyr/arch/arch_interface.h>
Remove breakpoint or watchpoint.
| ctx | GDB context |
| type | Breakpoint or watchpoint type |
| addr | Address of breakpoint or watchpoint |
| kind | Size of breakpoint/watchpoint in bytes |
| 0 | Operation successful |
| -1 | Error encountered |
| -2 | Not supported |
| void arch_gdb_step | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Continue with one step.
Continue software execution until reaches the next statement.