7#ifndef ZEPHYR_INCLUDE_DEBUG_COREDUMP_H_
8#define ZEPHYR_INCLUDE_DEBUG_COREDUMP_H_
105#ifdef CONFIG_DEBUG_COREDUMP
108#include <zephyr/arch/cpu.h>
111#define COREDUMP_HDR_VER 1
113#define COREDUMP_ARCH_HDR_ID 'A'
115#define COREDUMP_MEM_HDR_ID 'M'
116#define COREDUMP_MEM_HDR_VER 1
119enum coredump_tgt_code {
120 COREDUMP_TGT_UNKNOWN = 0,
123 COREDUMP_TGT_ARM_CORTEX_M,
129struct coredump_hdr_t {
149struct coredump_arch_hdr_t {
161struct coredump_mem_hdr_t {
175typedef void (*coredump_backend_start_t)(void);
176typedef void (*coredump_backend_end_t)(void);
177typedef void (*coredump_backend_buffer_output_t)(
uint8_t *buf,
size_t buflen);
183struct coredump_backend_api {
185 coredump_backend_start_t start;
188 coredump_backend_end_t end;
191 coredump_backend_buffer_output_t buffer_output;
194 coredump_backend_query_t query;
197 coredump_backend_cmd_t
cmd;
200void coredump(
unsigned int reason,
const z_arch_esf_t *esf,
210void 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:15
@ COREDUMP_QUERY_HAS_STORED_DUMP
Definition: coredump.h:29
@ COREDUMP_QUERY_GET_STORED_DUMP_SIZE
Definition: coredump.h:37
@ COREDUMP_QUERY_MAX
Definition: coredump.h:39
@ COREDUMP_QUERY_GET_ERROR
Definition: coredump.h:19
coredump_cmd_id
Definition: coredump.h:43
@ COREDUMP_CMD_COPY_STORED_DUMP
Definition: coredump.h:78
@ COREDUMP_CMD_MAX
Definition: coredump.h:90
@ COREDUMP_CMD_INVALIDATE_STORED_DUMP
Definition: coredump.h:88
@ COREDUMP_CMD_ERASE_STORED_DUMP
Definition: coredump.h:68
@ COREDUMP_CMD_VERIFY_STORED_DUMP
Definition: coredump.h:59
@ COREDUMP_CMD_CLEAR_ERROR
Definition: coredump.h:49
void coredump_buffer_output(uint8_t *buf, size_t buflen)
Output the buffer via coredump.
Definition: coredump.h:219
void coredump_memory_dump(uintptr_t start_addr, uintptr_t end_addr)
Dump memory region.
Definition: coredump.h:215
int coredump_cmd(enum coredump_cmd_id query_id, void *arg)
Perform command on coredump subsystem.
Definition: coredump.h:228
void coredump(unsigned int reason, const z_arch_esf_t *esf, struct k_thread *thread)
Perform coredump.
Definition: coredump.h:210
int coredump_query(enum coredump_query_id query_id, void *arg)
Perform query on coredump subsystem.
Definition: coredump.h:223
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:94
off_t offset
Definition: coredump.h:96
uint8_t * buffer
Definition: coredump.h:99
size_t length
Definition: coredump.h:102