blob: 7f1e58656d431b26cff79bc1a7a2265fa78d6462 [file] [log] [blame]
# Copyright (c) 2021 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
choice LOG_MODE
prompt "Mode"
default LOG_MODE_MINIMAL if LOG_DEFAULT_MINIMAL
default LOG_MODE_IMMEDIATE if LOG2_MODE_IMMEDIATE
default LOG_MODE_DEFERRED
config LOG_MODE_DEFERRED
bool "Deferred logging"
depends on !LOG2_MODE_IMMEDIATE
help
Log messages are buffered and processed later. This mode has the
least impact on the application. Time consuming processing is
deferred to the known context.
config LOG_MODE_IMMEDIATE
bool "Synchronous"
depends on !LOG2_MODE_DEFERRED
help
When enabled log is processed in the context of the call. It impacts
performance of the system since time consuming operations are
performed in the context of the log entry (e.g. high priority
interrupt).Logger backends must support exclusive access to work
flawlessly in that mode because one log operation can be interrupted
by another one in the higher priority context.
config LOG_MODE_MINIMAL
bool "Minimal-footprint"
imply PRINTK
depends on !LOG2_MODE_DEFERRED
depends on !LOG2_MODE_IMMEDIATE
help
Enable minimal logging implementation. This has very little footprint
overhead on top of the printk() implementation for standard
logging macros. Hexdump macros are also supported, with a small
amount of code pulled in if used. Build time filtering is supported,
but not runtime filtering. There are no timestamps, prefixes,
colors, or asynchronous logging, and all messages are simply
sent to printk().
endchoice
config LOG_FRONTEND
bool "Frontend"
depends on !LOG2_MODE_DEFERRED
depends on !LOG2_MODE_IMMEDIATE
help
When enabled, logs are redirected to a custom frontend which is the
fastest way of getting logs out.
config LOG_FRONTEND_ONLY
bool "No backends" if !LOG1
default y if LOG1
depends on LOG_FRONTEND
help
Option indicates that there are no backends intended to be used.
Code asserts if any backend is enabled.
config LOG2_MODE_DEFERRED
bool "Deferred v2 (DEPRECATED)"
help
Option has been deprecated. Use LOG_MODE_DEFERRED which defaults now
to v2.
config LOG2_MODE_IMMEDIATE
bool "Synchronous v2 (DEPRECATED)"
help
Option has been deprecated. Use LOG_MODE_IMMEDIATE which defaults now
to v2.
config LOG1
bool "Use v1 (DEPRECATED)"
help
Deprecated.
config LOG2
bool
select MPSC_PBUF
default y if !LOG1
config LOG1_IMMEDIATE
bool
default y if LOG1 && LOG_MODE_IMMEDIATE
config LOG1_DEFERRED
bool
default y if LOG1 && LOG_MODE_DEFERRED
config LOG2_IMMEDIATE
bool
default y if !LOG1 && LOG_MODE_IMMEDIATE
config LOG2_DEFERRED
bool
default y if !LOG1 && LOG_MODE_DEFERRED
config LOG_DEFAULT_MINIMAL
bool