# mcumgr configuration options # Copyright Runtime.io 2018. All rights reserved. # SPDX-License-Identifier: Apache-2.0 menu "Management" config MCUMGR_SMP_BT bool "Bluetooth mcumgr SMP transport" select MCUMGR select BT select BT_PERIPHERAL select BT_GATT_DYNAMIC_DB help Enables handling of SMP commands received over Bluetooth. config MCUMGR_SMP_BT_AUTHEN bool "Authenticated requirement for Bluetooth mcumgr SMP transport" depends on MCUMGR_SMP_BT select BT_SMP default y help Enables encrypted and authenticated connection requirement to Bluetooth SMP transport. config MCUMGR_SMP_SHELL bool "Shell mcumgr SMP transport" select MCUMGR select SHELL select SHELL_BACKEND_SERIAL select BASE64 help Enables handling of SMP commands received over shell. This allows the shell to be use for both mcumgr commands and shell commands. config MCUMGR_SMP_SHELL_MTU int "Shell SMP MTU" default 256 depends on MCUMGR_SMP_SHELL help Maximum size of SMP frames sent and received over shell. This value must satisfy the following relation: MCUMGR_SMP_SHELL_MTU <= MCUMGR_BUF_SIZE + 2 config MCUMGR_SMP_UART bool "UART mcumgr SMP transport" select MCUMGR select UART_MCUMGR select BASE64 help Enables handling of SMP commands received over UART. This is a lightweight alternative to MCUMGR_SMP_SHELL. It allows mcumgr commands to be received over UART without requiring an additional thread. config MCUMGR_SMP_UART_MTU int "UART SMP MTU" default 256 depends on MCUMGR_SMP_UART help Maximum size of SMP frames sent and received over UART, in bytes. This value must satisfy the following relation: MCUMGR_SMP_UART_MTU <= MCUMGR_BUF_SIZE + 2 source "subsys/mgmt/Kconfig.mcumgr" config MCUMGR_SMP_UDP bool "UDP mcumgr SMP transport" select MCUMGR select NETWORKING select NET_UDP select NET_SOCKETS select NET_SOCKETS_POSIX_NAMES help Enables handling of SMP commands received over UDP. Will start a thread for listening on the configured UDP port. config MCUMGR_SMP_UDP_IPV4 bool "UDP SMP using IPv4" depends on MCUMGR_SMP_UDP depends on NET_IPV4 default y help Enable SMP UDP using IPv4 addressing. Can be enabled alongside IPv6 addressing. config MCUMGR_SMP_UDP_IPV6 bool "UDP SMP using IPv6" depends on MCUMGR_SMP_UDP depends on NET_IPV6 help Enable SMP UDP using IPv6 addressing. Can be enabled alongside IPv4 addressing. config MCUMGR_SMP_UDP_PORT int "UDP SMP port" depends on MCUMGR_SMP_UDP default 1337 help UDP port that SMP server will listen for SMP commands on. config MCUMGR_SMP_UDP_STACK_SIZE int "UDP SMP stack size" depends on MCUMGR_SMP_UDP default 512 help Stack size of the SMP UDP listening thread config MCUMGR_SMP_UDP_THREAD_PRIO int "UDP SMP thread priority" depends on MCUMGR_SMP_UDP default 0 help Scheduling priority of the SMP UDP listening thread. config MCUMGR_SMP_UDP_MTU int "UDP SMP MTU" depends on MCUMGR_SMP_UDP default 1500 help Maximum size of SMP frames sent and received over UDP, in bytes. This value must satisfy the following relation: MCUMGR_SMP_UDP_MTU <= MCUMGR_BUF_SIZE + SMP msg overhead - address size where address size is determined by IPv4/IPv6 selection. if MCUMGR config MCUMGR_BUF_COUNT int "Number of mcumgr buffers" default 2 if MCUMGR_SMP_UDP default 4 help The number of net_bufs to allocate for mcumgr. These buffers are used for both requests and responses. config MCUMGR_BUF_SIZE int "Size of each mcumgr buffer" default 2048 if MCUMGR_SMP_UDP default 384 help The size, in bytes, of each mcumgr buffer. This value must satisfy the following relation: MCUMGR_BUF_SIZE >= transport-specific-MTU + transport-overhead config MCUMGR_BUF_USER_DATA_SIZE int "Size of mcumgr buffer user data" default 24 if MCUMGR_SMP_UDP && MCUMGR_SMP_UDP_IPV6 default 8 if MCUMGR_SMP_UDP && MCUMGR_SMP_UDP_IPV4 default 4 help The size, in bytes, of user data to allocate for each mcumgr buffer. Different mcumgr transports impose different requirements for this setting. A value of 4 is sufficient for UART, shell, and bluetooth. For UDP, the userdata must be large enough to hold a IPv4/IPv6 address. Note that CONFIG_NET_BUF_USER_DATA_SIZE must be at least as big as MCUMGR_BUF_USER_DATA_SIZE. endif # MCUMGR endmenu