Legato KConfig Options
Build-time configuration options.
- Legato Configuration
VIRT_TARGET_ARCH:
Hidden. Only set by other selections.- Type:
string
Defaults:-
"arm" if TARGET_VIRT_ARM && (TARGET_VIRT_ARM || TARGET_VIRT_X86)
-
"x86" if TARGET_VIRT_X86 && (TARGET_VIRT_ARM || TARGET_VIRT_X86)
Set the name of the virtual target platform, if applicable. This value is determined by the target platform selection. -
- General Setup
EXPERIMENTAL:
Prompt for experimental (alpha-quality) features- Type:
bool
Default:"n"
Experimental features are usually new features that are being introduced for testing and feedback from a wider audience. They can be enabled to get a preview of new functionality. Be aware that experimental features are subject to change before being released as a regular feature. The use of experimental features in a production environment is strongly discouraged. Target Hardware Platform
- Default:
TARGET_LOCALHOST
Choose one of:
TARGET_LOCALHOST:
Localhost (localhost)- Type:
bool
Run on local Linux host. TARGET_VIRT_X86:
Virtual x86 (virt-x86)- Type:
bool
Run on virtual x86 platform. TARGET_VIRT_ARM:
Virtual ARM (virt-arm)- Type:
bool
Run on virtual ARM platform. TARGET_RASPI:
Raspberry Pi (raspi)- Type:
bool
Run on a Raspberry Pi. TARGET_AR7:
SWI AR755x (ar7)- Type:
bool
Run on a Sierra Wireless AR755x. TARGET_AR758X:
SWI AR758x (ar758x)- Type:
bool
Run on a Sierra Wireless AR758x. TARGET_AR759X:
SWI AR759x (ar759x)- Type:
bool
Run on a Sierra Wireless AR759x. TARGET_AR86:
SWI AR86xx (ar86)- Type:
bool
Run on a Sierra Wireless AR86xx. TARGET_WP85:
SWI WP85xx (wp85)- Type:
bool
Run on a Sierra Wireless WP85xx. TARGET_WP750X:
SWI WP750x (wp750x)- Type:
bool
Run on a Sierra Wireless WP750x. TARGET_WP76XX:
SWI WP76xx (wp76xx)- Type:
bool
Run on a Sierra Wireless WP76xx. TARGET_WP77XX:
SWI WP77xx (wp77xx)- Type:
bool
Run on a Sierra Wireless WP77xx. TARGET_CUSTOM:
Custom- Type:
bool
Run on a custom hardware platform.
Target Operating System
- Default:
LINUX
Choose one of:
RTOS:
RTOS- Type:
bool
Default:"y" if CUSTOM_OS
Selected operating system is a real-time operating system (RTOS). POSIX:
POSIX compliant operating system- Type:
bool
Defaults:-
"y" if LINUX
-
"n"
-
NETWORK:
Network stack- Type:
bool
Default:"y"
Target platform has a network stack available.
LWIP:
Using lwIP network stack (EXPERIMENTAL)- Type:
bool
Defaults:-
"y" if RTOS && EXPERIMENTAL && NETWORK && RTOS
-
"n" if EXPERIMENTAL && NETWORK && RTOS
Target platform is using the Lightweight IP (lwIP) network stack. -
FILESYSTEM:
File system- Type:
bool
Default:"y"
Target platform has support for a file system. QMI:
Platform uses QMI- Type:
bool
Default:"n"
Target platform uses the Qualcomm Messaging Interface to communicate with the cellular modem.
QMI_NO_QMUX:
No QMUX support is available in QMI- Type:
bool
Default:"n" if QMI
Target platform uses QMI but does not support the (deprecated) QMUX API.
SDEF:
Default system definition file- Type:
string
Defaults:-
"" if !"y"
-
"modules/WiFi/wifi.sdef" if ENABLE_WIFI
-
"modules/Dualsys/ar758x.sdef" if TARGET_AR758X
-
"modules/Dualsys/ar759x.sdef" if TARGET_AR759X
-
"modules/Raspi/raspi.sdef" if TARGET_RASPI
-
"localhost.sdef" if TARGET_LOCALHOST
-
"default_readonly.sdef" if READ_ONLY
-
"default.sdef"
-
USE_CLANG:
Use Clang for compilation- Type:
bool
Default:"n"
Use Clang rather than GCC for compiling C and C++ sources. USE_CCACHE:
Use CCache- Type:
bool
Defaults:-
"n" if !"y"
-
!"y"
CCACHE:
CCache command- Type:
string
Default:"ccache" if USE_CCACHE
CCache executable to use when compiling.
-
READ_ONLY:
Read-only image- Type:
bool
Defaults:-
"y" if TARGET_AR758X || TARGET_AR759X
-
"n"
-
STRIP_STAGING_TREE:
Strip staging tree- Type:
bool
Default:"y"
Strip files staged for the target image. DEBUG:
Debug build- Type:
bool
Default:"n"
Build with debug compiler flags turned on, and debugging code features enabled. TEST_COVERAGE:
Code coverage build- Type:
bool
Default:"n"
Build with code coverage compiler flags turned on.
TEST_COVERAGE_DIR:
On-target code coverage directory- Type:
string
Defaults:-
"" if TARGET_LOCALHOST && TEST_COVERAGE
-
"/mnt/flash/coverage" if TEST_COVERAGE
-
- Framework
CUSTOM_FA:
Use custom framework adaptor (EXPERIMENTAL)- Type:
bool
Defaults:-
"y" if CUSTOM_OS && EXPERIMENTAL
-
"n" if EXPERIMENTAL
CUSTOM_FA_PATH:
Path to custom OS adaptor sources directory- Type:
string
Path of custom OS adaptor source directory relative to the legato/ root directory. This source directory should contain liblegato/ and include/ directories containing the source code needed to support the custom operating system.
-
BUILD_TARGET_TOOLS:
Build on-target command-line tools- Type:
bool
Defaults:-
"n" if CUSTOM_OS
-
"y"
RTOS_TARGET_TOOL_RESET:
Include the reset tool- Type:
bool
Default:"n" if RTOS && BUILD_TARGET_TOOLS
Depends on:
Select this if you want to build and install the "reset" tool. This tools reboots the CPU. RTOS_TARGET_TOOL_INSPECT:
Include the inspect tool- Type:
bool
Default:"y" if RTOS && BUILD_TARGET_TOOLS
Depends on:
Select this if you want to build and install the "inspect" tool. This tool provides details of the state and resource usage of many Legato objects.
-
RUNTIME_DIR:
Runtime directory- Type:
string
Default:"/tmp/legato" if POSIX
Directory to use for runtime state files, such as UNIX domain sockets. SOTA:
Enable software-over-the-air (SOTA) updates- Type:
bool
Defaults:-
"y" if POSIX
-
"y" if POSIX && ENABLE_AV_DATA
PROBATION_PERIOD:
Update probation period- Type:
int
Range:
-
10 - 4294967 if SOTA
1800 if SOTA
Default software update probationary period in seconds. After this period of time has elapsed with no failures, it is marked as good. This value can be overridden at runtime by the LE_PROBATION_MS environment variable. -
-
PYTHON:
Enable Python support (EXPERIMENTAL)- Type:
bool
Default:"n" if POSIX && EXPERIMENTAL
Depends on:
Enable support for Python. Python is not supported on non-POSIX systems.
PYTHON_EXECUTABLE:
Python executable- Type:
string
Default:"python2.7" if PYTHON
Python executable to use for building Python support. This may be set to an absolute path.
JAVA:
Enable Java support (EXPERIMENTAL)- Type:
bool
Default:"n" if POSIX && EXPERIMENTAL
Depends on:
Enable support for Java. Java is not supported on non-POSIX systems.
JDK_INCLUDE_DIR:
JDK include directory- Type:
string
Default:"/usr/lib/jvm/java-8-openjdk-amd64/include" if JAVA
Java Development Kit include directory to use when building Java support. EJDK_DIR:
Embedded Java Developer Kit directory- Type:
string
Default:"/usr/local/share/jvm_arm" if JAVA
Path to Oracle's Embedded Java Developer Kit, needed if that JVM is to be bundled with the system.
THREAD_REALTIME_ONLY:
Use real-time priority for all threads- Type:
bool
Default:"n"
Force Legato to use only real-time priorities for tasks. Memory allocation failure behaviour
- Default:
MEM_ALLOC_FORCE
Choose one of:
MEM_HIBERNATION:
Support memory compaction for hibernate to RAM- Type:
bool
Default:"y" if RTOS
Some chips can conserve memory by powering off some memory banks during hibernation. This option enables compacting memory used by Legato to allow powering off more memory banks during hibernation. - Security Features
ENABLE_SMACK:
Enable SMACK for access controls- Type:
bool
Default:!"n" if LINUX && !TARGET_LOCALHOST && !TARGET_RASPI
Enable the Simplified Mandatory Access Control Kernel (SMACK) security module on Linux for access controls.
SMACK_ONLYCAP:
Enable SMACK onlycap- Type:
bool
Default:!"y" if ENABLE_SMACK
Require a specific SMACK label for CAP_MAC_ADMIN and CAP_MAC_OVERRIDE to be effective. The label is typically set in /smack/onlycap. SMACK_ATTR_NAME:
SMACK attribute name- Type:
string
Default:"security.@ref SMACK64" if ENABLE_SMACK
Name of the Legato SMACK attribute. SMACK_ATTR_VALUE:
SMACK attribute value- Type:
string
Default:"_" if ENABLE_SMACK
Value of the Legato SMACK attribute.
ENABLE_IMA:
Enable IMA for file integrity checking- Type:
bool
Default:"n" if LINUX && !TARGET_LOCALHOST
Depends on:
Enable the Integrity Measurement Architecture (IMA) on Linux to prevent accidental or malicious file system changes.
IMA_PRIVATE_KEY:
IMA private key location- Type:
string
Default:"" if ENABLE_IMA
File to load the IMA private key from. IMA_PUBLIC_CERT:
IMA public certificate location- Type:
string
Default:"" if ENABLE_IMA
File to load the IMA public certificate from. IMA_SMACK:
SMACK label for IMA- Type:
string
Default:"imaLegato" if ENABLE_SMACK && ENABLE_IMA
Depends on:
SMACK label to use for IMA purposes.
ENABLE_IOT_KEYSTORE_API:
Enable IoT KeyStore library- Type:
bool
Default:"n" if EXPERIMENTAL
Enable Legato API for the IoT KeyStore library.
- Performance Tuning
REDUCE_FOOTPRINT:
Reduce memory and storage use where possible- Type:
bool
Default:"n"
Try to reduce the memory and storage footprint of Legato. This may use alternate data structures which are optimized for size and reduce the scale of some tests. Selecting this option may result in lower performance and slower applications. STATIC_THREAD_STACKS:
Statically allocate thread stacks- Type:
bool
Default:"n" if RTOS
Allocate stack space for Legato threads from static memory (bss) rather than from the heap. MEM_POOLS:
Use memory pools- Type:
bool
Default:"y"
Use memory pools for dynamic memory allocation. Memory pools help prevent memory fragmentation, but require that the pools be sized appropriately for the application. Disabling this option will still allocate memory using the memory pool interface (le_mem), but switches the internal behaviour to use malloc and free on a per-block basis. This allows tools like Valgrind to accurately track the allocations and de-allocations at the cost of potential memory fragmentation. ENABLE_LE_JSON_API:
Include le_json APIs- Type:
bool
Default:"y"
Include le_json APIs in liblegato. Disabling this config will make le_json APIs unavailable.
JSON_PARSER_BUFFER_SIZE:
JSON parser buffer size- Type:
int
Defaults:-
1024 if REDUCE_FOOTPRINT && ENABLE_LE_JSON_API
-
50000 if ENABLE_LE_JSON_API
-
MAX_EVENT_POOL_SIZE:
Maximum event pool size- Type:
int
Range:
-
1 - 65535 if MEM_POOLS
30 if MEM_POOLS
The maximum number of objects in the process-wide event pool, from which the event objects are allocated. -
MAX_HANDLER_POOL_SIZE:
Maximum event handler pool size- Type:
int
Range:
-
1 - 65535 if MEM_POOLS
15 if MEM_POOLS
The maximum number of objects in the process-wide handler pool, from which all handler objects are allocated. -
MAX_QUEUED_FUNCTION_POOL_SIZE:
Maximum queued event function pool size- Type:
int
Range:
-
1 - 65535 if MEM_POOLS
15 if MEM_POOLS
The maximum number of objects in the process-wide queued function report pool, from which Queued Function reports are allocated. Per event ID reports are also allocated from this pool. -
DEFAULT_PUB_SUB_EVENT_REPORT_SIZE:
Default size for publish-subscribe event reports- Type:
int
Range:
-
1 - 65535 if MEM_POOLS
512 if MEM_POOLS
This value is used as default size for publish subscribe event reports allocated out of the standard report pool. Event reports larger than this have a separate pool created for each report type. -
MAX_FD_MONITOR_POOL_SIZE:
Maximum file descriptor monitor pool size- Type:
int
Range:
-
2 - 65535 if MEM_POOLS
10 if MEM_POOLS
The maximum number of objects in the process-wide FD monitor pool, from which all FD monitor objects are allocated. -
MAX_SUB_POOLS_POOL_SIZE:
Maximum memory pool sub-pools- Type:
int
Range:
-
0 - 65535 if MEM_POOLS
8 if MEM_POOLS
The maximum number of sub-pool objects in the memory sub-pools pool. These are control structures used for managing the subdivision of memory pools. -
MAX_MUTEX_POOL_SIZE:
Maximum mutex pool size- Type:
int
Range:
-
4 - 65535 if MEM_POOLS
20 if MEM_POOLS
The maximum number of mutex objects in the process-wide mutex pool, from which all Legato mutexes are allocated. -
MAX_SEM_POOL_SIZE:
Maximum semaphore pool size- Type:
int
Range:
-
2 - 65535 if MEM_POOLS
64 if MEM_POOLS
The maximum number of semaphore objects in the process-wide semaphore pool, from which all Legato semaphores are allocated. -
MAX_THREAD_POOL_SIZE:
Maximum thread pool size- Type:
int
Range:
-
1 - 65535 if MEM_POOLS
20 if MEM_POOLS
The maximum number of thread objects in the process-wide thread pool, from which all Legato threads are allocated. -
MAX_THREAD_DESTRUCTOR_POOL_SIZE:
Maximum thread destructor pool size- Type:
int
Range:
-
1 - 65535 if MEM_POOLS
-
MAX_THREAD_POOL_SIZE if RTOS && MEM_POOLS
-
40 if MEM_POOLS
-
MAX_TIMER_POOL_SIZE:
Maximum timer pool size- Type:
int
Range:
-
1 - 65535 if MEM_POOLS
40 if MEM_POOLS
The maximum number of timer objects in the process-wide timer pool, from which all Legato timers are allocated. -
MAX_PATH_ITERATOR_POOL_SIZE:
Maximum path iterator count- Type:
int
Range:
-
0 - 65535 if MEM_POOLS
10 if MEM_POOLS
The maximum number of path iterator in the process-wide iterator pools, from which all Legato path iterators are allocated. -
MAX_MSG_LOCAL_CLIENT_SESSION_POOL_SIZE:
Maximum local client messaging sessions- Type:
int
Range:
-
0 - 65535 if MEM_POOLS
-
MAX_ARG_OPTIONS:
Maximum number of command line options- Type:
int
Range:
-
0 - 65535 if MEM_POOLS
-
MAX_ARG_POSITIONAL_CALLBACKS:
Maximum number of positional argument callbacks- Type:
int
Range:
-
0 - 65535 if MEM_POOLS
-
CLI_STACK_SIZE:
Size of CLI thread stack- Type:
int
Range:
-
0 - 4294967295 if RTOS
2048 if RTOS
All CLI commands are run by CLI thread. This value is a size (in bytes) of stack for the CLI thread. -
- Diagnostic Features
Static log level filter
- Defaults:
Choose one of:
LOG_STATIC_FILTER_DEBUG:
Debug- Type:
bool
Include all statements up to and including debug level. LOG_STATIC_FILTER_INFO:
Info- Type:
bool
Include all statements up to and including info level. LOG_STATIC_FILTER_WARN:
Warning- Type:
bool
Include all statements up to and including warning level. LOG_STATIC_FILTER_ERR:
Error- Type:
bool
Include all statements up to and including error level. LOG_STATIC_FILTER_CRIT:
Critical- Type:
bool
Include all statements up to and including critical level. LOG_STATIC_FILTER_EMERG:
Emergency- Type:
bool
Include only emergency-level log statements. LOG_STATIC_FILTER_NO_LOG:
No logging- Type:
bool
Disable all logging statements.
ENABLE_SEGV_HANDLER:
Enable SIGSEGV handler- Type:
bool
Default:"y" if LINUX
When a segmentation fault occurs, use signal derivation and sigsetjmp()/siglongjmp() to try and survive the invalid memory access long enough to generate a backtrace. This handler relies on undefined behaviour of sigsetjmp() and is therefore not guaranteed to work. ENABLE_BACKTRACE:
Enable Legato assertion backtraces- Type:
bool
Default:"y"
Print backtraces when a Legato assertion is triggered. This can be helpful in debugging errors. USE_GUARD_BAND:
Enable memory guard bands- Type:
bool
Default:"y"
Insert chunks of memory into each allocated memory block before and after the user data portion. These "guard bands" are filled with a special pattern that is unlikely to occur in normal data. Whenever a block is allocated or released, the guard bands are checked for corruption and any corruption is reported.
NUM_GUARD_BAND_WORDS:
Number of guard band words- Type:
int
Range:
-
1 - 8 if USE_GUARD_BAND
-
1 if REDUCE_FOOTPRINT && USE_GUARD_BAND
-
8 if USE_GUARD_BAND
-
MEM_POOL_STATS:
Track memory pool statistics- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT
-
"y"
-
LOG_FUNCTION_NAMES:
Log function names- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT
-
"y"
-
THREAD_SETNAME:
Set names of threads created from Legato- Type:
bool
Default:"y"
Use Legato thread names as the names for underlying OS threads as well. This has no effect if the OS does not allow setting thread names. If Legato thread names are disabled, this will just set the name to "<legato>." NAMES_ENABLED:
Enable names in Legato objects- Type:
bool
Default:"y"
Add name fields to Legato objects (mutexes, threads, memory pools, etc) for logging, debugging, and tracing purposes. Turning this off will reduce RAM usage at the expense of traceability.
FD_MONITOR_NAMES_ENABLED:
Enable names in file descriptor monitors- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT && NAMES_ENABLED
-
"y" if NAMES_ENABLED
-
SEM_NAMES_ENABLED:
Enable names in semaphores- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT && NAMES_ENABLED
-
"y" if NAMES_ENABLED
-
MUTEX_NAMES_ENABLED:
Enable names in mutexes- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT && NAMES_ENABLED
-
"y" if NAMES_ENABLED
-
THREAD_NAMES_ENABLED:
Enable names in threads- Type:
bool
Default:"y" if NAMES_ENABLED
Add a name field to Legato threads. MEM_POOL_NAMES_ENABLED:
Enable names in memory pools- Type:
bool
Default:"y" if NAMES_ENABLED
Add a name field to Legato memory pools.
MEM_TRACE:
Enable memory pool tracing- Type:
bool
Default:"n" if MEM_POOL_NAMES_ENABLED
If enabled, the memory subsystem will create a trace point for every memory pool created. The name of the tracepoint will be the same of the pool, and is of the form "component.poolName".
TIMER_NAMES_ENABLED:
Enable names in timers- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT && NAMES_ENABLED
-
"y" if NAMES_ENABLED
-
EVENT_NAMES_ENABLED:
Enable names in events- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT && NAMES_ENABLED
-
"y" if NAMES_ENABLED
-
HASHMAP_NAMES_ENABLED:
Enable names in hashmaps- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT && NAMES_ENABLED
-
"y" if NAMES_ENABLED
-
SAFE_REF_NAMES_ENABLED:
Enable names in safe references- Type:
bool
Defaults:-
"n" if REDUCE_FOOTPRINT && NAMES_ENABLED
-
"y" if NAMES_ENABLED
-
- Daemon Setup
WDOG_FRAMEWORK:
Enable Legato watchdog on framework services- Type:
bool
Default:"y"
The watchdog observes the Legato framework daemons and, if one deadlocks, restarts the system. WDOG_HASHTABLE_SIZE:
Watchdog hashtable size- Type:
int
Range:
-
1 - 65535
31
The maximum number of watchdogs to be monitored -
- Framework Daemon Log Level Settings
Supervisor Log Level
- Choose one of:
SUPERVISOR_LOG_LEVEL_DEBUG:
Debug- Type:
bool
Include all statements up to and including debug level. SUPERVISOR_LOG_LEVEL_INFO:
Info- Type:
bool
Include all statements up to and including info level. SUPERVISOR_LOG_LEVEL_WARN:
Warning- Type:
bool
Include all statements up to and including warning level. SUPERVISOR_LOG_LEVEL_ERR:
Error- Type:
bool
Include all statements up to and including error level. SUPERVISOR_LOG_LEVEL_CRIT:
Critical- Type:
bool
Include all statements up to and including critical level. SUPERVISOR_LOG_LEVEL_EMERG:
Emergency- Type:
bool
Include only emergency-level log statements.
ServiceDirectory Log Level
- Choose one of:
SERVICEDIRECTORY_LOG_LEVEL_DEBUG:
Debug- Type:
bool
Include all statements up to and including debug level. SERVICEDIRECTORY_LOG_LEVEL_INFO:
Info- Type:
bool
Include all statements up to and including info level. SERVICEDIRECTORY_LOG_LEVEL_WARN:
Warning- Type:
bool
Include all statements up to and including warning level. SERVICEDIRECTORY_LOG_LEVEL_ERR:
Error- Type:
bool
Include all statements up to and including error level. SERVICEDIRECTORY_LOG_LEVEL_CRIT:
Critical- Type:
bool
Include all statements up to and including critical level. SERVICEDIRECTORY_LOG_LEVEL_EMERG:
Emergency- Type:
bool
Include only emergency-level log statements.
LogCtrlDaemon Log Level
- Choose one of:
LOGCTRLDAEMON_LOG_LEVEL_DEBUG:
Debug- Type:
bool
Include all statements up to and including debug level. LOGCTRLDAEMON_LOG_LEVEL_INFO:
Info- Type:
bool
Include all statements up to and including info level. LOGCTRLDAEMON_LOG_LEVEL_WARN:
Warning- Type:
bool
Include all statements up to and including warning level. LOGCTRLDAEMON_LOG_LEVEL_ERR:
Error- Type:
bool
Include all statements up to and including error level. LOGCTRLDAEMON_LOG_LEVEL_CRIT:
Critical- Type:
bool
Include all statements up to and including critical level. LOGCTRLDAEMON_LOG_LEVEL_EMERG:
Emergency- Type:
bool
Include only emergency-level log statements.
ConfigTree Log Level
- Choose one of:
CONFIGTREE_LOG_LEVEL_DEBUG:
Debug- Type:
bool
Include all statements up to and including debug level. CONFIGTREE_LOG_LEVEL_INFO:
Info- Type:
bool
Include all statements up to and including info level. CONFIGTREE_LOG_LEVEL_WARN:
Warning- Type:
bool
Include all statements up to and including warning level. CONFIGTREE_LOG_LEVEL_ERR:
Error- Type:
bool
Include all statements up to and including error level. CONFIGTREE_LOG_LEVEL_CRIT:
Critical- Type:
bool
Include all statements up to and including critical level. CONFIGTREE_LOG_LEVEL_EMERG:
Emergency- Type:
bool
Include only emergency-level log statements.
UpdateDaemon Log Level
- Choose one of:
UPDATEDAEMON_LOG_LEVEL_DEBUG:
Debug- Type:
bool
Include all statements up to and including debug level. UPDATEDAEMON_LOG_LEVEL_INFO:
Info- Type:
bool
Include all statements up to and including info level. UPDATEDAEMON_LOG_LEVEL_WARN:
Warning- Type:
bool
Include all statements up to and including warning level. UPDATEDAEMON_LOG_LEVEL_ERR:
Error- Type:
bool
Include all statements up to and including error level. UPDATEDAEMON_LOG_LEVEL_CRIT:
Critical- Type:
bool
Include all statements up to and including critical level. UPDATEDAEMON_LOG_LEVEL_EMERG:
Emergency- Type:
bool
Include only emergency-level log statements.
Watchdog Log Level
- Choose one of:
WATCHDOG_LOG_LEVEL_DEBUG:
Debug- Type:
bool
Include all statements up to and including debug level. WATCHDOG_LOG_LEVEL_INFO:
Info- Type:
bool
Include all statements up to and including info level. WATCHDOG_LOG_LEVEL_WARN:
Warning- Type:
bool
Include all statements up to and including warning level. WATCHDOG_LOG_LEVEL_ERR:
Error- Type:
bool
Include all statements up to and including error level. WATCHDOG_LOG_LEVEL_CRIT:
Critical- Type:
bool
Include all statements up to and including critical level. WATCHDOG_LOG_LEVEL_EMERG:
Emergency- Type:
bool
Include only emergency-level log statements.
- Supervisor
SUPERV_NICE_LEVEL:
Nice level- Type:
int
Range:
-
-20 - 19 if POSIX
-19 if POSIX
The nice level of the Legato Supervisor, which forks other Legato processes. -
SUPERV_APP_TMPFS_SIZE:
App tmpfs size- Type:
int
Default:90112 if LINUX
The size in bytes of the tmpfs partition created for each sandboxed App.
- Service Directory
SVCDIR_SERVER_SOCKET_NAME:
Service directory server socket name- Type:
string
Default:"serviceDirectoryServer"
Name of the Service Directory's server UNIX domain socket. The full path will be this name appended to the runtime directory path. SVCDIR_CLIENT_SOCKET_NAME:
Service directory client socket name- Type:
string
Default:"serviceDirectoryClient"
Name of the Service Directory's client UNIX domain socket. The full path will be this name appended to the runtime directory path.
- Config Tree
ENABLE_CONFIG_TREE:
Enable Config Tree- Type:
bool
Default:"y"
Enable the Config Tree for storing settings. The Config Tree is always enabled on Linux. CFGTREE_MAX_USER_POOL_SIZE:
Maximum user pool size- Type:
int
Range:
Default:31 if LINUX && LINUX
Depends on:
The maximum number of user objects in the configTree user pool. CFGTREE_MAX_DSTRING_POOL_SIZE:
Maximum dynamic string pool size- Type:
int
Range:
-
1 - 65535 if LINUX
-
CFGTREE_MAX_ITERATOR_POOL_SIZE:
Maximum config iterator pool size- Type:
int
Range:
-
1 - 65535 if LINUX
20 if LINUX
The maximum number of iterator objects in the configTree iterator pool. -
CFGTREE_MAX_UPDATE_POOL_SIZE:
Maximum update pool size- Type:
int
Range:
-
1 - 65535 if LINUX
3 if LINUX
The maximum number of iterator objects in the configTree iterator pool. This determines the maximum number of concurrent configTree updates. -
CFGTREE_MAX_NODE_POOL_SIZE:
Maximum config node pool size- Type:
int
Range:
-
1 - 65535 if LINUX
100 if LINUX
The maximum number of node objects in the configTree node pool. -
CFGTREE_MAX_TREE_POOL_SIZE:
Maximum config tree pool size- Type:
int
Range:
-
1 - 65535 if LINUX
31 if LINUX
The maximum number of tree objects in the configTree tree pool. -
CFGTREE_MAX_HANDLER_POOL_SIZE:
Maximum node event handler pool size- Type:
int
Range:
-
1 - 65535 if LINUX
31 if LINUX
The maximum number of node event handler objects in the configTree handler pool. -
CFGTREE_MAX_BINARY_DATA_POOL_SIZE:
Maximum binary data buffer pool size- Type:
int
Range:
-
1 - 65535 if LINUX
31 if LINUX
The maximum number of binary data buffers in the configTree binary data buffer pool. -
CFGTREE_MAX_ENCODED_STRING_POOL_SIZE:
Maximum encoded string buffer pool size- Type:
int
Range:
-
1 - 65535 if LINUX
31 if LINUX
The maximum number of encoded string buffers in the configTree encoded string buffer pool. -
CFGTREE_MAX_TREE_ITERATOR_POOL_SIZE:
Maximum tree iterator pool size- Type:
int
Range:
-
1 - 65535 if LINUX
11 if LINUX
The maximum number of tree iterators in the configTree tree iterator pool. -
- Watchdog Daemon
WDOG_ENABLE_EXTERNAL:
Enable external watchdog- Type:
bool
Defaults:-
"y" if (TARGET_WP750X || TARGET_WP85) && LINUX
-
"n" if LINUX
WDOG_PA_MODULE:
Kernel module for external watchdog- Type:
string
Default:"softdog" if LINUX && WDOG_ENABLE_EXTERNAL
Depends on:
Name of the kernel module to load in order to enable the external watchdog. WDOG_PA_DEVICE:
External watchdog device- Type:
string
Default:"/dev/watchdog" if LINUX && WDOG_ENABLE_EXTERNAL
Depends on:
Name of the device to use to kick the external watchdog.
-
- RPC
RPC:
Enable RPC Proxy infrastructure (EXPERIMENTAL)- Type:
bool
Default:"n" if EXPERIMENTAL
Select this to enable the RPC Proxy infrastructure (EXPERIMENTAL). WARNING: Enabling this feature will break backwards compatibility with existing IPC bindings and applications.
RPC_PROXY_LIBRARY:
Enable RPC Proxy as a library component- Type:
bool
Default:"n" if RPC && POSIX && EXPERIMENTAL
Depends on:
Select this to build the RPC Proxy as a library component that can be linked into an application or executable file. RPC_RUNTIME_CONFIG_TREE:
Use ConfigTree to store RPC Run-time configuration- Type:
bool
Defaults:-
"y" if ENABLE_CONFIG_TREE && RPC && ENABLE_CONFIG_TREE && EXPERIMENTAL
-
"n" if RPC && ENABLE_CONFIG_TREE && EXPERIMENTAL
Select this to enable the RPC Proxy to store dynamic run-time configuration in the Configuration Tree. -
RPC_PROXY_SERVICE_BINDINGS_MAX_NUM:
Maximum number of RPC service bindings- Type:
int
Range:
-
0 - 30 if RPC && EXPERIMENTAL
4 if RPC && EXPERIMENTAL
Depends on:
The maximum number of simultaneous RPC service bindings. -
RPC_PROXY_FILE_STREAM_MAX_NUM:
Maximum number of simultaneous file streams- Type:
int
Range:
-
0 - 30 if RPC && EXPERIMENTAL
5 if RPC && EXPERIMENTAL
Depends on:
The maximum number of simultaneous RPC file streams. -
RPC_PROXY_MSG_LARGE_OUT_PARAMETER_MAX_NUM:
Maximum number of large string/array parameters to be buffered simultaneously- Type:
int
Range:
-
0 - 32 if RPC && EXPERIMENTAL
5 if RPC && EXPERIMENTAL
Depends on:
The maximum number of large string/array parameters to be buffered simultaneously -
RPC_PROXY_MSG_SMALL_OUT_PARAMETER_MAX_NUM:
Maximum number of small string/array parameters to be buffered simultaneously- Type:
int
Range:
-
0 - 32 if RPC && EXPERIMENTAL
10 if RPC && EXPERIMENTAL
Depends on:
The maximum number of small string/array parameters to be buffered simultaneously -
RPC_PROXY_MAX_LARGE_OUT_PARAMETER_SIZE:
Maximum size of a large string/array parameter- Type:
int
Range:
-
0 - 4096 if RPC && (RTOS || RPC_PROXY_LIBRARY) && EXPERIMENTAL
1024 if RPC && (RTOS || RPC_PROXY_LIBRARY) && EXPERIMENTAL
Depends on:
The maximum size of a large string/array parameter -
RPC_PROXY_MAX_SMALL_OUT_PARAMETER_SIZE:
Maximum size of a small string/array parameter- Type:
int
Range:
-
0 - 4096 if RPC && (RTOS || RPC_PROXY_LIBRARY) && EXPERIMENTAL
128 if RPC && (RTOS || RPC_PROXY_LIBRARY) && EXPERIMENTAL
Depends on:
The maximum size of a small string/array parameter -
RPC_PROXY_MAX_FILE_STREAM_PAYLOAD:
Maximum payload size for file stream messages- Type:
int
Range:
-
0 - 4096 if RPC && EXPERIMENTAL
512 if RPC && EXPERIMENTAL
Depends on:
The maximum size of a RPC message that can be sent and received between RPC-enabled systems. -
RPC_PROXY_ASYNC_EVENT_HANDLER_MAX_NUM:
Maximum number of async event handlers- Type:
int
Range:
-
0 - 4294967295 if RPC && EXPERIMENTAL
5 if RPC && EXPERIMENTAL
Depends on:
The maximum number of async event handlers client can register with server. -
RPC_PROXY_ASYNC_EVENTS_MAX_NUM:
Maximum number of simultaneous async events- Type:
int
Range:
-
2 - 4294967295 if RPC && EXPERIMENTAL
3 if RPC && EXPERIMENTAL
Depends on:
The maximum number of async events that can be buffered before they are sent out to wire or consumend by client. -
RPC_PROXY_NETWORK_KEEPALIVE_SERVICE_INTERVAL:
Frequency of RPC Keep-Alive network service (in seconds)- Type:
int
Range:
-
1 - 4294967295 if RPC && EXPERIMENTAL
120 if RPC && EXPERIMENTAL
Depends on:
The Frequency of Keep-Alice service, used to monitor the health of a remote RPC- enabled system. -
RPC_PROXY_NETWORK_KEEPALIVE_TIMEOUT_TIMER_INTERVAL:
RPC Keep-Alive time-out period (in seconds)- Type:
int
Range:
-
1 - 4294967295 if RPC && EXPERIMENTAL
30 if RPC && EXPERIMENTAL
Depends on:
The length of time the RPC Proxy will wait before declaring a remote RPC-enabled system as unreachable (DOWN). -
RPC_PROXY_NETWORK_CONNECTION_RETRY_TIMER_INTERVAL:
Network connection retry timer (in seconds)- Type:
int
Range:
-
1 - 4294967295 if RPC && EXPERIMENTAL
15 if RPC && EXPERIMENTAL
Depends on:
The length of time the RPC Proxy will wait before attempting to re-connect to a remote RPC-enabled system. -
RPC_PROXY_CONNECT_SERVICE_REQUEST_TIMER_INTERVAL:
RPC Connect-Service time-out period (in seconds)- Type:
int
Range:
-
1 - 4294967295 if RPC && EXPERIMENTAL
15 if RPC && EXPERIMENTAL
Depends on:
The length of time the RPC Proxy will wait before abandoning a pending connect- service request. -
- Services
SERVICES_WATCHDOG:
Enable watchdog for Legato services- Type:
bool
Default:"y"
The services watchdog ensures that Legato processes are restarted if they deadlock. - AirVantage Connector
AirVantage Connector application
- Defaults:
Choose one of:
AVC_FEATURE_OBSERVE:
Enable LWM2M observe- Type:
bool
Defaults:-
"y" if TARGET_WP85
-
"y" if TARGET_WP750X
-
"y" if TARGET_WP76XX
-
"y" if TARGET_WP77XX
-
"n"
-
AVC_FEATURE_AVMS_CONFIG:
Enable AVMS configuration- Type:
bool
Defaults:-
"y" if TARGET_WP85
-
"y" if TARGET_WP750X
-
"y" if TARGET_WP76XX
-
"y" if TARGET_WP77XX
-
"n"
-
ENABLE_AV_DATA:
Enable AV Data- Type:
bool
Defaults:-
"n" if RTOS
-
"y"
SOTA:
Enable software-over-the-air (SOTA) updates- Type:
bool
Defaults:-
"y" if POSIX
-
"y" if POSIX && ENABLE_AV_DATA
Select this to enable support for SOTA updates. SOTA is not supported on non- POSIX systems. -
-
ENABLE_AV_SMS_COUNT:
Enable AV SMS counting support for LWM2M resources lwm2m.7.0.x- Type:
bool
Defaults:-
"n" if RTOS
-
"y"
-
AVC_HTTP_TIMEOUT_MS:
AVC HTTP connection timeout (msec)- Type:
int
Default:30000
The timeout (msec) of the HTTP connection used to download the package. AVC_FEATURE_EDM:
Enable Extended Device Management (EDM)- Type:
bool
Defaults:-
"y" if TARGET_WP750X
-
"y" if TARGET_WP76XX
-
"y" if TARGET_WP77XX
-
"n"
-
- AT Service
ATSERVER_DEVICE_POOL_SIZE:
Define the maximal number of AT server devices- Type:
int
Default:2
ATSERVER_USER_ERRORS:
Enable user-defined AT errors- Type:
bool
Defaults:-
"y" if LINUX
-
"n"
-
ATSERVER_TEXT_API:
Enable text API- Type:
bool
Defaults:-
"y" if POSIX
-
"n"
-
- Port Service
PORT_CONFIG_IS_STATIC:
The ports configuration is static- Type:
bool
Defaults: Allow to choose if the ports configuration is statically defined. PORT_JSON_CONFIG_FILE:
Path to json file for Port configuration- Type:
string
Default:"/legato/systems/current/apps/portService/read- only/usr/local/share/PortConfigurationFile.json" if LINUX
Do not modify the default value.
- Modem Service
ENABLE_ECALL:
Enable eCall support- Type:
bool
Default:"y"
Enable PAN European eCall or Russian ERA GLONASS emergency calling support. MDM_HAS_SMSC_INFORMATION:
Has SMSC information- Type:
bool
Default:"y"
Support SMSC (Short Message Service Centre) information in modem services. Some terminals do not include the SMSC information in the PDU format string and in those cases, this value must be deselected. SIM_ENABLE_AUTOSWITCH:
Enable SIM auto switch support- Type:
bool
Defaults:-
"y" if TARGET_WP76XX && QMI
-
"y" if TARGET_WP77XX && QMI
-
"n" if QMI
-
MODEM_DAEMON_PREFERRED_NETWORK:
Enable preferred network management API- Type:
bool
Default:"y" if POSIX
Allow managing preferred networks via Legato API. ENABLE_PCI_SCAN:
Enable use of PCI scan related APIs- Type:
bool
Defaults:-
"y" if LINUX
-
"n"
-
ENABLE_TIME_TO_OS:
Enable provide time and date to OS- Type:
bool
Defaults:-
"y" if LINUX
-
"n"
-
ENABLE_SIM_WAKEUP_FALLBACK:
Enable SIM fallback options- Type:
bool
Default:"n"
Allow the setting of SIM fallback options for device wakeup/ initialization. ENABLE_DEFAULT_APN_SWITCHING:
Enable default apn switching- Type:
bool
Default:"y"
In the event that sim is roaming, the module will automatically switch to the default APN of the sim.
- Secure Storage
ENABLE_SECSTORE_ADMIN:
Enable secure storage administration API- Type:
bool
Default:"n"
Allow administrative control of the Legato secure storage system. This permits reading, writing, and deleting secure storage files and should be used with caution. SECSTORE_IKS_BACKEND:
Use IoT Keystore as SecStore encryption engine- Type:
bool
Default:"n" if EXPERIMENTAL
Use IoT Keystore as SecStore back-end to encrypt/decrypt the user data.
- Positioning Service
- Data Connection Service
ENABLE_ETHERNET:
Enable DCS to manage Ethernet- Type:
bool
Defaults:-
"n" if RTOS
-
"y"
-
FEATURE_SPISVC:
Enable SPI service- Type:
bool
Defaults:-
"y" if TARGET_WP85
-
"y" if TARGET_WP750X
-
"y" if TARGET_WP76XX
-
"y" if TARGET_WP77XX
-
"n"
-
SMS_SERVICE_ENABLED:
Enable SMS Service- Type:
bool
Default:"y" if POSIX
Enable SMS Service, which is not supported on RTOS systems. - MQTT Service
MQTT_CLIENT_BUFFER_SIZE_MAX_NUM:
Maximum size of buffers used for MQTT Client read and write operations- Type:
int
Range:
-
0 - 4096
512
The maximum size of MQTT Client read and write buffers. -
MQTT_CLIENT_SESSION_MAX_NUM:
Maximum number of MQTT Client sessions- Type:
int
Range:
-
0 - 4096
5
The maximum number of MQTT Client sessions. -
- Components
- FTP Client
SWIFTP:
Using SIERRA FTP feature- Type:
bool
Default:"n"
this will enable Sierra FTP feature based on le_socketlib. FTPCLIENT_SESSION_MAX:
Maximum number simultaneous FTP client sessions- Type:
int
Range:
Default:2 if LWIP || SWIFTP
Depends on:
Maximum number of simultaneous FTP client sessions permitted. This value is used for sizing memory pools. FTPCLIENT_EVENT_MAX:
Size of FTP client asynchronous event queue- Type:
int
Range:
-
1 - 1024 if LWIP
8 if LWIP
Maximum number of FTP client events that can be queued at once. -
FTPCLIENT_BUFFER_SIZE:
Size of FTP client data buffers- Type:
int
Range:
-
8 - 65536 if LWIP
256 if LWIP
Size in bytes of the data buffers used to queue up chunks of data for sending or receiving. -
FTPCLIENT_SERVER_NAME_MAX:
Maximum size of server name- Type:
int
Range:
Default:64 if LWIP || SWIFTP
Depends on:
Maximum size of FTP server name. This size includes the terminating NUL character. FTPCLIENT_USER_NAME_MAX:
Maximum size of user name- Type:
int
Range:
Default:32 if LWIP || SWIFTP
Depends on:
Maximum size of FTP user name. This size includes the terminating NUL character. FTPCLIENT_PASSWORD_MAX:
Maximum size of user name- Type:
int
Range:
Default:32 if LWIP || SWIFTP
Depends on:
Maximum size of FTP password. This size includes the terminating NUL character.
- Socket Library
SOCKET_LIB_SESSION_MAX:
Maximum number of simultaneous sockets- Type:
int
Range:
-
1 - 1024
-
2 if RTOS
-
4
-
SSL Encryption Library
- Defaults:
Choose one of:
- Modules
ENABLE_WIFI:
Enable WiFi- Type:
bool
Defaults:-
"y" if TARGET_WP750X
-
"y" if TARGET_WP85
-
"y" if TARGET_WP76XX
-
"y" if TARGET_WP77XX
-
"n"
Wifi Platform Adaptor
- Default:
WIFI_PA_TI if ENABLE_WIFI
Choose one of:
WIFI_PA_TI:
TI- Type:
bool
Platform adaptor for TI wireless module, such as that on the mangOH WiFi IoT card.
WIFI_PA_TI_USE_LEGATO:
TI WiFi Drivers- Type:
bool
Default:"n" if WIFI_PA_TI && <choice>
Depends on:
Embed TI Wilink device drivers in Legato.
WIFI_PA_TI_SIMU:
TI simulator- Type:
bool
Platform adaptor running a simulated TI Access Point.
-
- Documentation
EXTERNAL_DOCS:
Include external documentation- Type:
bool
Defaults:-
"y" if ENABLE_WIFI
-
"n"
EXTERNAL_DOCS_ROOT:
External documentation root- Type:
string
Defaults:-
"modules/WiFi" if ENABLE_WIFI && EXTERNAL_DOCS
-
"" if EXTERNAL_DOCS
-
-
- Framework Adaptor
Copyright (C) Sierra Wireless Inc.