| # Copyright (c) 2021 Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| choice LOG_MODE |
| prompt "Mode" |
| default LOG_MODE_DEFERRED |
| |
| config LOG_MODE_DEFERRED |
| bool "Deferred logging" |
| select MPSC_PBUF |
| 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 LOG2_MODE_DEFERRED |
| bool "Deferred logging v2" |
| select MPSC_PBUF |
| select LOG2 |
| |
| config LOG2_MODE_IMMEDIATE |
| bool "Synchronous v2" |
| select LOG2 |
| select MPSC_PBUF |
| 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_IMMEDIATE |
| bool "Synchronous" |
| select MPSC_PBUF |
| 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 |
| 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(). |
| |
| config LOG_FRONTEND |
| bool "Frontend" |
| help |
| When enabled, logs are redirected to a custom frontend instead |
| of being processed by the logger. In this mode runtime filtering and |
| multiple backends are not used. |
| |
| endchoice |
| |
| config LOG2 |
| bool |
| |
| config LOG_IMMEDIATE |
| bool |
| default y if LOG_MODE_IMMEDIATE |
| default y if LOG2_MODE_IMMEDIATE |
| |
| config LOG_MINIMAL |
| bool |
| imply PRINTK |
| default y if LOG_MODE_MINIMAL |