xref: /nrf52832-nimble/rt-thread/components/utilities/Kconfig (revision 104654410c56c573564690304ae786df310c91fc)
1menu "Utilities"
2
3config RT_USING_LOGTRACE
4    bool "Enable log trace"
5    default n
6
7if RT_USING_LOGTRACE
8    config LOG_TRACE_MAX_SESSION
9        int "Maximal number of session"
10        default 16
11
12    choice
13        prompt "The default level of log"
14        default LOG_TRACE_USING_LEVEL_INFO
15
16        config LOG_TRACE_USING_LEVEL_NOTRACE
17            bool "No trace"
18
19        config LOG_TRACE_USING_LEVEL_ERROR
20            bool "Only error log"
21
22        config LOG_TRACE_USING_LEVEL_WARNING
23            bool "Warning log"
24
25        config LOG_TRACE_USING_LEVEL_INFO
26            bool "Information log"
27
28        config LOG_TRACE_USING_LEVEL_VERBOSE
29            bool "Verbose log"
30
31        config LOG_TRACE_USING_LEVEL_DEBUG
32            bool "All debug log"
33    endchoice
34
35    config LOG_TRACE_USING_MEMLOG
36        bool "Enable memory log for logtrace"
37        default n
38        help
39            Enable memory log for logtrace, then the logs in log_trace
40            will be printed out in idle thread hook function.
41
42            Please make sure the idle hook is not used.
43endif
44
45config RT_USING_RYM
46    bool "Enable Ymodem"
47    default n
48
49config RT_USING_ULOG
50    bool "Enable ulog"
51    default n
52
53    if RT_USING_ULOG
54        if !ULOG_USING_SYSLOG
55            choice
56                prompt "The static output log level."
57                default ULOG_OUTPUT_LVL_D
58                help
59                    When the log level is less than this option and it will stop output.
60                    These log will not compile into ROM when using LOG_X api.
61                    NOTE: It's not available on syslog mode.
62                config ULOG_OUTPUT_LVL_A
63                    bool "Assert"
64                config ULOG_OUTPUT_LVL_E
65                    bool "Error"
66                config ULOG_OUTPUT_LVL_W
67                    bool "Warning"
68                config ULOG_OUTPUT_LVL_I
69                    bool "Information"
70                config ULOG_OUTPUT_LVL_D
71                    bool "Debug"
72            endchoice
73        endif
74
75        if ULOG_USING_SYSLOG
76            choice
77                prompt "The static output log level."
78                default ULOG_OUTPUT_LVL_DEBUG
79                help
80                    When the log level is less than this option and it will stop output.
81                    These log will not compile into ROM when using LOG_X api.
82                    NOTE: It's not available on syslog mode.
83                config ULOG_OUTPUT_LVL_EMERG
84                    bool "EMERG"
85                config ULOG_OUTPUT_LVL_ALERT
86                    bool "ALERT"
87                config ULOG_OUTPUT_LVL_CRIT
88                    bool "CRIT"
89                config ULOG_OUTPUT_LVL_ERROR
90                    bool "ERR"
91                config ULOG_OUTPUT_LVL_WARNING
92                    bool "WARNING"
93                config ULOG_OUTPUT_LVL_NOTICE
94                    bool "NOTICE"
95                config ULOG_OUTPUT_LVL_INFO
96                    bool "INFO"
97                config ULOG_OUTPUT_LVL_DEBUG
98                    bool "DEBUG"
99            endchoice
100        endif
101
102        config ULOG_OUTPUT_LVL
103            int
104            default 0 if ULOG_OUTPUT_LVL_A
105            default 0 if ULOG_OUTPUT_LVL_EMERG
106            default 1 if ULOG_OUTPUT_LVL_ALERT
107            default 2 if ULOG_OUTPUT_LVL_CRIT
108            default 3 if ULOG_OUTPUT_LVL_E
109            default 3 if ULOG_OUTPUT_LVL_ERROR
110            default 4 if ULOG_OUTPUT_LVL_W
111            default 4 if ULOG_OUTPUT_LVL_WARNING
112            default 5 if ULOG_OUTPUT_LVL_NOTICE
113            default 6 if ULOG_OUTPUT_LVL_I
114            default 6 if ULOG_OUTPUT_LVL_INFO
115            default 7 if ULOG_OUTPUT_LVL_D
116            default 7 if ULOG_OUTPUT_LVL_DEBUG
117            default 7
118
119        config ULOG_USING_ISR_LOG
120            bool "Enable ISR log."
121            default n
122            help
123                The log output API can using in ISR (Interrupt Service Routines) also.
124
125        config ULOG_ASSERT_ENABLE
126            bool "Enable assert check."
127            default y
128
129        config ULOG_LINE_BUF_SIZE
130            int "The log's max width."
131            default 128
132            help
133               The buffer size for every line log.
134
135        config ULOG_USING_ASYNC_OUTPUT
136            bool "Enable async output mode."
137            default n
138            help
139                When enable asynchronous output mode. The log output is not immediately and the log will stored to buffer.
140                The another thread (Such as idle) will read the buffer and output the log. So it will using more RAM.
141
142        if ULOG_USING_ASYNC_OUTPUT
143            config ULOG_ASYNC_OUTPUT_BUF_SIZE
144                int "The async output buffer size."
145                default 2048
146
147            config ULOG_ASYNC_OUTPUT_BY_THREAD
148                bool "Enable async output by thread."
149                default y
150                help
151                    This thread will output the asynchronous logs. The logs can output by other user thread when this option is disable.
152
153                if ULOG_ASYNC_OUTPUT_BY_THREAD
154
155                    config ULOG_ASYNC_OUTPUT_THREAD_STACK
156                        int "The async output thread stack size."
157                        default 1024
158
159                    config ULOG_ASYNC_OUTPUT_THREAD_PRIORITY
160                        int "The async output thread stack priority."
161                        range 0 RT_THREAD_PRIORITY_MAX
162                        default 30
163
164                endif
165        endif
166
167        menu "log format"
168            config ULOG_OUTPUT_FLOAT
169                bool "Enable float number support. It will using more thread stack."
170                select RT_USING_LIBC
171                default n
172                help
173                    The default formater is using rt_vsnprint and it not supported float number.
174                    When enable this option then it will enable libc. The formater will change to vsnprint on libc.
175
176            if !ULOG_USING_SYSLOG
177                config ULOG_USING_COLOR
178                    bool "Enable color log."
179                    default y
180                    help
181                        The log will has different color by level.
182            endif
183
184            config ULOG_OUTPUT_TIME
185                bool "Enable time information."
186                default y
187
188            config ULOG_TIME_USING_TIMESTAMP
189                bool "Enable timestamp format for time."
190                default n
191                select RT_USING_LIBC
192                depends on ULOG_OUTPUT_TIME
193
194            config ULOG_OUTPUT_LEVEL
195                bool "Enable level information."
196                default y
197
198            config ULOG_OUTPUT_TAG
199                bool "Enable tag information."
200                default y
201
202            config ULOG_OUTPUT_THREAD_NAME
203                bool "Enable thread information."
204                default n
205        endmenu
206
207        config ULOG_BACKEND_USING_CONSOLE
208            bool "Enable console backend."
209            default y
210            help
211                The low level output using rt_kprintf().
212
213        config ULOG_USING_FILTER
214            bool "Enable runtime log filter."
215            default n
216            help
217                It will enable the log filter.
218                Such as level filter, log tag filter, log kw filter and tag's level filter.
219
220        config ULOG_USING_SYSLOG
221            bool "Enable syslog format log and API."
222            select ULOG_OUTPUT_TIME
223            select ULOG_USING_FILTER
224            default n
225
226        config ULOG_SW_VERSION_NUM
227            hex
228            default 0x00101
229            help
230                sfotware module version number
231    endif
232
233config RT_USING_UTEST
234    bool "Enable utest (RT-Thread test framework)"
235    default n
236
237endmenu
238