zephyr/subsys/debug/coredump/Kconfig
Henrik Brix Andersen c0c8952739 shell: do not enable subsystem/driver shell modules by default
Do not enable subsystem/driver shell modules by default and stop abusing
CONFIG_SHELL_MINIMAL, which is internal to the shell subsystem, to decide
when to enable a driver shell.

The list of shell modules has grown considerably through the
years. Enabling CONFIG_SHELL for doing e.g. an interactive debug session
leads to a large number of shell modules also being enabled unless
explicitly disabled, which again leads to non-negligible increases in
RAM/ROM usage.

This commit attempts to establish a policy of subsystem/driver shell
modules being disabled by default, requiring the user/application to
explicitly enable only those needed.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2023-11-20 09:21:40 +01:00

79 lines
2.0 KiB
Plaintext

# Copyright (c) 2020 Intel Corporation.
# SPDX-License-Identifier: Apache-2.0
menuconfig DEBUG_COREDUMP
bool "Core Dump"
depends on ARCH_SUPPORTS_COREDUMP
help
Enable core dump so it can be used for offline debugging.
if DEBUG_COREDUMP
choice DEBUG_COREDUMP_BACKEND
prompt "Coredump backend"
default DEBUG_COREDUMP_BACKEND_LOGGING
config DEBUG_COREDUMP_BACKEND_LOGGING
bool "Use Logging subsystem for coredump"
select LOG
help
Core dump is done via logging subsystem.
config DEBUG_COREDUMP_BACKEND_FLASH_PARTITION
bool "Use flash partition for coredump"
depends on FLASH
select FLASH_MAP
select STREAM_FLASH
help
Core dump is saved to a flash partition with DTS alias
"coredump-partition".
config DEBUG_COREDUMP_BACKEND_INTEL_ADSP_MEM_WINDOW
bool "Use memory window for coredump on Intel ADSP"
depends on DT_HAS_INTEL_ADSP_MEM_WINDOW_ENABLED
help
Core dump is done via memory window slot[1].
It is Intel ADSP memory region shared with xtensa DSP.
Window 2 slot [1] is reserved for debuging information.
config DEBUG_COREDUMP_BACKEND_OTHER
bool "Backend subsystem for coredump defined out of tree"
help
Core dump is done via custom mechanism defined out of tree
endchoice
choice DEBUG_COREDUMP_MEMORY_DUMP
prompt "Memory dump"
default DEBUG_COREDUMP_MEMORY_DUMP_LINKER_RAM
config DEBUG_COREDUMP_MEMORY_DUMP_MIN
bool "Minimal"
select THREAD_STACK_INFO
help
Only dumps the bare minimum memory content.
For example, the thread struct and stack of
the exception thread will be dumped.
Don't use this unless you want absolutely
minimum core dump.
config DEBUG_COREDUMP_MEMORY_DUMP_LINKER_RAM
bool "RAM defined by linker section"
help
Dumps the memory region between _image_ram_start[]
and _image_ram_end[]. This includes at least data,
noinit, and BSS sections.
This is the default.
endchoice
config DEBUG_COREDUMP_SHELL
bool "Coredump shell"
depends on SHELL
help
This shell provides access to coredump and its backends.
endif # DEBUG_COREDUMP