2022-05-11 01:59:51 +08:00
|
|
|
# Copyright Meta Platforms, Inc. and its affiliates.
|
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
|
|
|
|
include: base.yaml
|
|
|
|
|
|
|
|
compatible: "zephyr,coredump"
|
|
|
|
|
|
|
|
description: Pseudo-device to help capturing desired data into core dumps
|
|
|
|
|
|
|
|
properties:
|
2023-01-04 03:21:25 +08:00
|
|
|
memory-regions:
|
|
|
|
type: array
|
|
|
|
description: Start address and size of memory regions to be collected in a core dump
|
2022-05-11 01:59:51 +08:00
|
|
|
|
2023-01-04 03:21:25 +08:00
|
|
|
coredump-type:
|
|
|
|
required: true
|
|
|
|
type: string
|
|
|
|
description: |
|
|
|
|
Designate which type of coredump device this will be.
|
|
|
|
A device of type COREDUMP_TYPE_MEMCPY can directly memcpy the provided memory-regions
|
|
|
|
into the coredump. The memory-regions array can contain 0 or more entries, and more
|
|
|
|
regions can be added at runtime through the coredump_device_register_memory API.
|
|
|
|
A device of type COREDUMP_TYPE_CALLBACK must specify exactly one entry in the
|
|
|
|
memory-regions array with a size of 0 and a desired size. The coredump device will
|
|
|
|
statically allocate a block of memory of the desired size and provide a callback with a
|
|
|
|
pointer to that memory which will be invoked at the time of a dump. This allows a consumer
|
|
|
|
to add data into the coredump that may not be directly accessible through a memcpy and/or
|
|
|
|
provides an opportunity to manipulate data for inclusion in the dump. The
|
|
|
|
coredump_device_register_memory API is not available for a device of this type.
|
|
|
|
enum:
|
|
|
|
- "COREDUMP_TYPE_MEMCPY"
|
|
|
|
- "COREDUMP_TYPE_CALLBACK"
|