blob: ab92a25d7e6bda2e72f5e16eb97d39b48dfc2adf [file] [log] [blame]
# Generic networking options
CONFIG_NETWORKING=y
CONFIG_NET_UDP=y
CONFIG_NET_TCP=n
CONFIG_NET_IPV6=y
CONFIG_NET_IPV4=n
CONFIG_NET_CONFIG_NEED_IPV6=y
CONFIG_NET_CONFIG_NEED_IPV4=n
# disable certain parts of Zephyr IPv6 stack
CONFIG_NET_IPV6_NBR_CACHE=n
CONFIG_NET_IPV6_MLD=n
# Kernel options
CONFIG_NEWLIB_LIBC=y
CONFIG_MAIN_STACK_SIZE=4096
CONFIG_ENTROPY_GENERATOR=y
CONFIG_TEST_RANDOM_GENERATOR=y
CONFIG_INIT_STACKS=y
#CONFIG_DEBUG_OPTIMIZATIONS=y
# Logging
CONFIG_NET_LOG=y
CONFIG_LOG=y
CONFIG_NET_STATISTICS=y
CONFIG_PRINTK=y
# Network buffers
CONFIG_NET_PKT_RX_COUNT=16
CONFIG_NET_PKT_TX_COUNT=16
CONFIG_NET_BUF_RX_COUNT=80
CONFIG_NET_BUF_TX_COUNT=80
CONFIG_NET_CONTEXT_NET_PKT_POOL=y
# Thread by default registers quite a lot addresses.
CONFIG_NET_IF_UNICAST_IPV6_ADDR_COUNT=6
CONFIG_NET_IF_MCAST_IPV6_ADDR_COUNT=8
CONFIG_NET_MAX_CONTEXTS=10
# OpenThread NCP needs to be able to reboot
CONFIG_REBOOT=y
# Allow monitoring of stacks
# CONFIG_KERNEL_SHELL=y
# make sure that Bluetooth is off
CONFIG_BT=n
# OpenThread is using C++
CONFIG_CPLUSPLUS=y
# Other OpenThread dependencies
CONFIG_FLASH=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_FLASH_MAP=y
CONFIG_MPU_ALLOW_FLASH_WRITE=y
CONFIG_NVS=y
CONFIG_SETTINGS=y
# mbedTLS tweaks
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=768
CONFIG_MBEDTLS_HEAP_SIZE=8192
# CONFIG_MBEDTLS_DEBUG=y
# CONFIG_MBEDTLS_DEBUG_LEVEL=4
# Enable OpenThread
CONFIG_NET_L2_OPENTHREAD=y
# Configure OpenThread
CONFIG_OPENTHREAD_CHANNEL=26
# Use PANID 0xffff to be able to commission
CONFIG_OPENTHREAD_PANID=65535
# Increase a few stack and other sizes for OpenThread
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
CONFIG_NET_TX_STACK_SIZE=2048
CONFIG_NET_RX_STACK_SIZE=5120
CONFIG_SHELL_STACK_SIZE=3072
CONFIG_OPENTHREAD_THREAD_STACK_SIZE=8192
CONFIG_OPENTHREAD_PKT_LIST_SIZE=20
# Settings for the Border Router
# from https://openthread.io/guides/border-router/build#build-and-flash-ncp
# CONFIG_OPENTHREAD_DHCP6_CLIENT is not set
CONFIG_OPENTHREAD_DHCP6_SERVER=y
CONFIG_OPENTHREAD_COMMISSIONER=y
CONFIG_OPENTHREAD_BORDER_AGENT=y
CONFIG_OPENTHREAD_BORDER_ROUTER=y
CONFIG_OPENTHREAD_UDP_FORWARD=y
CONFIG_OPENTHREAD_NCP=y
CONFIG_OPENTHREAD_ENABLE_SERVICE=y
# OpenThread shell interferes with Zephyr shell
CONFIG_OPENTHREAD_SHELL=n