161 lines
4.3 KiB
Plaintext
161 lines
4.3 KiB
Plaintext
# 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
|