7#ifndef ZEPHYR_INCLUDE_DEBUG_COREDUMP_H_
8#define ZEPHYR_INCLUDE_DEBUG_COREDUMP_H_
104#ifdef CONFIG_DEBUG_COREDUMP
107#include <zephyr/arch/cpu.h>
110#define COREDUMP_HDR_VER 1
112#define COREDUMP_ARCH_HDR_ID 'A'
114#define COREDUMP_MEM_HDR_ID 'M'
115#define COREDUMP_MEM_HDR_VER 1
118enum coredump_tgt_code {
119 COREDUMP_TGT_UNKNOWN = 0,
122 COREDUMP_TGT_ARM_CORTEX_M,
128struct coredump_hdr_t {
148struct coredump_arch_hdr_t {
160struct coredump_mem_hdr_t {
174typedef void (*coredump_backend_start_t)(void);
175typedef void (*coredump_backend_end_t)(void);
176typedef void (*coredump_backend_buffer_output_t)(
uint8_t *buf,
size_t buflen);
182struct coredump_backend_api {
184 coredump_backend_start_t start;
187 coredump_backend_end_t end;
190 coredump_backend_buffer_output_t buffer_output;
193 coredump_backend_query_t query;
196 coredump_backend_cmd_t
cmd;
199void coredump(
unsigned int reason,
const z_arch_esf_t *esf,
209void coredump(
unsigned int reason,
const z_arch_esf_t *esf,
static struct k_thread thread[2]
Definition: atomic.c:26
coredump_query_id
Definition: coredump.h:14
@ COREDUMP_QUERY_HAS_STORED_DUMP
Definition: coredump.h:28
@ COREDUMP_QUERY_GET_STORED_DUMP_SIZE
Definition: coredump.h:36
@ COREDUMP_QUERY_MAX
Definition: coredump.h:38
@ COREDUMP_QUERY_GET_ERROR
Definition: coredump.h:18
coredump_cmd_id
Definition: coredump.h:42
@ COREDUMP_CMD_COPY_STORED_DUMP
Definition: coredump.h:77
@ COREDUMP_CMD_MAX
Definition: coredump.h:89
@ COREDUMP_CMD_INVALIDATE_STORED_DUMP
Definition: coredump.h:87
@ COREDUMP_CMD_ERASE_STORED_DUMP
Definition: coredump.h:67
@ COREDUMP_CMD_VERIFY_STORED_DUMP
Definition: coredump.h:58
@ COREDUMP_CMD_CLEAR_ERROR
Definition: coredump.h:48
void coredump_buffer_output(uint8_t *buf, size_t buflen)
Output the buffer via coredump.
Definition: coredump.h:218
void coredump_memory_dump(uintptr_t start_addr, uintptr_t end_addr)
Dump memory region.
Definition: coredump.h:214
int coredump_cmd(enum coredump_cmd_id query_id, void *arg)
Perform command on coredump subsystem.
Definition: coredump.h:227
void coredump(unsigned int reason, const z_arch_esf_t *esf, struct k_thread *thread)
Perform coredump.
Definition: coredump.h:209
int coredump_query(enum coredump_query_id query_id, void *arg)
Perform query on coredump subsystem.
Definition: coredump.h:222
static void cmd(uint32_t command)
Execute a display list command by co-processor engine.
Definition: ft8xx_reference_api.h:153
#define ENOTSUP
Definition: errno.h:115
__INTPTR_TYPE__ off_t
Definition: types.h:36
static ZTEST_DMEM int flag
Definition: main.c:26
__UINT8_TYPE__ uint8_t
Definition: stdint.h:88
__UINTPTR_TYPE__ uintptr_t
Definition: stdint.h:105
__UINT16_TYPE__ uint16_t
Definition: stdint.h:89
Definition: coredump.h:93
off_t offset
Definition: coredump.h:95
uint8_t * buffer
Definition: coredump.h:98
size_t length
Definition: coredump.h:101