diff --git a/modules/openthread/CMakeLists.txt b/modules/openthread/CMakeLists.txt index 375fa4bf2c5..94996014fb4 100644 --- a/modules/openthread/CMakeLists.txt +++ b/modules/openthread/CMakeLists.txt @@ -28,6 +28,12 @@ elseif(CONFIG_OPENTHREAD_MTD) set(OT_MTD ON CACHE BOOL "Enable MTD" FORCE) endif() +if(CONFIG_OPENTHREAD_ANYCAST_LOCATOR) + set(OT_ANYCAST_LOCATOR ON CACHE BOOL "Enable anycast locator" FORCE) +else() + set(OT_ANYCAST_LOCATOR OFF CACHE BOOL "Enable anycast locator" FORCE) +endif() + if(CONFIG_ASSERT) set(OT_ASSERT ON CACHE BOOL "Enable assert function OT_ASSERT()" FORCE) else() @@ -40,6 +46,18 @@ else() set(OT_BACKBONE_ROUTER OFF CACHE BOOL "Enable backbone router functionality" FORCE) endif() +if(CONFIG_OPENTHREAD_BACKBONE_ROUTER_DUA_NDPROXYING) + set(OT_BACKBONE_ROUTER_DUA_NDPROXYING ON CACHE BOOL "Enable BBR DUA ND Proxy support" FORCE) +else() + set(OT_BACKBONE_ROUTER_DUA_NDPROXYING OFF CACHE BOOL "Enable BBR DUA ND Proxy support" FORCE) +endif() + +if(CONFIG_OPENTHREAD_BACKBONE_ROUTER_MULTICAST_ROUTING) + set(OT_BACKBONE_ROUTER_MULTICAST_ROUTING ON CACHE BOOL "Enable BBR MR support" FORCE) +else() + set(OT_BACKBONE_ROUTER_MULTICAST_ROUTING OFF CACHE BOOL "Enable BBR MR support" FORCE) +endif() + if(CONFIG_OPENTHREAD_BORDER_AGENT) set(OT_BORDER_AGENT ON CACHE BOOL "Enable Border Agent" FORCE) else() @@ -52,40 +70,16 @@ else() set(OT_BORDER_ROUTER OFF CACHE BOOL "Enable Border Router" FORCE) endif() -if(CONFIG_OPENTHREAD_BORDER_ROUTING_NAT64) - set(OT_BORDER_ROUTING_NAT64 ON CACHE BOOL "Enable border routing NAT64 support" FORCE) +if(CONFIG_OPENTHREAD_BORDER_ROUTING) + set(OT_BORDER_ROUTING ON CACHE BOOL "Enable Border routing" FORCE) else() - set(OT_BORDER_ROUTING_NAT64 OFF CACHE BOOL "Enable border routing NAT64 support" FORCE) + set(OT_BORDER_ROUTING OFF CACHE BOOL "Enable Border routing" FORCE) endif() -if(CONFIG_OPENTHREAD_COAP) - set(OT_COAP ON CACHE BOOL "Enable CoAP API" FORCE) +if(CONFIG_OPENTHREAD_BORDER_ROUTING_COUNTERS) + set(OT_BORDER_ROUTING_COUNTERS ON CACHE BOOL "Enable Border routing counters" FORCE) else() - set(OT_COAP OFF CACHE BOOL "Enable CoAP API" FORCE) -endif() - -if(CONFIG_OPENTHREAD_COAPS) - set(OT_COAPS ON CACHE BOOL "Enable secure CoAP API support" FORCE) -else() - set(OT_COAPS OFF CACHE BOOL "Enable secure CoAP API support" FORCE) -endif() - -if(CONFIG_OPENTHREAD_COAP_BLOCK) - set(OT_COAP_BLOCK ON CACHE BOOL "Enable CoAP Block-wise option support" FORCE) -else() - set(OT_COAP_BLOCK OFF CACHE BOOL "Enable CoAP Block-wise option support" FORCE) -endif() - -if(CONFIG_OPENTHREAD_COAP_OBSERVE) - set(OT_COAP_OBSERVE ON CACHE BOOL "Enable CoAP Observe option support" FORCE) -else() - set(OT_COAP_OBSERVE OFF CACHE BOOL "Enable CoAP Observe option support" FORCE) -endif() - -if(CONFIG_OPENTHREAD_COMMISSIONER) - set(OT_COMMISSIONER ON CACHE BOOL "Enable Commissioner" FORCE) -else() - set(OT_COMMISSIONER OFF CACHE BOOL "Enable Commissioner" FORCE) + set(OT_BORDER_ROUTING_COUNTERS OFF CACHE BOOL "Enable Border routing counters" FORCE) endif() if(CONFIG_OPENTHREAD_CHANNEL_MANAGER) @@ -106,25 +100,55 @@ else() set(OT_CHILD_SUPERVISION OFF CACHE BOOL "Enable child supervision support" FORCE) endif() +if(CONFIG_OPENTHREAD_COAP) + set(OT_COAP ON CACHE BOOL "Enable CoAP API" FORCE) +else() + set(OT_COAP OFF CACHE BOOL "Enable CoAP API" FORCE) +endif() + +if(CONFIG_OPENTHREAD_COAP_BLOCK) + set(OT_COAP_BLOCK ON CACHE BOOL "Enable CoAP Block-wise option support" FORCE) +else() + set(OT_COAP_BLOCK OFF CACHE BOOL "Enable CoAP Block-wise option support" FORCE) +endif() + +if(CONFIG_OPENTHREAD_COAP_OBSERVE) + set(OT_COAP_OBSERVE ON CACHE BOOL "Enable CoAP Observe option support" FORCE) +else() + set(OT_COAP_OBSERVE OFF CACHE BOOL "Enable CoAP Observe option support" FORCE) +endif() + +if(CONFIG_OPENTHREAD_COAPS) + set(OT_COAPS ON CACHE BOOL "Enable secure CoAP API support" FORCE) +else() + set(OT_COAPS OFF CACHE BOOL "Enable secure CoAP API support" FORCE) +endif() + +if(CONFIG_OPENTHREAD_COMMISSIONER) + set(OT_COMMISSIONER ON CACHE BOOL "Enable Commissioner" FORCE) +else() + set(OT_COMMISSIONER OFF CACHE BOOL "Enable Commissioner" FORCE) +endif() + if(CONFIG_OPENTHREAD_CSL_AUTO_SYNC) set(OT_CSL_AUTO_SYNC ON CACHE BOOL "Enable csl autosync" FORCE) else() set(OT_CSL_AUTO_SYNC OFF CACHE BOOL "Enable csl autosync" FORCE) endif() -if(CONFIG_OPENTHREAD_CSL_RECEIVER) - set(OT_CSL_RECEIVER ON CACHE BOOL "Enable CSL receiver feature for Thread 1.2" FORCE) -else() - set(OT_CSL_RECEIVER OFF CACHE BOOL "Enable CSL receiver feature for Thread 1.2" FORCE) -endif() - if(CONFIG_OPENTHREAD_CSL_DEBUG) set(OT_CSL_DEBUG ON CACHE BOOL "Enable CSL debug" FORCE) else() set(OT_CSL_DEBUG OFF CACHE BOOL "Enable CSL debug" FORCE) endif() -if(CONFIG_OPENTHREAD_DATSET_UPDATER) +if(CONFIG_OPENTHREAD_CSL_RECEIVER) + set(OT_CSL_RECEIVER ON CACHE BOOL "Enable CSL receiver feature for Thread 1.2" FORCE) +else() + set(OT_CSL_RECEIVER OFF CACHE BOOL "Enable CSL receiver feature for Thread 1.2" FORCE) +endif() + +if(CONFIG_OPENTHREAD_DATASET_UPDATER) set(OT_DATASET_UPDATER ON CACHE BOOL "Enable Dataset updater" FORCE) else() set(OT_DATASET_UPDATER OFF CACHE BOOL "Enable Dataset updater" FORCE) @@ -178,24 +202,36 @@ else() set(OT_ECDSA OFF CACHE BOOL "Enable ECDSA support" FORCE) endif() -if(CONFIG_OPENTHREAD_EXCLUDE_TCPLP_LIB) - set(OT_EXCLUDE_TCPLP_LIB ON CACHE BOOL "Exclude TCPlp library from build" FORCE) -else() - set(OT_EXCLUDE_TCPLP_LIB OFF CACHE BOOL "Exclude TCPlp library from build" FORCE) -endif() - if(CONFIG_OPENTHREAD_ENABLE_SERVICE) set(OT_SERVICE ON CACHE BOOL "Enable Service entries in Thread Network Data" FORCE) else() set(OT_SERVICE OFF CACHE BOOL "Enable Service entries in Thread Network Data" FORCE) endif() +if(CONFIG_OPENTHREAD_EXCLUDE_TCPLP_LIB) + set(OT_EXCLUDE_TCPLP_LIB ON CACHE BOOL "Exclude TCPlp library from build" FORCE) +else() + set(OT_EXCLUDE_TCPLP_LIB OFF CACHE BOOL "Exclude TCPlp library from build" FORCE) +endif() + if(CONFIG_OPENTHREAD_EXTERNAL_HEAP) set(OT_EXTERNAL_HEAP ON CACHE BOOL "Enable external heap support" FORCE) else() set(OT_EXTERNAL_HEAP OFF CACHE BOOL "Enable external heap support" FORCE) endif() +if(CONFIG_OPENTHREAD_FIREWALL) + set(OT_FIREWALL ON CACHE BOOL "Enable firewall" FORCE) +else() + set(OT_FIREWALL OFF CACHE BOOL "Enable firewall" FORCE) +endif() + +if(CONFIG_OPENTHREAD_FULL_LOGS) + set(OT_FULL_LOGS ON CACHE BOOL "Enable full logs" FORCE) +else() + set(OT_FULL_LOGS OFF CACHE BOOL "Enable full logs" FORCE) +endif() + if(CONFIG_OPENTHREAD_HISTORY_TRACKER) set(OT_HISTORY_TRACKER ON CACHE BOOL "Enable history tracker support." FORCE) else() @@ -250,6 +286,12 @@ else() set(OT_MAC_FILTER OFF CACHE BOOL "Enable MAC filter support" FORCE) endif() +if(CONFIG_OPENTHREAD_MESSAGE_USE_HEAP) + set(OT_MESSAGE_USE_HEAP ON CACHE BOOL "Enable heap allocator for message buffers" FORCE) +else() + set(OT_MESSAGE_USE_HEAP OFF CACHE BOOL "Enable heap allocator for message buffers" FORCE) +endif() + if(CONFIG_OPENTHREAD_MLE_LONG_ROUTES) set(OT_MLE_LONG_ROUTES ON CACHE BOOL "Enable MLE long routes support (Experimental)" FORCE) else() @@ -274,6 +316,18 @@ else() set(OT_MULTIPLE_INSTANCE OFF CACHE BOOL "Enable multiple instances" FORCE) endif() +if(CONFIG_OPENTHREAD_NAT64_BORDER_ROUTING) + set(OT_NAT64_BORDER_ROUTING ON CACHE BOOL "Enable border routing NAT64 support" FORCE) +else() + set(OT_NAT64_BORDER_ROUTING OFF CACHE BOOL "Enable border routing NAT64 support" FORCE) +endif() + +if(CONFIG_OPENTHREAD_NAT64_TRANSLATOR) + set(OT_NAT64_TRANSLATOR ON CACHE BOOL "Enable NAT64 translator" FORCE) +else() + set(OT_NAT64_TRANSLATOR OFF CACHE BOOL "Enable NAT64 translator" FORCE) +endif() + if(CONFIG_OPENTHREAD_NEIGHBOR_DISCOVERY_AGENT) set(OT_NEIGHBOR_DISCOVERY_AGENT ON CACHE BOOL "Enable neighbor discovery agent support" FORCE) else() @@ -286,6 +340,12 @@ else() set(OT_NETDATA_PUBLISHER OFF CACHE BOOL "Enable Thread Network Data publisher" FORCE) endif() +if(CONFIG_OPENTHREAD_OTNS) + set(OT_OTNS ON CACHE BOOL "Enable OTNS support" FORCE) +else() + set(OT_OTNS OFF CACHE BOOL "Enable OTNS support" FORCE) +endif() + if(CONFIG_OPENTHREAD_PING_SENDER) set(OT_PING_SENDER ON CACHE BOOL "Enable ping sender support" FORCE) else() @@ -304,6 +364,12 @@ else() set(OT_PLATFORM_UDP OFF CACHE BOOL "Enable platform UDP support" FORCE) endif() +if(CONFIG_OPENTHREAD_RADIO_LINK_IEEE_802_15_4_ENABLE) + set(OT_15_4 ON CACHE BOOL "Enable 802.15.4 radio" FORCE) +else() + set(OT_15_4 OFF CACHE BOOL "Enable 802.15.4 radio" FORCE) +endif() + if(CONFIG_OPENTHREAD_RAW) set(OT_LINK_RAW ON CACHE BOOL "Enable Link Raw" FORCE) else() @@ -346,16 +412,22 @@ else() set(OT_SRP_SERVER OFF CACHE BOOL "Enable SRP Server support" FORCE) endif() +if(CONFIG_OPENTHREAD_TIME_SYNC) + set(OT_TIME_SYNC ON CACHE BOOL "Enable the time synchronization service feature" FORCE) +else() + set(OT_TIME_SYNC OFF CACHE BOOL "Enable the time synchronization service feature" FORCE) +endif() + if(CONFIG_OPENTHREAD_TREL) set(OT_TREL ON CACHE BOOL "Enable TREL radio link for Thread over Infrastructure feature" FORCE) else() set(OT_TREL OFF CACHE BOOL "Enable TREL radio link for Thread over Infrastructure feature" FORCE) endif() -if(CONFIG_OPENTHREAD_TIME_SYNC) - set(OT_TIME_SYNC ON CACHE BOOL "Enable the time synchronization service feature" FORCE) +if(CONFIG_OPENTHREAD_TX_BEACON_PAYLOAD) + set(OT_TX_BEACON_PAYLOAD ON CACHE BOOL "Enable tx beacon payload support" FORCE) else() - set(OT_TIME_SYNC OFF CACHE BOOL "Enable the time synchronization service feature" FORCE) + set(OT_TX_BEACON_PAYLOAD OFF CACHE BOOL "Enable tx beacon payload support" FORCE) endif() if(CONFIG_OPENTHREAD_UDP_FORWARD) @@ -370,18 +442,6 @@ else() set(OT_UPTIME OFF CACHE BOOL "Enable support for tracking OpenThread instance's uptime" FORCE) endif() -if(CONFIG_OPENTHREAD_OTNS) - set(OT_OTNS ON CACHE BOOL "Enable OTNS support" FORCE) -else() - set(OT_OTNS OFF CACHE BOOL "Enable OTNS support" FORCE) -endif() - -if(CONFIG_OPENTHREAD_FULL_LOGS) - set(OT_FULL_LOGS ON CACHE BOOL "Enable full logs" FORCE) -else() - set(OT_FULL_LOGS OFF CACHE BOOL "Enable full logs" FORCE) -endif() - if(CONFIG_OPENTHREAD_COPROCESSOR_VENDOR_HOOK_SOURCE) set(OT_NCP_VENDOR_HOOK_SOURCE ${CONFIG_OPENTHREAD_COPROCESSOR_VENDOR_HOOK_SOURCE} CACHE STRING "NCP vendor hook source file name" FORCE) endif() diff --git a/modules/openthread/Kconfig.features b/modules/openthread/Kconfig.features index d5df5f4cfc8..643d731fb4e 100644 --- a/modules/openthread/Kconfig.features +++ b/modules/openthread/Kconfig.features @@ -24,33 +24,55 @@ config OPENTHREAD_THREAD_VERSION default "1.3" if OPENTHREAD_THREAD_VERSION_1_3 default "unknown" +config OPENTHREAD_ANYCAST_LOCATOR + bool "Anycast locator support" + config OPENTHREAD_BACKBONE_ROUTER bool "Backbone Router functionality" +config OPENTHREAD_BACKBONE_ROUTER_DUA_NDPROXYING + bool "BBR DUA ND Proxy support" + +config OPENTHREAD_BACKBONE_ROUTER_MULTICAST_ROUTING + bool "BBR MR support" + config OPENTHREAD_BORDER_AGENT bool "Border Agent support" config OPENTHREAD_BORDER_ROUTER bool "Border Router support" -config OPENTHREAD_BORDER_ROUTING_NAT64 - bool "Border routing NAT64 support" +config OPENTHREAD_BORDER_ROUTING + bool "Border routing support" + +config OPENTHREAD_BORDER_ROUTING_COUNTERS + bool "Border routing counters support" + +config OPENTHREAD_CHANNEL_MONITOR + bool "Channel monitor support" + +config OPENTHREAD_CHANNEL_MANAGER + bool "Channel manager support" + depends on OPENTHREAD_CHANNEL_MONITOR + +config OPENTHREAD_CHILD_SUPERVISION + bool "Child supervision support" config OPENTHREAD_COAP bool "OpenThread CoAP support" help Enable CoAP API for the application with use of OpenThread stack -config OPENTHREAD_COAPS - bool "Secure CoAP API support" - depends on OPENTHREAD_COAP - config OPENTHREAD_COAP_BLOCK bool "CoAP Block-wise option support" config OPENTHREAD_COAP_OBSERVE bool "CoAP Observe option support" +config OPENTHREAD_COAPS + bool "Secure CoAP API support" + depends on OPENTHREAD_COAP + config OPENTHREAD_COMMISSIONER bool "Commissioner functions support" help @@ -59,21 +81,17 @@ config OPENTHREAD_COMMISSIONER mbedTLS heap than the default value. A minimum recommended value of CONFIG_MBEDTLS_HEAP_SIZE for the commissioning is 10KB. -config OPENTHREAD_CHANNEL_MANAGER - bool "Channel manager support" - depends on OPENTHREAD_CHANNEL_MONITOR - -config OPENTHREAD_CHANNEL_MONITOR - bool "Channel monitor support" - -config OPENTHREAD_CHILD_SUPERVISION - bool "Child supervision support" +config OPENTHREAD_CSL_DEBUG + bool "CSL debugging" config OPENTHREAD_CSL_RECEIVER bool "CSL Receiver support" help Enable CSL Receiver support for Thread 1.2 +config OPENTHREAD_DATASET_UPDATER + bool "Dataset updater" + config OPENTHREAD_DHCP6_CLIENT bool "DHCPv6 client support" @@ -99,18 +117,26 @@ config OPENTHREAD_DUA help Enable Domain Unicast Address feature for Thread 1.2 -config OPENTHREAD_LOG_LEVEL_DYNAMIC - bool "Dynamic log level control" - config OPENTHREAD_ECDSA bool "ECDSA support" +config OPENTHREAD_ENABLE_SERVICE + bool "Service support" + help + Enable Thread Services capability in OpenThread stack + config OPENTHREAD_EXCLUDE_TCPLP_LIB bool "Exclude TCPlp library from build" config OPENTHREAD_EXTERNAL_HEAP bool "External heap support" +config OPENTHREAD_FIREWALL + bool "Firewall support" + +config OPENTHREAD_FULL_LOGS + bool "OpenThread full logs" + config OPENTHREAD_IP6_FRAGM bool "IPv6 fragmentation support" @@ -128,12 +154,21 @@ config OPENTHREAD_JOINER config OPENTHREAD_LEGACY bool "Legacy network support" -config OPENTHREAD_RAW - bool "Raw Link support" +config OPENTHREAD_LINK_METRICS_INITIATOR + bool "Link Metrics initiator" + +config OPENTHREAD_LINK_METRICS_SUBJECT + bool "Link Metrics subject" + +config OPENTHREAD_LOG_LEVEL_DYNAMIC + bool "Dynamic log level control" config OPENTHREAD_MAC_FILTER bool "MAC filter support" +config OPENTHREAD_MESSAGE_USE_HEAP + bool "Heap allocator for message buffers" + config OPENTHREAD_MLE_LONG_ROUTES bool "MLE long routes extension (experimental)" help @@ -150,30 +185,40 @@ config OPENTHREAD_MTD_NETDIAG config OPENTHREAD_MULTIPLE_INSTANCE bool "OpenThread multiple instances" +config OPENTHREAD_NAT64_BORDER_ROUTING + bool "Border routing NAT64 support" + +config OPENTHREAD_NAT64_TRANSLATOR + bool "NAT64 translator support" + config OPENTHREAD_NEIGHBOR_DISCOVERY_AGENT bool "Neighbor discovery agent support" config OPENTHREAD_NETDATA_PUBLISHER bool "Thread Network Data publisher" +config OPENTHREAD_OTNS + bool "OTNS support" + config OPENTHREAD_PING_SENDER bool "Ping sender support" +config OPENTHREAD_PLATFORM_NETIF + bool "Platform netif support" + config OPENTHREAD_PLATFORM_UDP bool "Platform UDP support" -config OPENTHREAD_PLATFORM_NETIF - bool "Platform netif support" +config OPENTHREAD_RAW + bool "Raw Link support" config OPENTHREAD_REFERENCE_DEVICE bool "Reference Device support" help Enable Thread Certification reference device support in OpenThread stack -config OPENTHREAD_ENABLE_SERVICE - bool "Service support" - help - Enable Thread Services capability in OpenThread stack +config OPENTHREAD_SETTINGS_RAM + bool "Volatile-only storage of settings" config OPENTHREAD_SLAAC bool "SLAAC support" @@ -181,30 +226,6 @@ config OPENTHREAD_SLAAC config OPENTHREAD_SNTP_CLIENT bool "SNTP Client support" -config OPENTHREAD_TIME_SYNC - bool "The time synchronization service feature" - -config OPENTHREAD_TREL - bool "TREL radio link for Thread over Infrastructure feature" - -config OPENTHREAD_UDP_FORWARD - bool "UDP forward support" - -config OPENTHREAD_SETTINGS_RAM - bool "Volatile-only storage of settings" - -config OPENTHREAD_OTNS - bool "OTNS support" - -config OPENTHREAD_FULL_LOGS - bool "OpenThread full logs" - -config OPENTHREAD_LINK_METRICS_INITIATOR - bool "Link Metrics initiator" - -config OPENTHREAD_LINK_METRICS_SUBJECT - bool "Link Metrics subject" - config OPENTHREAD_SRP_CLIENT bool "SRP Client support" select OPENTHREAD_ECDSA @@ -214,11 +235,17 @@ config OPENTHREAD_SRP_SERVER select OPENTHREAD_NETDATA_PUBLISHER select OPENTHREAD_ECDSA -config OPENTHREAD_CSL_DEBUG - bool "CSL debugging" +config OPENTHREAD_TIME_SYNC + bool "The time synchronization service feature" -config OPENTHREAD_DATSET_UPDATER - bool "Dataset updater" +config OPENTHREAD_TREL + bool "TREL radio link for Thread over Infrastructure feature" + +config OPENTHREAD_TX_BEACON_PAYLOAD + bool "TX beacon payload support" + +config OPENTHREAD_UDP_FORWARD + bool "UDP forward support" config OPENTHREAD_UPTIME bool "Openthread uptime counter" diff --git a/west.yml b/west.yml index 92dead440ca..08ef6fe7bbd 100644 --- a/west.yml +++ b/west.yml @@ -203,7 +203,7 @@ manifest: revision: aedcc262f93bbb1b0c2f58026911575729b7465c path: modules/lib/open-amp - name: openthread - revision: 3e138d3f5d549894b79cdc8567ed1f9215281344 + revision: a1979fdd8ed756468719cc4921b04a57efcf9f15 path: modules/lib/openthread - name: picolibc path: modules/lib/picolibc