1# Copyright (c) 2021 Nordic Semiconductor ASA 2# SPDX-License-Identifier: Apache-2.0 3 4choice LOG_MODE 5 prompt "Mode" 6 default LOG_MODE_DEFERRED 7 8config LOG_MODE_DEFERRED 9 bool "Deferred logging" 10 select MPSC_PBUF 11 help 12 Log messages are buffered and processed later. This mode has the 13 least impact on the application. Time consuming processing is 14 deferred to the known context. 15 16config LOG2_MODE_DEFERRED 17 bool "Deferred logging v2" 18 select MPSC_PBUF 19 select LOG2 20 21config LOG2_MODE_IMMEDIATE 22 bool "Synchronous v2" 23 select LOG2 24 select MPSC_PBUF 25 help 26 When enabled log is processed in the context of the call. It impacts 27 performance of the system since time consuming operations are 28 performed in the context of the log entry (e.g. high priority 29 interrupt).Logger backends must support exclusive access to work 30 flawlessly in that mode because one log operation can be interrupted 31 by another one in the higher priority context. 32 33config LOG_MODE_IMMEDIATE 34 bool "Synchronous" 35 select MPSC_PBUF 36 help 37 When enabled log is processed in the context of the call. It impacts 38 performance of the system since time consuming operations are 39 performed in the context of the log entry (e.g. high priority 40 interrupt).Logger backends must support exclusive access to work 41 flawlessly in that mode because one log operation can be interrupted 42 by another one in the higher priority context. 43 44 45config LOG_MODE_MINIMAL 46 bool "Minimal-footprint" 47 imply PRINTK 48 help 49 Enable minimal logging implementation. This has very little footprint 50 overhead on top of the printk() implementation for standard 51 logging macros. Hexdump macros are also supported, with a small 52 amount of code pulled in if used. Build time filtering is supported, 53 but not runtime filtering. There are no timestamps, prefixes, 54 colors, or asynchronous logging, and all messages are simply 55 sent to printk(). 56 57config LOG_FRONTEND 58 bool "Frontend" 59 help 60 When enabled, logs are redirected to a custom frontend instead 61 of being processed by the logger. In this mode runtime filtering and 62 multiple backends are not used. 63 64endchoice 65 66config LOG2 67 bool 68 69config LOG_IMMEDIATE 70 bool 71 default y if LOG_MODE_IMMEDIATE 72 default y if LOG2_MODE_IMMEDIATE 73 74config LOG_MINIMAL 75 bool 76 imply PRINTK 77 default y if LOG_MODE_MINIMAL 78