# 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
