1# Copyright (c) 2016 Intel Corporation 2# SPDX-License-Identifier: Apache-2.0 3 4menu "Utility Library" 5 6config JSON_LIBRARY 7 bool "Build JSON library" 8 help 9 Build a minimal JSON parsing/encoding library. Used by sample 10 applications such as the NATS client. 11 12config RING_BUFFER 13 bool "Ring buffers" 14 help 15 Enable usage of ring buffers. This is similar to kernel FIFOs but ring 16 buffers manage their own buffer memory and can store arbitrary data. 17 For optimal performance, use buffer sizes that are a power of 2. 18 19config NOTIFY 20 bool "Asynchronous Notifications" 21 help 22 Use this API to support async transactions. 23 24config BASE64 25 bool "Base64 encoding and decoding" 26 help 27 Enable base64 encoding and decoding functionality 28 29config ONOFF 30 bool "On-Off Manager" 31 select NOTIFY 32 help 33 An on-off manager supports an arbitrary number of clients of a 34 service which has a binary state. Example applications are power 35 rails, clocks, and binary device power management. 36 37config WINSTREAM 38 bool "Lockless shared memory window byte stream" 39 help 40 Winstream is a byte stream IPC for use in shared memory 41 "windows", generally for transmit to non-Zephyr contexts that 42 can't share Zephyr APIs or data structures. 43 44if WINSTREAM 45config WINSTREAM_STDLIB_MEMCOPY 46 bool "Use standard memcpy() in winstream" 47 help 48 The sys_winstream utility is sometimes used in early boot 49 environments before the standard library is usable. By 50 default it uses a simple internal bytewise memcpy(). Set 51 this to use the one from the standard library. 52endif 53 54config UTF8 55 bool "UTF-8 string operation supported" 56 help 57 Enable the utf8 API. The API implements functions to specifically 58 handle UTF-8 encoded strings. 59 60endmenu 61