mirror of
https://github.com/espressif/openthread.git
synced 2026-06-06 05:24:51 +00:00
[ncp] adjust defining NCP handlers (#2829)
This commit is contained in:
@@ -63,6 +63,7 @@
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_ftd.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_mtd.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_radio.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_dispatcher.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_buffer.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_spi.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\spinel.c" />
|
||||
|
||||
@@ -30,6 +30,9 @@
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_radio.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_dispatcher.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\ncp\ncp_buffer.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
|
||||
@@ -64,6 +64,7 @@
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_ftd.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_mtd.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_radio.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_dispatcher.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_buffer.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\ncp_uart.cpp" />
|
||||
<ClCompile Include="..\..\src\ncp\spinel.c" />
|
||||
|
||||
@@ -33,6 +33,9 @@
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_radio.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\ncp\ncp_base_dispatcher.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\ncp\ncp_buffer.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
|
||||
@@ -76,6 +76,7 @@ COMMON_SOURCES = \
|
||||
ncp_base_ftd.cpp \
|
||||
ncp_base_mtd.cpp \
|
||||
ncp_base_radio.cpp \
|
||||
ncp_base_dispatcher.cpp \
|
||||
ncp_buffer.cpp \
|
||||
ncp_buffer.hpp \
|
||||
ncp_spi.cpp \
|
||||
|
||||
+46
-475
@@ -49,395 +49,6 @@
|
||||
namespace ot {
|
||||
namespace Ncp {
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// MARK: Property Handler Jump Tables and Methods
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
#define NCP_GET_PROP_HANDLER_ENTRY(name) \
|
||||
{ \
|
||||
SPINEL_PROP_##name, &NcpBase::GetPropertyHandler_##name \
|
||||
}
|
||||
|
||||
const NcpBase::PropertyHandlerEntry NcpBase::mGetPropertyHandlerTable[] = {
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CAPS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(DEBUG_TEST_ASSERT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(DEBUG_TEST_WATCHDOG),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(DEBUG_NCP_LOG_LEVEL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(HWADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(HOST_POWER_STATE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(INTERFACE_COUNT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(INTERFACE_TYPE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(LAST_STATUS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(LOCK),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PHY_ENABLED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PHY_CHAN),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PHY_RX_SENSITIVITY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PHY_TX_POWER),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(POWER_STATE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MCU_POWER_STATE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PROTOCOL_VERSION),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_15_4_PANID),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_15_4_LADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_15_4_SADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_RAW_STREAM_ENABLED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_PROMISCUOUS_MODE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NCP_VERSION),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(UNSOL_UPDATE_FILTER),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(UNSOL_UPDATE_LIST),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(VENDOR_ID),
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_DATA_POLL_PERIOD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_EXTENDED_ADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_SCAN_STATE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_SCAN_MASK),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_SCAN_PERIOD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_CCA_FAILURE_RATE),
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_BLACKLIST),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_BLACKLIST_ENABLED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_FIXED_RSS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_WHITELIST),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_WHITELIST_ENABLED),
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MSG_BUFFER_COUNTERS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PHY_CHAN_SUPPORTED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PHY_FREQ),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(PHY_RSSI),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_IF_UP),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_KEY_SEQUENCE_COUNTER),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_KEY_SWITCH_GUARDTIME),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_MASTER_KEY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_NETWORK_NAME),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_PARTITION_ID),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_REQUIRE_JOIN_EXISTING),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_ROLE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_SAVED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_STACK_UP),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_XPANID),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ALLOW_LOCAL_NET_DATA_CHANGE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ASSISTING_PORTS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_CHILD_TIMEOUT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_DISCOVERY_SCAN_JOINER_FLAG),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_DISCOVERY_SCAN_ENABLE_FILTERING),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_DISCOVERY_SCAN_PANID),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_LEADER_ADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_LEADER_NETWORK_DATA),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_LEADER_RID),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_MODE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_NEIGHBOR_TABLE),
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_NEIGHBOR_TABLE_ERROR_RATES),
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_NETWORK_DATA_VERSION),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_OFF_MESH_ROUTES),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ON_MESH_NETS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_PARENT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_RLOC16),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_RLOC16_DEBUG_PASSTHRU),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_STABLE_LEADER_NETWORK_DATA),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_STABLE_NETWORK_DATA_VERSION),
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_NETWORK_DATA),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_STABLE_NETWORK_DATA),
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ACTIVE_DATASET),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_PENDING_DATASET),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_ADDRESS_TABLE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_ICMP_PING_OFFLOAD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_ICMP_PING_OFFLOAD_MODE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_LL_ADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_ML_PREFIX),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_ML_ADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_MULTICAST_ADDRESS_TABLE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(IPV6_ROUTE_TABLE),
|
||||
#if OPENTHREAD_ENABLE_JAM_DETECTION
|
||||
NCP_GET_PROP_HANDLER_ENTRY(JAM_DETECT_ENABLE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(JAM_DETECTED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(JAM_DETECT_RSSI_THRESHOLD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(JAM_DETECT_WINDOW),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(JAM_DETECT_BUSY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(JAM_DETECT_HISTORY_BITMAP),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MONITOR
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MONITOR_SAMPLE_INTERVAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MONITOR_RSSI_THRESHOLD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MONITOR_SAMPLE_WINDOW),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MONITOR_SAMPLE_COUNT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MONITOR_CHANNEL_OCCUPANCY),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_LEGACY
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NEST_LEGACY_ULA_PREFIX),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NEST_LEGACY_LAST_NODE_JOINED),
|
||||
#endif
|
||||
// MAC counters
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_ACK_REQ),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_ACKED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_NO_ACK_REQ),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_DATA),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_DATA_POLL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_BEACON),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_BEACON_REQ),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_OTHER),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_RETRY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_UNICAST),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_PKT_BROADCAST),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_ERR_CCA),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_ERR_ABORT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_DATA),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_DATA_POLL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_BEACON),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_BEACON_REQ),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_OTHER),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_FILT_WL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_FILT_DA),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_UNICAST),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_BROADCAST),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_ERR_EMPTY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_ERR_UKWN_NBR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_ERR_NVLD_SADDR),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_ERR_SECURITY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_ERR_BAD_FCS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_ERR_OTHER),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_PKT_DUP),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_ALL_MAC_COUNTERS),
|
||||
// NCP counters
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_IP_SEC_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_IP_INSEC_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_IP_DROPPED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_IP_SEC_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_IP_INSEC_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_IP_DROPPED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_TX_SPINEL_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_SPINEL_TOTAL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_RX_SPINEL_ERR),
|
||||
// IP counters
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_IP_TX_SUCCESS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_IP_RX_SUCCESS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_IP_TX_FAILURE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CNTR_IP_RX_FAILURE),
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_NETWORK_TIME),
|
||||
#endif
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
|
||||
#if OPENTHREAD_FTD
|
||||
NCP_GET_PROP_HANDLER_ENTRY(NET_PSKC),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_LEADER_WEIGHT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_CHILD_TABLE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_CHILD_TABLE_ADDRESSES),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ROUTER_TABLE),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_LOCAL_LEADER_WEIGHT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ROUTER_ROLE_ENABLED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_CHILD_COUNT_MAX),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ROUTER_UPGRADE_THRESHOLD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ROUTER_DOWNGRADE_THRESHOLD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_CONTEXT_REUSE_DELAY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_NETWORK_ID_TIMEOUT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ROUTER_SELECTION_JITTER),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_PREFERRED_ROUTER_ID),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_ADDRESS_CACHE_TABLE),
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_COMMISSIONER_ENABLED),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_TMF_PROXY
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_TMF_PROXY_ENABLED),
|
||||
#endif
|
||||
#if OPENTHREAD_CONFIG_ENABLE_STEERING_DATA_SET_OOB
|
||||
NCP_GET_PROP_HANDLER_ENTRY(THREAD_STEERING_DATA),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MANAGER
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_NEW_CHANNEL),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_DELAY),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_SUPPORTED_CHANNELS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_FAVORED_CHANNELS),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_CHANNEL_SELECT),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_AUTO_SELECT_ENABLED),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_AUTO_SELECT_INTERVAL),
|
||||
#endif
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
NCP_GET_PROP_HANDLER_ENTRY(TIME_SYNC_PERIOD),
|
||||
NCP_GET_PROP_HANDLER_ENTRY(TIME_SYNC_XTAL_THRESHOLD),
|
||||
#endif
|
||||
|
||||
#endif // OPENTHREAD_FTD
|
||||
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
NCP_GET_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_ENABLED),
|
||||
#endif
|
||||
};
|
||||
|
||||
#define NCP_SET_PROP_HANDLER_ENTRY(name) \
|
||||
{ \
|
||||
SPINEL_PROP_##name, &NcpBase::SetPropertyHandler_##name \
|
||||
}
|
||||
|
||||
const NcpBase::PropertyHandlerEntry NcpBase::mSetPropertyHandlerTable[] = {
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_15_4_SADDR),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_ENABLED),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_SHORT_ADDRESSES),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_EXTENDED_ADDRESSES),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(PHY_ENABLED),
|
||||
#endif // OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
NCP_SET_PROP_HANDLER_ENTRY(POWER_STATE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MCU_POWER_STATE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(UNSOL_UPDATE_FILTER),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(PHY_TX_POWER),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(PHY_CHAN),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_PROMISCUOUS_MODE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_15_4_PANID),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_15_4_LADDR),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_RAW_STREAM_ENABLED),
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_DATA_POLL_PERIOD),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_SCAN_MASK),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_SCAN_STATE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_SCAN_PERIOD),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_IF_UP),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_STACK_UP),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_ROLE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_NETWORK_NAME),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_XPANID),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_MASTER_KEY),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_KEY_SEQUENCE_COUNTER),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_KEY_SWITCH_GUARDTIME),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_ASSISTING_PORTS),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(STREAM_NET_INSECURE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(STREAM_NET),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(IPV6_ML_PREFIX),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(IPV6_ICMP_PING_OFFLOAD),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(IPV6_ICMP_PING_OFFLOAD_MODE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_RLOC16_DEBUG_PASSTHRU),
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_WHITELIST),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_WHITELIST_ENABLED),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_BLACKLIST),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_BLACKLIST_ENABLED),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(MAC_FIXED_RSS),
|
||||
#endif
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_MODE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_REQUIRE_JOIN_EXISTING),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(DEBUG_NCP_LOG_LEVEL),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_DISCOVERY_SCAN_JOINER_FLAG),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_DISCOVERY_SCAN_ENABLE_FILTERING),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_DISCOVERY_SCAN_PANID),
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_ALLOW_LOCAL_NET_DATA_CHANGE),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_JAM_DETECTION
|
||||
NCP_SET_PROP_HANDLER_ENTRY(JAM_DETECT_ENABLE),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(JAM_DETECT_RSSI_THRESHOLD),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(JAM_DETECT_WINDOW),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(JAM_DETECT_BUSY),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_LEGACY
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NEST_LEGACY_ULA_PREFIX),
|
||||
#endif
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CNTR_RESET),
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
#if OPENTHREAD_FTD
|
||||
NCP_SET_PROP_HANDLER_ENTRY(NET_PSKC),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_CHILD_TIMEOUT),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_NETWORK_ID_TIMEOUT),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_LOCAL_LEADER_WEIGHT),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_ROUTER_ROLE_ENABLED),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_CHILD_COUNT_MAX),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_ROUTER_UPGRADE_THRESHOLD),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_ROUTER_DOWNGRADE_THRESHOLD),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_CONTEXT_REUSE_DELAY),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_ROUTER_SELECTION_JITTER),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_PREFERRED_ROUTER_ID),
|
||||
#if OPENTHREAD_CONFIG_ENABLE_STEERING_DATA_SET_OOB
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_STEERING_DATA),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_TMF_PROXY
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_TMF_PROXY_ENABLED),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_TMF_PROXY_STREAM),
|
||||
#endif
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_ACTIVE_DATASET),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_PENDING_DATASET),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_MGMT_ACTIVE_DATASET),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(THREAD_MGMT_PENDING_DATASET),
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MANAGER
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_NEW_CHANNEL),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_DELAY),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_SUPPORTED_CHANNELS),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_FAVORED_CHANNELS),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_CHANNEL_SELECT),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_AUTO_SELECT_ENABLED),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(CHANNEL_MANAGER_AUTO_SELECT_INTERVAL),
|
||||
#endif
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
NCP_SET_PROP_HANDLER_ENTRY(TIME_SYNC_PERIOD),
|
||||
NCP_SET_PROP_HANDLER_ENTRY(TIME_SYNC_XTAL_THRESHOLD),
|
||||
#endif
|
||||
#endif // #if OPENTHREAD_FTD
|
||||
};
|
||||
|
||||
#define NCP_INSERT_PROP_HANDLER_ENTRY(name) \
|
||||
{ \
|
||||
SPINEL_PROP_##name, &NcpBase::InsertPropertyHandler_##name \
|
||||
}
|
||||
|
||||
const NcpBase::PropertyHandlerEntry NcpBase::mInsertPropertyHandlerTable[] = {
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(UNSOL_UPDATE_FILTER),
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_SHORT_ADDRESSES),
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_EXTENDED_ADDRESSES),
|
||||
#endif
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(IPV6_ADDRESS_TABLE),
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(IPV6_MULTICAST_ADDRESS_TABLE),
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(THREAD_ASSISTING_PORTS),
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(THREAD_OFF_MESH_ROUTES),
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(THREAD_ON_MESH_NETS),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(MAC_WHITELIST),
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(MAC_BLACKLIST),
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(MAC_FIXED_RSS),
|
||||
#endif
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
#if OPENTHREAD_FTD
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER
|
||||
NCP_INSERT_PROP_HANDLER_ENTRY(THREAD_JOINERS),
|
||||
#endif
|
||||
#endif // OPENTHREAD_FTD
|
||||
};
|
||||
|
||||
#define NCP_REMOVE_PROP_HANDLER_ENTRY(name) \
|
||||
{ \
|
||||
SPINEL_PROP_##name, &NcpBase::RemovePropertyHandler_##name \
|
||||
}
|
||||
|
||||
const NcpBase::PropertyHandlerEntry NcpBase::mRemovePropertyHandlerTable[] = {
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(UNSOL_UPDATE_FILTER),
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_SHORT_ADDRESSES),
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(MAC_SRC_MATCH_EXTENDED_ADDRESSES),
|
||||
#endif
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(IPV6_ADDRESS_TABLE),
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(IPV6_MULTICAST_ADDRESS_TABLE),
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(THREAD_OFF_MESH_ROUTES),
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(THREAD_ON_MESH_NETS),
|
||||
#endif
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(THREAD_ASSISTING_PORTS),
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(MAC_WHITELIST),
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(MAC_BLACKLIST),
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(MAC_FIXED_RSS),
|
||||
#endif
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
#if OPENTHREAD_FTD
|
||||
NCP_REMOVE_PROP_HANDLER_ENTRY(THREAD_ACTIVE_ROUTER_IDS),
|
||||
#endif
|
||||
};
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// MARK: Utility Functions
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -1320,46 +931,6 @@ exit:
|
||||
// MARK: Property Get/Set/Insert/Remove Commands
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindPropertyHandler(spinel_prop_key_t aKey,
|
||||
const PropertyHandlerEntry *aTableEntry,
|
||||
size_t aTableLen)
|
||||
{
|
||||
PropertyHandler handler = NULL;
|
||||
|
||||
while (aTableLen--)
|
||||
{
|
||||
if (aTableEntry->mPropKey == aKey)
|
||||
{
|
||||
handler = aTableEntry->mHandler;
|
||||
break;
|
||||
}
|
||||
|
||||
aTableEntry++;
|
||||
}
|
||||
|
||||
return handler;
|
||||
}
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindGetPropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
return FindPropertyHandler(aKey, mGetPropertyHandlerTable, OT_ARRAY_LENGTH(mGetPropertyHandlerTable));
|
||||
}
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindSetPropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
return FindPropertyHandler(aKey, mSetPropertyHandlerTable, OT_ARRAY_LENGTH(mSetPropertyHandlerTable));
|
||||
}
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindInsertPropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
return FindPropertyHandler(aKey, mInsertPropertyHandlerTable, OT_ARRAY_LENGTH(mInsertPropertyHandlerTable));
|
||||
}
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindRemovePropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
return FindPropertyHandler(aKey, mRemovePropertyHandlerTable, OT_ARRAY_LENGTH(mRemovePropertyHandlerTable));
|
||||
}
|
||||
|
||||
// Returns `true` and updates the `aError` on success.
|
||||
bool NcpBase::HandlePropertySetForSpecialProperties(uint8_t aHeader, spinel_prop_key_t aKey, otError &aError)
|
||||
{
|
||||
@@ -1372,21 +943,21 @@ bool NcpBase::HandlePropertySetForSpecialProperties(uint8_t aHeader, spinel_prop
|
||||
switch (aKey)
|
||||
{
|
||||
case SPINEL_PROP_HOST_POWER_STATE:
|
||||
ExitNow(aError = SetPropertyHandler_HOST_POWER_STATE(aHeader));
|
||||
ExitNow(aError = HandlePropertySet_SPINEL_PROP_HOST_POWER_STATE(aHeader));
|
||||
|
||||
#if OPENTHREAD_ENABLE_DIAG
|
||||
case SPINEL_PROP_NEST_STREAM_MFG:
|
||||
ExitNow(aError = SetPropertyHandler_NEST_STREAM_MFG(aHeader));
|
||||
ExitNow(aError = HandlePropertySet_SPINEL_PROP_NEST_STREAM_MFG(aHeader));
|
||||
#endif
|
||||
|
||||
#if OPENTHREAD_FTD && OPENTHREAD_ENABLE_COMMISSIONER
|
||||
case SPINEL_PROP_THREAD_COMMISSIONER_ENABLED:
|
||||
ExitNow(aError = SetPropertyHandler_THREAD_COMMISSIONER_ENABLED(aHeader));
|
||||
ExitNow(aError = HandlePropertySet_SPINEL_PROP_THREAD_COMMISSIONER_ENABLED(aHeader));
|
||||
#endif
|
||||
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
case SPINEL_PROP_STREAM_RAW:
|
||||
ExitNow(aError = SetPropertyHandler_STREAM_RAW(aHeader));
|
||||
ExitNow(aError = HandlePropertySet_SPINEL_PROP_STREAM_RAW(aHeader));
|
||||
#endif
|
||||
|
||||
default:
|
||||
@@ -1732,7 +1303,7 @@ exit:
|
||||
|
||||
#if OPENTHREAD_ENABLE_DIAG
|
||||
|
||||
otError NcpBase::SetPropertyHandler_NEST_STREAM_MFG(uint8_t aHeader)
|
||||
otError NcpBase::HandlePropertySet_SPINEL_PROP_NEST_STREAM_MFG(uint8_t aHeader)
|
||||
{
|
||||
const char *string = NULL;
|
||||
const char *output = NULL;
|
||||
@@ -1755,7 +1326,7 @@ exit:
|
||||
|
||||
#endif // OPENTHREAD_ENABLE_DIAG
|
||||
|
||||
otError NcpBase::GetPropertyHandler_PHY_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_ENABLED>(void)
|
||||
{
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
return mEncoder.WriteBool(otLinkRawIsEnabled(mInstance));
|
||||
@@ -1764,12 +1335,12 @@ otError NcpBase::GetPropertyHandler_PHY_ENABLED(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_PHY_CHAN(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_CHAN>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otLinkGetChannel(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_PHY_CHAN(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_PHY_CHAN>(void)
|
||||
{
|
||||
unsigned int channel = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -1795,13 +1366,13 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MAC_PROMISCUOUS_MODE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_PROMISCUOUS_MODE>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otPlatRadioGetPromiscuous(mInstance) ? SPINEL_MAC_PROMISCUOUS_MODE_FULL
|
||||
: SPINEL_MAC_PROMISCUOUS_MODE_OFF);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_PROMISCUOUS_MODE(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_PROMISCUOUS_MODE>(void)
|
||||
{
|
||||
uint8_t mode = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -1828,12 +1399,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MAC_15_4_PANID(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_15_4_PANID>(void)
|
||||
{
|
||||
return mEncoder.WriteUint16(otLinkGetPanId(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_15_4_PANID(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_15_4_PANID>(void)
|
||||
{
|
||||
uint16_t panid;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -1846,12 +1417,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MAC_15_4_LADDR(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_15_4_LADDR>(void)
|
||||
{
|
||||
return mEncoder.WriteEui64(*otLinkGetExtendedAddress(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_15_4_LADDR(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_15_4_LADDR>(void)
|
||||
{
|
||||
const otExtAddress *extAddress;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -1864,17 +1435,17 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MAC_15_4_SADDR(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_15_4_SADDR>(void)
|
||||
{
|
||||
return mEncoder.WriteUint16(otLinkGetShortAddress(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MAC_RAW_STREAM_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_RAW_STREAM_ENABLED>(void)
|
||||
{
|
||||
return mEncoder.WriteBool(mIsRawStreamEnabled);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_RAW_STREAM_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_RAW_STREAM_ENABLED>(void)
|
||||
{
|
||||
bool enabled = false;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -1903,7 +1474,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_UNSOL_UPDATE_FILTER(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_UNSOL_UPDATE_FILTER>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
uint8_t numEntries;
|
||||
@@ -1923,7 +1494,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_UNSOL_UPDATE_FILTER(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_UNSOL_UPDATE_FILTER>(void)
|
||||
{
|
||||
unsigned int propKey;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -1952,7 +1523,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::InsertPropertyHandler_UNSOL_UPDATE_FILTER(void)
|
||||
template <> otError NcpBase::HandlePropertyInsert<SPINEL_PROP_UNSOL_UPDATE_FILTER>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
unsigned int propKey;
|
||||
@@ -1965,7 +1536,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::RemovePropertyHandler_UNSOL_UPDATE_FILTER(void)
|
||||
template <> otError NcpBase::HandlePropertyRemove<SPINEL_PROP_UNSOL_UPDATE_FILTER>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
unsigned int propKey;
|
||||
@@ -1978,12 +1549,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_LAST_STATUS(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_LAST_STATUS>(void)
|
||||
{
|
||||
return mEncoder.WriteUintPacked(mLastStatus);
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_PROTOCOL_VERSION(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_PROTOCOL_VERSION>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
@@ -1994,17 +1565,17 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_INTERFACE_TYPE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_INTERFACE_TYPE>(void)
|
||||
{
|
||||
return mEncoder.WriteUintPacked(SPINEL_PROTOCOL_TYPE_THREAD);
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_VENDOR_ID(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_VENDOR_ID>(void)
|
||||
{
|
||||
return mEncoder.WriteUintPacked(0); // Vendor ID. Zero for unknown.
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CAPS(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CAPS>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
@@ -2081,19 +1652,19 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_NCP_VERSION(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_NCP_VERSION>(void)
|
||||
{
|
||||
return mEncoder.WriteUtf8(otGetVersionString());
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_INTERFACE_COUNT(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_INTERFACE_COUNT>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(1); // Only one interface for now
|
||||
}
|
||||
|
||||
#if OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MCU_POWER_STATE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MCU_POWER_STATE>(void)
|
||||
{
|
||||
spinel_mcu_power_state_t state = SPINEL_MCU_POWER_STATE_ON;
|
||||
|
||||
@@ -2115,7 +1686,7 @@ otError NcpBase::GetPropertyHandler_MCU_POWER_STATE(void)
|
||||
return mEncoder.WriteUint8(state);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MCU_POWER_STATE(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MCU_POWER_STATE>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otPlatMcuPowerState powerState;
|
||||
@@ -2170,29 +1741,29 @@ exit:
|
||||
|
||||
#else // OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MCU_POWER_STATE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MCU_POWER_STATE>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(SPINEL_MCU_POWER_STATE_ON);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MCU_POWER_STATE(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MCU_POWER_STATE>(void)
|
||||
{
|
||||
return OT_ERROR_DISABLED_FEATURE;
|
||||
}
|
||||
|
||||
#endif // OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL
|
||||
|
||||
otError NcpBase::GetPropertyHandler_POWER_STATE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_POWER_STATE>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(SPINEL_POWER_STATE_ONLINE);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_POWER_STATE(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_POWER_STATE>(void)
|
||||
{
|
||||
return OT_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_HWADDR(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_HWADDR>(void)
|
||||
{
|
||||
otExtAddress hwAddr;
|
||||
otPlatRadioGetIeeeEui64(mInstance, hwAddr.m8);
|
||||
@@ -2200,13 +1771,13 @@ otError NcpBase::GetPropertyHandler_HWADDR(void)
|
||||
return mEncoder.WriteEui64(hwAddr);
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_LOCK(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_LOCK>(void)
|
||||
{
|
||||
// TODO: Implement property lock (Needs API!)
|
||||
return mEncoder.OverwriteWithLastStatusError(SPINEL_STATUS_UNIMPLEMENTED);
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_HOST_POWER_STATE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_HOST_POWER_STATE>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(mHostPowerState);
|
||||
}
|
||||
@@ -2217,7 +1788,7 @@ otError NcpBase::GetPropertyHandler_HOST_POWER_STATE(void)
|
||||
// that host is sleep (b) the response is critical so if there is no spinel
|
||||
// buffer to prepare the response, the current spinel header is saved to
|
||||
// prepare and send the response as soon as buffer space becomes available.
|
||||
otError NcpBase::SetPropertyHandler_HOST_POWER_STATE(uint8_t aHeader)
|
||||
otError NcpBase::HandlePropertySet_SPINEL_PROP_HOST_POWER_STATE(uint8_t aHeader)
|
||||
{
|
||||
uint8_t powerState;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -2284,7 +1855,7 @@ otError NcpBase::SetPropertyHandler_HOST_POWER_STATE(uint8_t aHeader)
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_UNSOL_UPDATE_LIST(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_UNSOL_UPDATE_LIST>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
uint8_t numEntries;
|
||||
@@ -2304,12 +1875,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_PHY_RX_SENSITIVITY(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_RX_SENSITIVITY>(void)
|
||||
{
|
||||
return mEncoder.WriteInt8(otPlatRadioGetReceiveSensitivity(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_PHY_TX_POWER(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_TX_POWER>(void)
|
||||
{
|
||||
int8_t power;
|
||||
otError error;
|
||||
@@ -2328,7 +1899,7 @@ otError NcpBase::GetPropertyHandler_PHY_TX_POWER(void)
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_PHY_TX_POWER(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_PHY_TX_POWER>(void)
|
||||
{
|
||||
int8_t txPower = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -2340,7 +1911,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_DEBUG_TEST_ASSERT(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_DEBUG_TEST_ASSERT>(void)
|
||||
{
|
||||
assert(false);
|
||||
|
||||
@@ -2352,7 +1923,7 @@ otError NcpBase::GetPropertyHandler_DEBUG_TEST_ASSERT(void)
|
||||
OT_UNREACHABLE_CODE(return mEncoder.WriteBool(false);)
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_DEBUG_TEST_WATCHDOG(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_DEBUG_TEST_WATCHDOG>(void)
|
||||
{
|
||||
while (true)
|
||||
;
|
||||
@@ -2360,12 +1931,12 @@ otError NcpBase::GetPropertyHandler_DEBUG_TEST_WATCHDOG(void)
|
||||
OT_UNREACHABLE_CODE(return OT_ERROR_NONE;)
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_DEBUG_NCP_LOG_LEVEL(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_DEBUG_NCP_LOG_LEVEL>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(ConvertLogLevel(otGetDynamicLogLevel(mInstance)));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_DEBUG_NCP_LOG_LEVEL(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_DEBUG_NCP_LOG_LEVEL>(void)
|
||||
{
|
||||
uint8_t spinelNcpLogLevel = 0;
|
||||
otLogLevel logLevel;
|
||||
|
||||
+9
-352
@@ -60,11 +60,6 @@
|
||||
namespace ot {
|
||||
namespace Ncp {
|
||||
|
||||
#define NCP_GET_PROP_HANDLER(name) otError GetPropertyHandler_##name(void)
|
||||
#define NCP_SET_PROP_HANDLER(name) otError SetPropertyHandler_##name(void)
|
||||
#define NCP_INSERT_PROP_HANDLER(name) otError InsertPropertyHandler_##name(void)
|
||||
#define NCP_REMOVE_PROP_HANDLER(name) otError RemovePropertyHandler_##name(void)
|
||||
|
||||
class NcpBase
|
||||
{
|
||||
public:
|
||||
@@ -180,11 +175,15 @@ public:
|
||||
protected:
|
||||
typedef otError (NcpBase::*PropertyHandler)(void);
|
||||
|
||||
struct PropertyHandlerEntry
|
||||
{
|
||||
spinel_prop_key_t mPropKey;
|
||||
PropertyHandler mHandler;
|
||||
};
|
||||
template <spinel_prop_key_t aKey> otError HandlePropertyGet(void);
|
||||
template <spinel_prop_key_t aKey> otError HandlePropertySet(void);
|
||||
template <spinel_prop_key_t aKey> otError HandlePropertyInsert(void);
|
||||
template <spinel_prop_key_t aKey> otError HandlePropertyRemove(void);
|
||||
|
||||
otError HandlePropertySet_SPINEL_PROP_NEST_STREAM_MFG(uint8_t aHeader);
|
||||
otError HandlePropertySet_SPINEL_PROP_HOST_POWER_STATE(uint8_t aHeader);
|
||||
otError HandlePropertySet_SPINEL_PROP_STREAM_RAW(uint8_t aHeader);
|
||||
otError HandlePropertySet_SPINEL_PROP_THREAD_COMMISSIONER_ENABLED(uint8_t aHeader);
|
||||
|
||||
/**
|
||||
* This struct represents a spinel response entry.
|
||||
@@ -206,7 +205,6 @@ protected:
|
||||
|
||||
otError HandleCommand(uint8_t aHeader);
|
||||
|
||||
PropertyHandler FindPropertyHandler(spinel_prop_key_t aKey, const PropertyHandlerEntry *aTable, size_t aTableLen);
|
||||
PropertyHandler FindGetPropertyHandler(spinel_prop_key_t aKey);
|
||||
PropertyHandler FindSetPropertyHandler(spinel_prop_key_t aKey);
|
||||
PropertyHandler FindInsertPropertyHandler(spinel_prop_key_t aKey);
|
||||
@@ -365,350 +363,15 @@ protected:
|
||||
// --------------------------------------------------------------------------
|
||||
// Common Properties
|
||||
|
||||
NCP_GET_PROP_HANDLER(LAST_STATUS);
|
||||
NCP_GET_PROP_HANDLER(PROTOCOL_VERSION);
|
||||
NCP_GET_PROP_HANDLER(INTERFACE_TYPE);
|
||||
NCP_GET_PROP_HANDLER(VENDOR_ID);
|
||||
NCP_GET_PROP_HANDLER(CAPS);
|
||||
NCP_GET_PROP_HANDLER(DEBUG_TEST_ASSERT);
|
||||
NCP_GET_PROP_HANDLER(DEBUG_TEST_WATCHDOG);
|
||||
NCP_GET_PROP_HANDLER(DEBUG_NCP_LOG_LEVEL);
|
||||
NCP_SET_PROP_HANDLER(DEBUG_NCP_LOG_LEVEL);
|
||||
NCP_GET_PROP_HANDLER(NCP_VERSION);
|
||||
NCP_GET_PROP_HANDLER(INTERFACE_COUNT);
|
||||
NCP_GET_PROP_HANDLER(POWER_STATE);
|
||||
NCP_SET_PROP_HANDLER(POWER_STATE);
|
||||
NCP_GET_PROP_HANDLER(MCU_POWER_STATE);
|
||||
NCP_SET_PROP_HANDLER(MCU_POWER_STATE);
|
||||
NCP_GET_PROP_HANDLER(HWADDR);
|
||||
NCP_GET_PROP_HANDLER(LOCK);
|
||||
NCP_GET_PROP_HANDLER(HOST_POWER_STATE);
|
||||
NCP_GET_PROP_HANDLER(UNSOL_UPDATE_FILTER);
|
||||
NCP_SET_PROP_HANDLER(UNSOL_UPDATE_FILTER);
|
||||
NCP_INSERT_PROP_HANDLER(UNSOL_UPDATE_FILTER);
|
||||
NCP_REMOVE_PROP_HANDLER(UNSOL_UPDATE_FILTER);
|
||||
NCP_GET_PROP_HANDLER(UNSOL_UPDATE_LIST);
|
||||
|
||||
NCP_GET_PROP_HANDLER(PHY_RX_SENSITIVITY);
|
||||
NCP_GET_PROP_HANDLER(PHY_TX_POWER);
|
||||
NCP_SET_PROP_HANDLER(PHY_TX_POWER);
|
||||
NCP_GET_PROP_HANDLER(PHY_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(PHY_CHAN);
|
||||
NCP_GET_PROP_HANDLER(PHY_CHAN);
|
||||
|
||||
NCP_GET_PROP_HANDLER(MAC_15_4_PANID);
|
||||
NCP_SET_PROP_HANDLER(MAC_15_4_PANID);
|
||||
NCP_GET_PROP_HANDLER(MAC_15_4_LADDR);
|
||||
NCP_SET_PROP_HANDLER(MAC_15_4_LADDR);
|
||||
NCP_GET_PROP_HANDLER(MAC_15_4_SADDR);
|
||||
NCP_GET_PROP_HANDLER(MAC_PROMISCUOUS_MODE);
|
||||
NCP_SET_PROP_HANDLER(MAC_PROMISCUOUS_MODE);
|
||||
NCP_GET_PROP_HANDLER(MAC_RAW_STREAM_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(MAC_RAW_STREAM_ENABLED);
|
||||
NCP_GET_PROP_HANDLER(MAC_DATA_POLL_PERIOD);
|
||||
NCP_SET_PROP_HANDLER(MAC_DATA_POLL_PERIOD);
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
// Raw Link API Properties
|
||||
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
|
||||
NCP_SET_PROP_HANDLER(PHY_ENABLED);
|
||||
|
||||
NCP_SET_PROP_HANDLER(MAC_15_4_SADDR);
|
||||
NCP_GET_PROP_HANDLER(MAC_SRC_MATCH_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(MAC_SRC_MATCH_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(MAC_SRC_MATCH_SHORT_ADDRESSES);
|
||||
NCP_INSERT_PROP_HANDLER(MAC_SRC_MATCH_SHORT_ADDRESSES);
|
||||
NCP_REMOVE_PROP_HANDLER(MAC_SRC_MATCH_SHORT_ADDRESSES);
|
||||
NCP_SET_PROP_HANDLER(MAC_SRC_MATCH_EXTENDED_ADDRESSES);
|
||||
NCP_INSERT_PROP_HANDLER(MAC_SRC_MATCH_EXTENDED_ADDRESSES);
|
||||
NCP_REMOVE_PROP_HANDLER(MAC_SRC_MATCH_EXTENDED_ADDRESSES);
|
||||
|
||||
#endif // OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
// MTD (or FTD) Properties
|
||||
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
|
||||
NCP_SET_PROP_HANDLER(STREAM_NET);
|
||||
NCP_SET_PROP_HANDLER(STREAM_NET_INSECURE);
|
||||
|
||||
NCP_GET_PROP_HANDLER(PHY_FREQ);
|
||||
NCP_GET_PROP_HANDLER(PHY_CHAN_SUPPORTED);
|
||||
NCP_GET_PROP_HANDLER(PHY_RSSI);
|
||||
|
||||
NCP_GET_PROP_HANDLER(MAC_EXTENDED_ADDR);
|
||||
NCP_GET_PROP_HANDLER(MAC_SCAN_MASK);
|
||||
NCP_SET_PROP_HANDLER(MAC_SCAN_MASK);
|
||||
NCP_GET_PROP_HANDLER(MAC_SCAN_PERIOD);
|
||||
NCP_SET_PROP_HANDLER(MAC_SCAN_PERIOD);
|
||||
NCP_GET_PROP_HANDLER(MAC_SCAN_STATE);
|
||||
NCP_SET_PROP_HANDLER(MAC_SCAN_STATE);
|
||||
NCP_GET_PROP_HANDLER(MAC_CCA_FAILURE_RATE);
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
NCP_GET_PROP_HANDLER(MAC_WHITELIST_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(MAC_WHITELIST_ENABLED);
|
||||
NCP_GET_PROP_HANDLER(MAC_WHITELIST);
|
||||
NCP_SET_PROP_HANDLER(MAC_WHITELIST);
|
||||
NCP_INSERT_PROP_HANDLER(MAC_WHITELIST);
|
||||
NCP_REMOVE_PROP_HANDLER(MAC_WHITELIST);
|
||||
NCP_GET_PROP_HANDLER(MAC_BLACKLIST_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(MAC_BLACKLIST_ENABLED);
|
||||
NCP_GET_PROP_HANDLER(MAC_BLACKLIST);
|
||||
NCP_SET_PROP_HANDLER(MAC_BLACKLIST);
|
||||
NCP_INSERT_PROP_HANDLER(MAC_BLACKLIST);
|
||||
NCP_REMOVE_PROP_HANDLER(MAC_BLACKLIST);
|
||||
NCP_GET_PROP_HANDLER(MAC_FIXED_RSS);
|
||||
NCP_SET_PROP_HANDLER(MAC_FIXED_RSS);
|
||||
NCP_INSERT_PROP_HANDLER(MAC_FIXED_RSS);
|
||||
NCP_REMOVE_PROP_HANDLER(MAC_FIXED_RSS);
|
||||
#endif
|
||||
|
||||
NCP_GET_PROP_HANDLER(NET_SAVED);
|
||||
NCP_GET_PROP_HANDLER(NET_IF_UP);
|
||||
NCP_SET_PROP_HANDLER(NET_IF_UP);
|
||||
NCP_GET_PROP_HANDLER(NET_STACK_UP);
|
||||
NCP_SET_PROP_HANDLER(NET_STACK_UP);
|
||||
NCP_GET_PROP_HANDLER(NET_ROLE);
|
||||
NCP_SET_PROP_HANDLER(NET_ROLE);
|
||||
NCP_GET_PROP_HANDLER(NET_NETWORK_NAME);
|
||||
NCP_SET_PROP_HANDLER(NET_NETWORK_NAME);
|
||||
NCP_GET_PROP_HANDLER(NET_XPANID);
|
||||
NCP_SET_PROP_HANDLER(NET_XPANID);
|
||||
NCP_GET_PROP_HANDLER(NET_MASTER_KEY);
|
||||
NCP_SET_PROP_HANDLER(NET_MASTER_KEY);
|
||||
NCP_GET_PROP_HANDLER(NET_KEY_SEQUENCE_COUNTER);
|
||||
NCP_SET_PROP_HANDLER(NET_KEY_SEQUENCE_COUNTER);
|
||||
NCP_GET_PROP_HANDLER(NET_PARTITION_ID);
|
||||
NCP_GET_PROP_HANDLER(NET_KEY_SWITCH_GUARDTIME);
|
||||
NCP_SET_PROP_HANDLER(NET_KEY_SWITCH_GUARDTIME);
|
||||
|
||||
NCP_GET_PROP_HANDLER(IPV6_ML_PREFIX);
|
||||
NCP_SET_PROP_HANDLER(IPV6_ML_PREFIX);
|
||||
NCP_GET_PROP_HANDLER(IPV6_ML_ADDR);
|
||||
NCP_GET_PROP_HANDLER(IPV6_LL_ADDR);
|
||||
NCP_GET_PROP_HANDLER(IPV6_ADDRESS_TABLE);
|
||||
NCP_INSERT_PROP_HANDLER(IPV6_ADDRESS_TABLE);
|
||||
NCP_REMOVE_PROP_HANDLER(IPV6_ADDRESS_TABLE);
|
||||
NCP_GET_PROP_HANDLER(IPV6_ROUTE_TABLE);
|
||||
NCP_GET_PROP_HANDLER(IPV6_ICMP_PING_OFFLOAD);
|
||||
NCP_SET_PROP_HANDLER(IPV6_ICMP_PING_OFFLOAD);
|
||||
NCP_GET_PROP_HANDLER(IPV6_MULTICAST_ADDRESS_TABLE);
|
||||
NCP_INSERT_PROP_HANDLER(IPV6_MULTICAST_ADDRESS_TABLE);
|
||||
NCP_REMOVE_PROP_HANDLER(IPV6_MULTICAST_ADDRESS_TABLE);
|
||||
NCP_GET_PROP_HANDLER(IPV6_ICMP_PING_OFFLOAD_MODE);
|
||||
NCP_SET_PROP_HANDLER(IPV6_ICMP_PING_OFFLOAD_MODE);
|
||||
|
||||
NCP_GET_PROP_HANDLER(THREAD_LEADER);
|
||||
NCP_GET_PROP_HANDLER(THREAD_RLOC16_DEBUG_PASSTHRU);
|
||||
NCP_SET_PROP_HANDLER(THREAD_RLOC16_DEBUG_PASSTHRU);
|
||||
NCP_GET_PROP_HANDLER(THREAD_OFF_MESH_ROUTES);
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_INSERT_PROP_HANDLER(THREAD_OFF_MESH_ROUTES);
|
||||
NCP_REMOVE_PROP_HANDLER(THREAD_OFF_MESH_ROUTES);
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER(THREAD_ON_MESH_NETS);
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_INSERT_PROP_HANDLER(THREAD_ON_MESH_NETS);
|
||||
NCP_REMOVE_PROP_HANDLER(THREAD_ON_MESH_NETS);
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER(THREAD_LEADER_ADDR);
|
||||
NCP_GET_PROP_HANDLER(THREAD_PARENT);
|
||||
NCP_GET_PROP_HANDLER(THREAD_NEIGHBOR_TABLE);
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
|
||||
NCP_GET_PROP_HANDLER(THREAD_NEIGHBOR_TABLE_ERROR_RATES);
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER(THREAD_LEADER_RID);
|
||||
NCP_GET_PROP_HANDLER(THREAD_LEADER_WEIGHT);
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_GET_PROP_HANDLER(THREAD_NETWORK_DATA);
|
||||
NCP_GET_PROP_HANDLER(THREAD_STABLE_NETWORK_DATA);
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER(THREAD_NETWORK_DATA_VERSION);
|
||||
NCP_GET_PROP_HANDLER(THREAD_STABLE_NETWORK_DATA_VERSION);
|
||||
NCP_GET_PROP_HANDLER(THREAD_LEADER_NETWORK_DATA);
|
||||
NCP_GET_PROP_HANDLER(THREAD_STABLE_LEADER_NETWORK_DATA);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ASSISTING_PORTS);
|
||||
NCP_SET_PROP_HANDLER(THREAD_ASSISTING_PORTS);
|
||||
NCP_INSERT_PROP_HANDLER(THREAD_ASSISTING_PORTS);
|
||||
NCP_REMOVE_PROP_HANDLER(THREAD_ASSISTING_PORTS);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ALLOW_LOCAL_NET_DATA_CHANGE);
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
NCP_SET_PROP_HANDLER(THREAD_ALLOW_LOCAL_NET_DATA_CHANGE);
|
||||
#endif
|
||||
NCP_GET_PROP_HANDLER(THREAD_MODE);
|
||||
NCP_SET_PROP_HANDLER(THREAD_MODE);
|
||||
NCP_GET_PROP_HANDLER(THREAD_CHILD_TIMEOUT);
|
||||
NCP_GET_PROP_HANDLER(THREAD_RLOC16);
|
||||
NCP_GET_PROP_HANDLER(NET_REQUIRE_JOIN_EXISTING);
|
||||
NCP_SET_PROP_HANDLER(NET_REQUIRE_JOIN_EXISTING);
|
||||
NCP_GET_PROP_HANDLER(THREAD_DISCOVERY_SCAN_JOINER_FLAG);
|
||||
NCP_SET_PROP_HANDLER(THREAD_DISCOVERY_SCAN_JOINER_FLAG);
|
||||
NCP_GET_PROP_HANDLER(THREAD_DISCOVERY_SCAN_ENABLE_FILTERING);
|
||||
NCP_SET_PROP_HANDLER(THREAD_DISCOVERY_SCAN_ENABLE_FILTERING);
|
||||
NCP_GET_PROP_HANDLER(THREAD_DISCOVERY_SCAN_PANID);
|
||||
NCP_SET_PROP_HANDLER(THREAD_DISCOVERY_SCAN_PANID);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ACTIVE_DATASET);
|
||||
NCP_GET_PROP_HANDLER(THREAD_PENDING_DATASET);
|
||||
|
||||
NCP_GET_PROP_HANDLER(CNTR_ALL_MAC_COUNTERS);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_ACK_REQ);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_ACKED);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_NO_ACK_REQ);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_DATA);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_DATA_POLL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_BEACON);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_BEACON_REQ);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_OTHER);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_RETRY);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_UNICAST);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_PKT_BROADCAST);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_ERR_CCA);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_ERR_ABORT);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_DATA);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_DATA_POLL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_BEACON);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_BEACON_REQ);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_OTHER);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_FILT_WL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_FILT_DA);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_UNICAST);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_BROADCAST);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_ERR_EMPTY);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_ERR_UKWN_NBR);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_ERR_NVLD_SADDR);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_ERR_SECURITY);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_ERR_BAD_FCS);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_ERR_OTHER);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_PKT_DUP);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_IP_SEC_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_IP_INSEC_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_IP_DROPPED);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_IP_SEC_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_IP_INSEC_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_IP_DROPPED);
|
||||
NCP_GET_PROP_HANDLER(CNTR_TX_SPINEL_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_SPINEL_TOTAL);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_SPINEL_OUT_OF_ORDER_TID);
|
||||
NCP_GET_PROP_HANDLER(CNTR_RX_SPINEL_ERR);
|
||||
NCP_GET_PROP_HANDLER(CNTR_IP_TX_SUCCESS);
|
||||
NCP_GET_PROP_HANDLER(CNTR_IP_RX_SUCCESS);
|
||||
NCP_GET_PROP_HANDLER(CNTR_IP_TX_FAILURE);
|
||||
NCP_GET_PROP_HANDLER(CNTR_IP_RX_FAILURE);
|
||||
NCP_SET_PROP_HANDLER(CNTR_RESET);
|
||||
NCP_GET_PROP_HANDLER(MSG_BUFFER_COUNTERS);
|
||||
|
||||
#if OPENTHREAD_ENABLE_JAM_DETECTION
|
||||
NCP_GET_PROP_HANDLER(JAM_DETECTED);
|
||||
NCP_GET_PROP_HANDLER(JAM_DETECT_ENABLE);
|
||||
NCP_SET_PROP_HANDLER(JAM_DETECT_ENABLE);
|
||||
NCP_GET_PROP_HANDLER(JAM_DETECT_RSSI_THRESHOLD);
|
||||
NCP_SET_PROP_HANDLER(JAM_DETECT_RSSI_THRESHOLD);
|
||||
NCP_GET_PROP_HANDLER(JAM_DETECT_WINDOW);
|
||||
NCP_SET_PROP_HANDLER(JAM_DETECT_WINDOW);
|
||||
NCP_GET_PROP_HANDLER(JAM_DETECT_BUSY);
|
||||
NCP_SET_PROP_HANDLER(JAM_DETECT_BUSY);
|
||||
NCP_GET_PROP_HANDLER(JAM_DETECT_HISTORY_BITMAP);
|
||||
#endif
|
||||
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MONITOR
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MONITOR_SAMPLE_INTERVAL);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MONITOR_RSSI_THRESHOLD);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MONITOR_SAMPLE_WINDOW);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MONITOR_SAMPLE_COUNT);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MONITOR_CHANNEL_OCCUPANCY);
|
||||
#endif
|
||||
|
||||
#if OPENTHREAD_ENABLE_LEGACY
|
||||
NCP_GET_PROP_HANDLER(NEST_LEGACY_ULA_PREFIX);
|
||||
NCP_SET_PROP_HANDLER(NEST_LEGACY_ULA_PREFIX);
|
||||
NCP_GET_PROP_HANDLER(NEST_LEGACY_LAST_NODE_JOINED);
|
||||
#endif
|
||||
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
NCP_GET_PROP_HANDLER(THREAD_NETWORK_TIME);
|
||||
#endif
|
||||
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
// FTD Only Properties
|
||||
|
||||
#if OPENTHREAD_FTD
|
||||
|
||||
NCP_GET_PROP_HANDLER(NET_PSKC);
|
||||
NCP_SET_PROP_HANDLER(NET_PSKC);
|
||||
|
||||
NCP_GET_PROP_HANDLER(THREAD_CHILD_TABLE);
|
||||
NCP_GET_PROP_HANDLER(THREAD_CHILD_TABLE_ADDRESSES);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ROUTER_TABLE);
|
||||
NCP_GET_PROP_HANDLER(THREAD_CHILD_COUNT_MAX);
|
||||
NCP_SET_PROP_HANDLER(THREAD_CHILD_COUNT_MAX);
|
||||
NCP_SET_PROP_HANDLER(THREAD_CHILD_TIMEOUT);
|
||||
NCP_GET_PROP_HANDLER(THREAD_CONTEXT_REUSE_DELAY);
|
||||
NCP_SET_PROP_HANDLER(THREAD_CONTEXT_REUSE_DELAY);
|
||||
NCP_GET_PROP_HANDLER(THREAD_LOCAL_LEADER_WEIGHT);
|
||||
NCP_SET_PROP_HANDLER(THREAD_LOCAL_LEADER_WEIGHT);
|
||||
NCP_GET_PROP_HANDLER(THREAD_NETWORK_ID_TIMEOUT);
|
||||
NCP_SET_PROP_HANDLER(THREAD_NETWORK_ID_TIMEOUT);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ROUTER_ROLE_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(THREAD_ROUTER_ROLE_ENABLED);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ROUTER_UPGRADE_THRESHOLD);
|
||||
NCP_SET_PROP_HANDLER(THREAD_ROUTER_UPGRADE_THRESHOLD);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ROUTER_DOWNGRADE_THRESHOLD);
|
||||
NCP_SET_PROP_HANDLER(THREAD_ROUTER_DOWNGRADE_THRESHOLD);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ROUTER_SELECTION_JITTER);
|
||||
NCP_SET_PROP_HANDLER(THREAD_ROUTER_SELECTION_JITTER);
|
||||
NCP_GET_PROP_HANDLER(THREAD_PREFERRED_ROUTER_ID);
|
||||
NCP_SET_PROP_HANDLER(THREAD_PREFERRED_ROUTER_ID);
|
||||
#if OPENTHREAD_CONFIG_ENABLE_STEERING_DATA_SET_OOB
|
||||
NCP_GET_PROP_HANDLER(THREAD_STEERING_DATA);
|
||||
NCP_SET_PROP_HANDLER(THREAD_STEERING_DATA);
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER
|
||||
NCP_GET_PROP_HANDLER(THREAD_COMMISSIONER_ENABLED);
|
||||
NCP_INSERT_PROP_HANDLER(THREAD_JOINERS);
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_TMF_PROXY
|
||||
NCP_GET_PROP_HANDLER(THREAD_TMF_PROXY_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(THREAD_TMF_PROXY_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(THREAD_TMF_PROXY_STREAM);
|
||||
#endif
|
||||
NCP_REMOVE_PROP_HANDLER(THREAD_ACTIVE_ROUTER_IDS);
|
||||
NCP_SET_PROP_HANDLER(THREAD_ACTIVE_DATASET);
|
||||
NCP_SET_PROP_HANDLER(THREAD_PENDING_DATASET);
|
||||
NCP_SET_PROP_HANDLER(THREAD_MGMT_ACTIVE_DATASET);
|
||||
NCP_SET_PROP_HANDLER(THREAD_MGMT_PENDING_DATASET);
|
||||
NCP_GET_PROP_HANDLER(THREAD_ADDRESS_CACHE_TABLE);
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MANAGER
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MANAGER_NEW_CHANNEL);
|
||||
NCP_SET_PROP_HANDLER(CHANNEL_MANAGER_NEW_CHANNEL);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MANAGER_DELAY);
|
||||
NCP_SET_PROP_HANDLER(CHANNEL_MANAGER_DELAY);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MANAGER_SUPPORTED_CHANNELS);
|
||||
NCP_SET_PROP_HANDLER(CHANNEL_MANAGER_SUPPORTED_CHANNELS);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MANAGER_FAVORED_CHANNELS);
|
||||
NCP_SET_PROP_HANDLER(CHANNEL_MANAGER_FAVORED_CHANNELS);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MANAGER_CHANNEL_SELECT);
|
||||
NCP_SET_PROP_HANDLER(CHANNEL_MANAGER_CHANNEL_SELECT);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MANAGER_AUTO_SELECT_ENABLED);
|
||||
NCP_SET_PROP_HANDLER(CHANNEL_MANAGER_AUTO_SELECT_ENABLED);
|
||||
NCP_GET_PROP_HANDLER(CHANNEL_MANAGER_AUTO_SELECT_INTERVAL);
|
||||
NCP_SET_PROP_HANDLER(CHANNEL_MANAGER_AUTO_SELECT_INTERVAL);
|
||||
#endif
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
NCP_GET_PROP_HANDLER(TIME_SYNC_PERIOD);
|
||||
NCP_SET_PROP_HANDLER(TIME_SYNC_PERIOD);
|
||||
NCP_GET_PROP_HANDLER(TIME_SYNC_XTAL_THRESHOLD);
|
||||
NCP_SET_PROP_HANDLER(TIME_SYNC_XTAL_THRESHOLD);
|
||||
#endif
|
||||
|
||||
#endif // OPENTHREAD_FTD
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
// Property "set" handlers for special properties for which the spinel
|
||||
// response needs to be created from within the set handler.
|
||||
@@ -824,12 +487,6 @@ protected:
|
||||
kInvalidScanChannel = -1, // Invalid scan channel.
|
||||
};
|
||||
|
||||
// Command Handlers
|
||||
static const PropertyHandlerEntry mGetPropertyHandlerTable[];
|
||||
static const PropertyHandlerEntry mSetPropertyHandlerTable[];
|
||||
static const PropertyHandlerEntry mInsertPropertyHandlerTable[];
|
||||
static const PropertyHandlerEntry mRemovePropertyHandlerTable[];
|
||||
|
||||
spinel_status_t mLastStatus;
|
||||
uint32_t mSupportedChannelMask;
|
||||
uint32_t mChannelMask;
|
||||
|
||||
@@ -0,0 +1,992 @@
|
||||
/*
|
||||
* Copyright (c) 2018, The OpenThread Authors.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the copyright holder nor the
|
||||
* names of its contributors may be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file
|
||||
* This file implements general thread device required Spinel interface to the OpenThread stack.
|
||||
*/
|
||||
|
||||
#include "ncp_base.hpp"
|
||||
|
||||
namespace ot {
|
||||
namespace Ncp {
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// MARK: Property Handler Jump Tables and Methods
|
||||
// ----------------------------------------------------------------------------
|
||||
NcpBase::PropertyHandler NcpBase::FindGetPropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
NcpBase::PropertyHandler handler;
|
||||
|
||||
switch (aKey)
|
||||
{
|
||||
case SPINEL_PROP_CAPS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CAPS>;
|
||||
break;
|
||||
case SPINEL_PROP_DEBUG_TEST_ASSERT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_DEBUG_TEST_ASSERT>;
|
||||
break;
|
||||
case SPINEL_PROP_DEBUG_TEST_WATCHDOG:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_DEBUG_TEST_WATCHDOG>;
|
||||
break;
|
||||
case SPINEL_PROP_DEBUG_NCP_LOG_LEVEL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_DEBUG_NCP_LOG_LEVEL>;
|
||||
break;
|
||||
case SPINEL_PROP_HWADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_HWADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_HOST_POWER_STATE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_HOST_POWER_STATE>;
|
||||
break;
|
||||
case SPINEL_PROP_INTERFACE_COUNT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_INTERFACE_COUNT>;
|
||||
break;
|
||||
case SPINEL_PROP_INTERFACE_TYPE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_INTERFACE_TYPE>;
|
||||
break;
|
||||
case SPINEL_PROP_LAST_STATUS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_LAST_STATUS>;
|
||||
break;
|
||||
case SPINEL_PROP_LOCK:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_LOCK>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_CHAN:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_CHAN>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_RX_SENSITIVITY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_RX_SENSITIVITY>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_TX_POWER:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_TX_POWER>;
|
||||
break;
|
||||
case SPINEL_PROP_POWER_STATE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_POWER_STATE>;
|
||||
break;
|
||||
case SPINEL_PROP_MCU_POWER_STATE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MCU_POWER_STATE>;
|
||||
break;
|
||||
case SPINEL_PROP_PROTOCOL_VERSION:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PROTOCOL_VERSION>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_15_4_PANID:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_15_4_PANID>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_15_4_LADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_15_4_LADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_15_4_SADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_15_4_SADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_RAW_STREAM_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_RAW_STREAM_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_PROMISCUOUS_MODE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_PROMISCUOUS_MODE>;
|
||||
break;
|
||||
case SPINEL_PROP_NCP_VERSION:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NCP_VERSION>;
|
||||
break;
|
||||
case SPINEL_PROP_UNSOL_UPDATE_FILTER:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_UNSOL_UPDATE_FILTER>;
|
||||
break;
|
||||
case SPINEL_PROP_UNSOL_UPDATE_LIST:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_UNSOL_UPDATE_LIST>;
|
||||
break;
|
||||
case SPINEL_PROP_VENDOR_ID:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_VENDOR_ID>;
|
||||
break;
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
case SPINEL_PROP_MAC_DATA_POLL_PERIOD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_DATA_POLL_PERIOD>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_EXTENDED_ADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_EXTENDED_ADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SCAN_STATE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_SCAN_STATE>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SCAN_MASK:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_SCAN_MASK>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SCAN_PERIOD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_SCAN_PERIOD>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_CCA_FAILURE_RATE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_CCA_FAILURE_RATE>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
case SPINEL_PROP_MAC_BLACKLIST:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_BLACKLIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_BLACKLIST_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_BLACKLIST_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_FIXED_RSS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_FIXED_RSS>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_WHITELIST:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_WHITELIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_WHITELIST_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_WHITELIST_ENABLED>;
|
||||
break;
|
||||
#endif
|
||||
case SPINEL_PROP_MSG_BUFFER_COUNTERS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MSG_BUFFER_COUNTERS>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_CHAN_SUPPORTED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_CHAN_SUPPORTED>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_FREQ:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_FREQ>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_RSSI:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_PHY_RSSI>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_IF_UP:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_IF_UP>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_KEY_SEQUENCE_COUNTER:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_KEY_SEQUENCE_COUNTER>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_KEY_SWITCH_GUARDTIME:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_KEY_SWITCH_GUARDTIME>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_MASTER_KEY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_MASTER_KEY>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_NETWORK_NAME:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_NETWORK_NAME>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_PARTITION_ID:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_PARTITION_ID>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_REQUIRE_JOIN_EXISTING:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_REQUIRE_JOIN_EXISTING>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_ROLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_ROLE>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_SAVED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_SAVED>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_STACK_UP:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_STACK_UP>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_XPANID:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_XPANID>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ALLOW_LOCAL_NET_DATA_CHANGE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ALLOW_LOCAL_NET_DATA_CHANGE>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ASSISTING_PORTS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ASSISTING_PORTS>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CHILD_TIMEOUT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_TIMEOUT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_DISCOVERY_SCAN_JOINER_FLAG:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_DISCOVERY_SCAN_JOINER_FLAG>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_DISCOVERY_SCAN_ENABLE_FILTERING:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_DISCOVERY_SCAN_ENABLE_FILTERING>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_DISCOVERY_SCAN_PANID:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_DISCOVERY_SCAN_PANID>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_LEADER_ADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_LEADER_ADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_LEADER_NETWORK_DATA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_LEADER_NETWORK_DATA>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_LEADER_RID:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_LEADER_RID>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_MODE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_MODE>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_NEIGHBOR_TABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NEIGHBOR_TABLE>;
|
||||
break;
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TX_ERROR_RATE_TRACKING
|
||||
case SPINEL_PROP_THREAD_NEIGHBOR_TABLE_ERROR_RATES:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NEIGHBOR_TABLE_ERROR_RATES>;
|
||||
break;
|
||||
#endif
|
||||
case SPINEL_PROP_THREAD_NETWORK_DATA_VERSION:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NETWORK_DATA_VERSION>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_OFF_MESH_ROUTES:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_OFF_MESH_ROUTES>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ON_MESH_NETS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ON_MESH_NETS>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_PARENT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_PARENT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_RLOC16:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_RLOC16>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_RLOC16_DEBUG_PASSTHRU:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_RLOC16_DEBUG_PASSTHRU>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_STABLE_LEADER_NETWORK_DATA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_STABLE_LEADER_NETWORK_DATA>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_STABLE_NETWORK_DATA_VERSION:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_STABLE_NETWORK_DATA_VERSION>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
case SPINEL_PROP_THREAD_NETWORK_DATA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NETWORK_DATA>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_STABLE_NETWORK_DATA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_STABLE_NETWORK_DATA>;
|
||||
break;
|
||||
#endif
|
||||
case SPINEL_PROP_THREAD_ACTIVE_DATASET:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ACTIVE_DATASET>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_PENDING_DATASET:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_PENDING_DATASET>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ADDRESS_TABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_ADDRESS_TABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD_MODE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD_MODE>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_LL_ADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_LL_ADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ML_PREFIX:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_ML_PREFIX>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ML_ADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_ML_ADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_MULTICAST_ADDRESS_TABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_MULTICAST_ADDRESS_TABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ROUTE_TABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_IPV6_ROUTE_TABLE>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_JAM_DETECTION
|
||||
case SPINEL_PROP_JAM_DETECT_ENABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_JAM_DETECT_ENABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECTED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_JAM_DETECTED>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECT_RSSI_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_JAM_DETECT_RSSI_THRESHOLD>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECT_WINDOW:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_JAM_DETECT_WINDOW>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECT_BUSY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_JAM_DETECT_BUSY>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECT_HISTORY_BITMAP:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_JAM_DETECT_HISTORY_BITMAP>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MONITOR
|
||||
case SPINEL_PROP_CHANNEL_MONITOR_SAMPLE_INTERVAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MONITOR_SAMPLE_INTERVAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MONITOR_RSSI_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MONITOR_RSSI_THRESHOLD>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MONITOR_SAMPLE_WINDOW:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MONITOR_SAMPLE_WINDOW>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MONITOR_SAMPLE_COUNT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MONITOR_SAMPLE_COUNT>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MONITOR_CHANNEL_OCCUPANCY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MONITOR_CHANNEL_OCCUPANCY>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_LEGACY
|
||||
case SPINEL_PROP_NEST_LEGACY_ULA_PREFIX:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NEST_LEGACY_ULA_PREFIX>;
|
||||
break;
|
||||
case SPINEL_PROP_NEST_LEGACY_LAST_NODE_JOINED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NEST_LEGACY_LAST_NODE_JOINED>;
|
||||
break;
|
||||
#endif
|
||||
// MAC counters
|
||||
case SPINEL_PROP_CNTR_TX_PKT_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_ACK_REQ:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_ACK_REQ>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_ACKED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_ACKED>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_NO_ACK_REQ:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_NO_ACK_REQ>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_DATA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_DATA>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_DATA_POLL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_DATA_POLL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_BEACON:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_BEACON>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_BEACON_REQ:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_BEACON_REQ>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_OTHER:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_OTHER>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_RETRY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_RETRY>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_UNICAST:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_UNICAST>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_PKT_BROADCAST:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_PKT_BROADCAST>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_ERR_CCA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_ERR_CCA>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_ERR_ABORT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_ERR_ABORT>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_DATA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_DATA>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_DATA_POLL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_DATA_POLL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_BEACON:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_BEACON>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_BEACON_REQ:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_BEACON_REQ>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_OTHER:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_OTHER>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_FILT_WL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_FILT_WL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_FILT_DA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_FILT_DA>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_UNICAST:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_UNICAST>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_BROADCAST:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_BROADCAST>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_ERR_EMPTY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_ERR_EMPTY>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_ERR_UKWN_NBR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_ERR_UKWN_NBR>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_ERR_NVLD_SADDR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_ERR_NVLD_SADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_ERR_SECURITY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_ERR_SECURITY>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_ERR_BAD_FCS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_ERR_BAD_FCS>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_ERR_OTHER:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_ERR_OTHER>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_PKT_DUP:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_PKT_DUP>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_ALL_MAC_COUNTERS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_ALL_MAC_COUNTERS>;
|
||||
break;
|
||||
// NCP counters
|
||||
case SPINEL_PROP_CNTR_TX_IP_SEC_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_IP_SEC_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_IP_INSEC_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_IP_INSEC_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_IP_DROPPED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_IP_DROPPED>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_IP_SEC_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_IP_SEC_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_IP_INSEC_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_IP_INSEC_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_IP_DROPPED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_IP_DROPPED>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_TX_SPINEL_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_TX_SPINEL_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_SPINEL_TOTAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_SPINEL_TOTAL>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_RX_SPINEL_ERR:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_RX_SPINEL_ERR>;
|
||||
break;
|
||||
// IP counters
|
||||
case SPINEL_PROP_CNTR_IP_TX_SUCCESS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_IP_TX_SUCCESS>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_IP_RX_SUCCESS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_IP_RX_SUCCESS>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_IP_TX_FAILURE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_IP_TX_FAILURE>;
|
||||
break;
|
||||
case SPINEL_PROP_CNTR_IP_RX_FAILURE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CNTR_IP_RX_FAILURE>;
|
||||
break;
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
case SPINEL_PROP_THREAD_NETWORK_TIME:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NETWORK_TIME>;
|
||||
break;
|
||||
#endif
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
|
||||
#if OPENTHREAD_FTD
|
||||
case SPINEL_PROP_NET_PSKC:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_NET_PSKC>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_LEADER_WEIGHT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_LEADER_WEIGHT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CHILD_TABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_TABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CHILD_TABLE_ADDRESSES:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_TABLE_ADDRESSES>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_TABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_TABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_LOCAL_LEADER_WEIGHT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_LOCAL_LEADER_WEIGHT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_ROLE_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_ROLE_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CHILD_COUNT_MAX:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_COUNT_MAX>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_UPGRADE_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_UPGRADE_THRESHOLD>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_DOWNGRADE_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_DOWNGRADE_THRESHOLD>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CONTEXT_REUSE_DELAY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CONTEXT_REUSE_DELAY>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_NETWORK_ID_TIMEOUT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NETWORK_ID_TIMEOUT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_SELECTION_JITTER:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_SELECTION_JITTER>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_PREFERRED_ROUTER_ID:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_PREFERRED_ROUTER_ID>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ADDRESS_CACHE_TABLE:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ADDRESS_CACHE_TABLE>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER
|
||||
case SPINEL_PROP_THREAD_COMMISSIONER_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_COMMISSIONER_ENABLED>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_TMF_PROXY
|
||||
case SPINEL_PROP_THREAD_TMF_PROXY_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_TMF_PROXY_ENABLED>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_CONFIG_ENABLE_STEERING_DATA_SET_OOB
|
||||
case SPINEL_PROP_THREAD_STEERING_DATA:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_STEERING_DATA>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MANAGER
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_NEW_CHANNEL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_NEW_CHANNEL>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_DELAY:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_DELAY>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_SUPPORTED_CHANNELS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_SUPPORTED_CHANNELS>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_FAVORED_CHANNELS:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_FAVORED_CHANNELS>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_CHANNEL_SELECT:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_CHANNEL_SELECT>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
case SPINEL_PROP_TIME_SYNC_PERIOD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_TIME_SYNC_PERIOD>;
|
||||
break;
|
||||
case SPINEL_PROP_TIME_SYNC_XTAL_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_TIME_SYNC_XTAL_THRESHOLD>;
|
||||
break;
|
||||
#endif // OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
#endif // OPENTHREAD_FTD
|
||||
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_ENABLED:
|
||||
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_SRC_MATCH_ENABLED>;
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
handler = NULL;
|
||||
}
|
||||
|
||||
return handler;
|
||||
}
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindSetPropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
NcpBase::PropertyHandler handler;
|
||||
|
||||
switch (aKey)
|
||||
{
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
case SPINEL_PROP_MAC_15_4_SADDR:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_15_4_SADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SRC_MATCH_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_PHY_ENABLED>;
|
||||
break;
|
||||
#endif // OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
case SPINEL_PROP_POWER_STATE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_POWER_STATE>;
|
||||
break;
|
||||
case SPINEL_PROP_MCU_POWER_STATE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MCU_POWER_STATE>;
|
||||
break;
|
||||
case SPINEL_PROP_UNSOL_UPDATE_FILTER:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_UNSOL_UPDATE_FILTER>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_TX_POWER:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_PHY_TX_POWER>;
|
||||
break;
|
||||
case SPINEL_PROP_PHY_CHAN:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_PHY_CHAN>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_PROMISCUOUS_MODE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_PROMISCUOUS_MODE>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_15_4_PANID:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_15_4_PANID>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_15_4_LADDR:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_15_4_LADDR>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_RAW_STREAM_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_RAW_STREAM_ENABLED>;
|
||||
break;
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
case SPINEL_PROP_MAC_DATA_POLL_PERIOD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_DATA_POLL_PERIOD>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SCAN_MASK:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SCAN_MASK>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SCAN_STATE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SCAN_STATE>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SCAN_PERIOD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SCAN_PERIOD>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_IF_UP:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_IF_UP>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_STACK_UP:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_STACK_UP>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_ROLE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_ROLE>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_NETWORK_NAME:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_NETWORK_NAME>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_XPANID:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_XPANID>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_MASTER_KEY:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_MASTER_KEY>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_KEY_SEQUENCE_COUNTER:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_KEY_SEQUENCE_COUNTER>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_KEY_SWITCH_GUARDTIME:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_KEY_SWITCH_GUARDTIME>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ASSISTING_PORTS:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ASSISTING_PORTS>;
|
||||
break;
|
||||
case SPINEL_PROP_STREAM_NET_INSECURE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_STREAM_NET_INSECURE>;
|
||||
break;
|
||||
case SPINEL_PROP_STREAM_NET:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_STREAM_NET>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ML_PREFIX:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_IPV6_ML_PREFIX>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD_MODE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_IPV6_ICMP_PING_OFFLOAD_MODE>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_RLOC16_DEBUG_PASSTHRU:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_RLOC16_DEBUG_PASSTHRU>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
case SPINEL_PROP_MAC_WHITELIST:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_WHITELIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_WHITELIST_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_WHITELIST_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_BLACKLIST:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_BLACKLIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_BLACKLIST_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_BLACKLIST_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_FIXED_RSS:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_MAC_FIXED_RSS>;
|
||||
break;
|
||||
#endif
|
||||
case SPINEL_PROP_THREAD_MODE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_MODE>;
|
||||
break;
|
||||
case SPINEL_PROP_NET_REQUIRE_JOIN_EXISTING:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_REQUIRE_JOIN_EXISTING>;
|
||||
break;
|
||||
case SPINEL_PROP_DEBUG_NCP_LOG_LEVEL:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_DEBUG_NCP_LOG_LEVEL>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_DISCOVERY_SCAN_JOINER_FLAG:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_DISCOVERY_SCAN_JOINER_FLAG>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_DISCOVERY_SCAN_ENABLE_FILTERING:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_DISCOVERY_SCAN_ENABLE_FILTERING>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_DISCOVERY_SCAN_PANID:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_DISCOVERY_SCAN_PANID>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
case SPINEL_PROP_THREAD_ALLOW_LOCAL_NET_DATA_CHANGE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ALLOW_LOCAL_NET_DATA_CHANGE>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_JAM_DETECTION
|
||||
case SPINEL_PROP_JAM_DETECT_ENABLE:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_JAM_DETECT_ENABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECT_RSSI_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_JAM_DETECT_RSSI_THRESHOLD>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECT_WINDOW:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_JAM_DETECT_WINDOW>;
|
||||
break;
|
||||
case SPINEL_PROP_JAM_DETECT_BUSY:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_JAM_DETECT_BUSY>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_LEGACY
|
||||
case SPINEL_PROP_NEST_LEGACY_ULA_PREFIX:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NEST_LEGACY_ULA_PREFIX>;
|
||||
break;
|
||||
#endif
|
||||
case SPINEL_PROP_CNTR_RESET:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CNTR_RESET>;
|
||||
break;
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
#if OPENTHREAD_FTD
|
||||
case SPINEL_PROP_NET_PSKC:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_NET_PSKC>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CHILD_TIMEOUT:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_CHILD_TIMEOUT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_NETWORK_ID_TIMEOUT:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_NETWORK_ID_TIMEOUT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_LOCAL_LEADER_WEIGHT:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_LOCAL_LEADER_WEIGHT>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_ROLE_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_ROLE_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CHILD_COUNT_MAX:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_CHILD_COUNT_MAX>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_UPGRADE_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_UPGRADE_THRESHOLD>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_DOWNGRADE_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_DOWNGRADE_THRESHOLD>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_CONTEXT_REUSE_DELAY:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_CONTEXT_REUSE_DELAY>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ROUTER_SELECTION_JITTER:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_SELECTION_JITTER>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_PREFERRED_ROUTER_ID:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_PREFERRED_ROUTER_ID>;
|
||||
break;
|
||||
#if OPENTHREAD_CONFIG_ENABLE_STEERING_DATA_SET_OOB
|
||||
case SPINEL_PROP_THREAD_STEERING_DATA:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_STEERING_DATA>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_TMF_PROXY
|
||||
case SPINEL_PROP_THREAD_TMF_PROXY_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_TMF_PROXY_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_TMF_PROXY_STREAM:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_TMF_PROXY_STREAM>;
|
||||
break;
|
||||
#endif
|
||||
case SPINEL_PROP_THREAD_ACTIVE_DATASET:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ACTIVE_DATASET>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_PENDING_DATASET:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_PENDING_DATASET>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_MGMT_ACTIVE_DATASET:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_MGMT_ACTIVE_DATASET>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_MGMT_PENDING_DATASET:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_MGMT_PENDING_DATASET>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MANAGER
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_NEW_CHANNEL:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_NEW_CHANNEL>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_DELAY:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_DELAY>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_SUPPORTED_CHANNELS:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_SUPPORTED_CHANNELS>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_FAVORED_CHANNELS:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_FAVORED_CHANNELS>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_CHANNEL_SELECT:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_CHANNEL_SELECT>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_ENABLED:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_ENABLED>;
|
||||
break;
|
||||
case SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
case SPINEL_PROP_TIME_SYNC_PERIOD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_TIME_SYNC_PERIOD>;
|
||||
break;
|
||||
case SPINEL_PROP_TIME_SYNC_XTAL_THRESHOLD:
|
||||
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_TIME_SYNC_XTAL_THRESHOLD>;
|
||||
break;
|
||||
#endif
|
||||
#endif // #if OPENTHREAD_FTD
|
||||
default:
|
||||
handler = NULL;
|
||||
}
|
||||
|
||||
return handler;
|
||||
}
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindInsertPropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
NcpBase::PropertyHandler handler;
|
||||
|
||||
switch (aKey)
|
||||
{
|
||||
case SPINEL_PROP_UNSOL_UPDATE_FILTER:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_UNSOL_UPDATE_FILTER>;
|
||||
break;
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
case SPINEL_PROP_IPV6_ADDRESS_TABLE:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_IPV6_ADDRESS_TABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_MULTICAST_ADDRESS_TABLE:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_IPV6_MULTICAST_ADDRESS_TABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ASSISTING_PORTS:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_THREAD_ASSISTING_PORTS>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
case SPINEL_PROP_THREAD_OFF_MESH_ROUTES:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_THREAD_OFF_MESH_ROUTES>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ON_MESH_NETS:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_THREAD_ON_MESH_NETS>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
case SPINEL_PROP_MAC_WHITELIST:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_WHITELIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_BLACKLIST:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_BLACKLIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_FIXED_RSS:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_FIXED_RSS>;
|
||||
break;
|
||||
#endif
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
#if OPENTHREAD_FTD
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER
|
||||
case SPINEL_PROP_THREAD_JOINERS:
|
||||
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_THREAD_JOINERS>;
|
||||
break;
|
||||
#endif
|
||||
#endif // OPENTHREAD_FTD
|
||||
default:
|
||||
handler = NULL;
|
||||
}
|
||||
|
||||
return handler;
|
||||
}
|
||||
|
||||
NcpBase::PropertyHandler NcpBase::FindRemovePropertyHandler(spinel_prop_key_t aKey)
|
||||
{
|
||||
NcpBase::PropertyHandler handler;
|
||||
|
||||
switch (aKey)
|
||||
{
|
||||
case SPINEL_PROP_UNSOL_UPDATE_FILTER:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_UNSOL_UPDATE_FILTER>;
|
||||
break;
|
||||
#if OPENTHREAD_RADIO || OPENTHREAD_ENABLE_RAW_LINK_API
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES>;
|
||||
break;
|
||||
#endif
|
||||
#if OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
case SPINEL_PROP_IPV6_ADDRESS_TABLE:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_IPV6_ADDRESS_TABLE>;
|
||||
break;
|
||||
case SPINEL_PROP_IPV6_MULTICAST_ADDRESS_TABLE:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_IPV6_MULTICAST_ADDRESS_TABLE>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_BORDER_ROUTER
|
||||
case SPINEL_PROP_THREAD_OFF_MESH_ROUTES:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_THREAD_OFF_MESH_ROUTES>;
|
||||
break;
|
||||
case SPINEL_PROP_THREAD_ON_MESH_NETS:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_THREAD_ON_MESH_NETS>;
|
||||
break;
|
||||
#endif
|
||||
case SPINEL_PROP_THREAD_ASSISTING_PORTS:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_THREAD_ASSISTING_PORTS>;
|
||||
break;
|
||||
#if OPENTHREAD_ENABLE_MAC_FILTER
|
||||
case SPINEL_PROP_MAC_WHITELIST:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_WHITELIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_BLACKLIST:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_BLACKLIST>;
|
||||
break;
|
||||
case SPINEL_PROP_MAC_FIXED_RSS:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_FIXED_RSS>;
|
||||
break;
|
||||
#endif
|
||||
#endif // OPENTHREAD_MTD || OPENTHREAD_FTD
|
||||
#if OPENTHREAD_FTD
|
||||
case SPINEL_PROP_THREAD_ACTIVE_ROUTER_IDS:
|
||||
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_THREAD_ACTIVE_ROUTER_IDS>;
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
handler = NULL;
|
||||
}
|
||||
|
||||
return handler;
|
||||
}
|
||||
|
||||
} // namespace Ncp
|
||||
} // namespace ot
|
||||
+57
-57
@@ -139,17 +139,17 @@ exit:
|
||||
// MARK: Individual Property Handlers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_LOCAL_LEADER_WEIGHT(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_LOCAL_LEADER_WEIGHT>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otThreadGetLocalLeaderWeight(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_LEADER_WEIGHT(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_LEADER_WEIGHT>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otThreadGetLeaderWeight(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_CHILD_TABLE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_TABLE>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otChildInfo childInfo;
|
||||
@@ -173,7 +173,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_ROUTER_TABLE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_TABLE>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otRouterInfo routerInfo;
|
||||
@@ -207,7 +207,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_CHILD_TABLE_ADDRESSES(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_TABLE_ADDRESSES>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otChildInfo childInfo;
|
||||
@@ -244,12 +244,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_ROUTER_ROLE_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_ROLE_ENABLED>(void)
|
||||
{
|
||||
return mEncoder.WriteBool(otThreadIsRouterRoleEnabled(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_ROUTER_ROLE_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_ROLE_ENABLED>(void)
|
||||
{
|
||||
bool enabled;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -262,12 +262,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_NET_PSKC(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_NET_PSKC>(void)
|
||||
{
|
||||
return mEncoder.WriteData(otThreadGetPSKc(mInstance), sizeof(spinel_net_pskc_t));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_NET_PSKC(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_NET_PSKC>(void)
|
||||
{
|
||||
const uint8_t *ptr = NULL;
|
||||
uint16_t len;
|
||||
@@ -283,12 +283,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_CHILD_COUNT_MAX(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CHILD_COUNT_MAX>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otThreadGetMaxAllowedChildren(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_CHILD_COUNT_MAX(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_CHILD_COUNT_MAX>(void)
|
||||
{
|
||||
uint8_t maxChildren = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -301,12 +301,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_ROUTER_UPGRADE_THRESHOLD(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_UPGRADE_THRESHOLD>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otThreadGetRouterUpgradeThreshold(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_ROUTER_UPGRADE_THRESHOLD(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_UPGRADE_THRESHOLD>(void)
|
||||
{
|
||||
uint8_t threshold = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -319,12 +319,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_ROUTER_DOWNGRADE_THRESHOLD(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_DOWNGRADE_THRESHOLD>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otThreadGetRouterDowngradeThreshold(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_ROUTER_DOWNGRADE_THRESHOLD(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_DOWNGRADE_THRESHOLD>(void)
|
||||
{
|
||||
uint8_t threshold = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -337,12 +337,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_ROUTER_SELECTION_JITTER(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ROUTER_SELECTION_JITTER>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otThreadGetRouterSelectionJitter(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_ROUTER_SELECTION_JITTER(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ROUTER_SELECTION_JITTER>(void)
|
||||
{
|
||||
uint8_t jitter = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -355,12 +355,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_CONTEXT_REUSE_DELAY(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_CONTEXT_REUSE_DELAY>(void)
|
||||
{
|
||||
return mEncoder.WriteUint32(otThreadGetContextIdReuseDelay(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_CONTEXT_REUSE_DELAY(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_CONTEXT_REUSE_DELAY>(void)
|
||||
{
|
||||
uint32_t delay = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -373,12 +373,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_NETWORK_ID_TIMEOUT(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_NETWORK_ID_TIMEOUT>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otThreadGetNetworkIdTimeout(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_NETWORK_ID_TIMEOUT(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_NETWORK_ID_TIMEOUT>(void)
|
||||
{
|
||||
uint8_t timeout = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -392,12 +392,12 @@ exit:
|
||||
}
|
||||
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER
|
||||
otError NcpBase::GetPropertyHandler_THREAD_COMMISSIONER_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_COMMISSIONER_ENABLED>(void)
|
||||
{
|
||||
return mEncoder.WriteBool(otCommissionerGetState(mInstance) == OT_COMMISSIONER_STATE_ACTIVE);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_COMMISSIONER_ENABLED(uint8_t aHeader)
|
||||
otError NcpBase::HandlePropertySet_SPINEL_PROP_THREAD_COMMISSIONER_ENABLED(uint8_t aHeader)
|
||||
{
|
||||
bool enabled = false;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -417,7 +417,7 @@ exit:
|
||||
return PrepareLastStatusResponse(aHeader, ThreadErrorToSpinelStatus(error));
|
||||
}
|
||||
|
||||
otError NcpBase::InsertPropertyHandler_THREAD_JOINERS(void)
|
||||
template <> otError NcpBase::HandlePropertyInsert<SPINEL_PROP_THREAD_JOINERS>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
const otExtAddress *eui64 = NULL;
|
||||
@@ -439,7 +439,7 @@ exit:
|
||||
}
|
||||
#endif // OPENTHREAD_ENABLE_COMMISSIONER
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_LOCAL_LEADER_WEIGHT(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_LOCAL_LEADER_WEIGHT>(void)
|
||||
{
|
||||
uint8_t weight;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -454,12 +454,12 @@ exit:
|
||||
|
||||
#if OPENTHREAD_CONFIG_ENABLE_STEERING_DATA_SET_OOB
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_STEERING_DATA(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_STEERING_DATA>(void)
|
||||
{
|
||||
return mEncoder.WriteEui64(mSteeringDataAddress);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_STEERING_DATA(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_STEERING_DATA>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
@@ -472,7 +472,7 @@ exit:
|
||||
}
|
||||
#endif // #if OPENTHREAD_CONFIG_ENABLE_STEERING_DATA_SET_OOB
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_CHILD_TIMEOUT(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_CHILD_TIMEOUT>(void)
|
||||
{
|
||||
uint32_t timeout = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -485,12 +485,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_PREFERRED_ROUTER_ID(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_PREFERRED_ROUTER_ID>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(mPreferredRouteId);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_PREFERRED_ROUTER_ID(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_PREFERRED_ROUTER_ID>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
@@ -502,7 +502,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::RemovePropertyHandler_THREAD_ACTIVE_ROUTER_IDS(void)
|
||||
template <> otError NcpBase::HandlePropertyRemove<SPINEL_PROP_THREAD_ACTIVE_ROUTER_IDS>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
uint8_t routerId;
|
||||
@@ -523,7 +523,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_THREAD_ADDRESS_CACHE_TABLE(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_ADDRESS_CACHE_TABLE>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otEidCacheEntry entry;
|
||||
@@ -549,12 +549,12 @@ exit:
|
||||
}
|
||||
|
||||
#if OPENTHREAD_ENABLE_TMF_PROXY
|
||||
otError NcpBase::GetPropertyHandler_THREAD_TMF_PROXY_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_TMF_PROXY_ENABLED>(void)
|
||||
{
|
||||
return mEncoder.WriteBool(otTmfProxyIsEnabled(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_TMF_PROXY_STREAM(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_TMF_PROXY_STREAM>(void)
|
||||
{
|
||||
const uint8_t *framePtr = NULL;
|
||||
uint16_t frameLen = 0;
|
||||
@@ -589,7 +589,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_TMF_PROXY_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_TMF_PROXY_ENABLED>(void)
|
||||
{
|
||||
bool enabled;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -821,7 +821,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_ACTIVE_DATASET(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_ACTIVE_DATASET>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otOperationalDataset dataset;
|
||||
@@ -833,7 +833,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_PENDING_DATASET(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_PENDING_DATASET>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otOperationalDataset dataset;
|
||||
@@ -845,7 +845,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_MGMT_ACTIVE_DATASET(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_MGMT_ACTIVE_DATASET>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otOperationalDataset dataset;
|
||||
@@ -859,7 +859,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_THREAD_MGMT_PENDING_DATASET(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_THREAD_MGMT_PENDING_DATASET>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
otOperationalDataset dataset;
|
||||
@@ -875,12 +875,12 @@ exit:
|
||||
|
||||
#if OPENTHREAD_ENABLE_CHANNEL_MANAGER
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CHANNEL_MANAGER_NEW_CHANNEL(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_NEW_CHANNEL>(void)
|
||||
{
|
||||
return mEncoder.WriteUint8(otChannelManagerGetRequestedChannel(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_CHANNEL_MANAGER_NEW_CHANNEL(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_NEW_CHANNEL>(void)
|
||||
{
|
||||
uint8_t channel;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -893,12 +893,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CHANNEL_MANAGER_DELAY(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_DELAY>(void)
|
||||
{
|
||||
return mEncoder.WriteUint16(otChannelManagerGetDelay(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_CHANNEL_MANAGER_DELAY(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_DELAY>(void)
|
||||
{
|
||||
uint16_t delay;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -911,12 +911,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CHANNEL_MANAGER_SUPPORTED_CHANNELS(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_SUPPORTED_CHANNELS>(void)
|
||||
{
|
||||
return EncodeChannelMask(otChannelManagerGetSupportedChannels(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_CHANNEL_MANAGER_SUPPORTED_CHANNELS(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_SUPPORTED_CHANNELS>(void)
|
||||
{
|
||||
uint32_t channelMask = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -928,12 +928,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CHANNEL_MANAGER_FAVORED_CHANNELS(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_FAVORED_CHANNELS>(void)
|
||||
{
|
||||
return EncodeChannelMask(otChannelManagerGetFavoredChannels(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_CHANNEL_MANAGER_FAVORED_CHANNELS(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_FAVORED_CHANNELS>(void)
|
||||
{
|
||||
uint32_t channelMask = 0;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -945,12 +945,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CHANNEL_MANAGER_CHANNEL_SELECT(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_CHANNEL_SELECT>(void)
|
||||
{
|
||||
return mEncoder.WriteBool(false);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_CHANNEL_MANAGER_CHANNEL_SELECT(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_CHANNEL_SELECT>(void)
|
||||
{
|
||||
bool skipQualityCheck = false;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -962,12 +962,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CHANNEL_MANAGER_AUTO_SELECT_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_ENABLED>(void)
|
||||
{
|
||||
return mEncoder.WriteBool(otChannelManagerGetAutoChannelSelectionEnabled(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_CHANNEL_MANAGER_AUTO_SELECT_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_ENABLED>(void)
|
||||
{
|
||||
bool enabled = false;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -979,12 +979,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL>(void)
|
||||
{
|
||||
return mEncoder.WriteUint32(otChannelManagerGetAutoChannelSelectionInterval(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_CHANNEL_MANAGER_AUTO_SELECT_INTERVAL>(void)
|
||||
{
|
||||
uint32_t interval;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -999,12 +999,12 @@ exit:
|
||||
#endif // OPENTHREAD_ENABLE_CHANNEL_MANAGER
|
||||
|
||||
#if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC
|
||||
otError NcpBase::GetPropertyHandler_TIME_SYNC_PERIOD(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_TIME_SYNC_PERIOD>(void)
|
||||
{
|
||||
return mEncoder.WriteUint16(otNetworkTimeGetSyncPeriod(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_TIME_SYNC_PERIOD(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_TIME_SYNC_PERIOD>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
uint16_t timeSyncPeriod;
|
||||
@@ -1017,12 +1017,12 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_TIME_SYNC_XTAL_THRESHOLD(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_TIME_SYNC_XTAL_THRESHOLD>(void)
|
||||
{
|
||||
return mEncoder.WriteUint16(otNetworkTimeGetXtalThreshold(mInstance));
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_TIME_SYNC_XTAL_THRESHOLD(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_TIME_SYNC_XTAL_THRESHOLD>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
uint16_t xtalThreshold;
|
||||
|
||||
+170
-170
File diff suppressed because it is too large
Load Diff
+11
-11
@@ -178,13 +178,13 @@ exit:
|
||||
return;
|
||||
}
|
||||
|
||||
otError NcpBase::GetPropertyHandler_MAC_SRC_MATCH_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_MAC_SRC_MATCH_ENABLED>(void)
|
||||
{
|
||||
// TODO: Would be good to add an `otLinkRaw` API to give the the status of source match.
|
||||
return mEncoder.WriteBool(mSrcMatchEnabled);
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_SRC_MATCH_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SRC_MATCH_ENABLED>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
@@ -196,7 +196,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_SRC_MATCH_SHORT_ADDRESSES(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
@@ -217,7 +217,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_SRC_MATCH_EXTENDED_ADDRESSES(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
@@ -238,7 +238,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::RemovePropertyHandler_MAC_SRC_MATCH_SHORT_ADDRESSES(void)
|
||||
template <> otError NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
uint16_t shortAddress;
|
||||
@@ -251,7 +251,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::RemovePropertyHandler_MAC_SRC_MATCH_EXTENDED_ADDRESSES(void)
|
||||
template <> otError NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
const otExtAddress *extAddress;
|
||||
@@ -265,7 +265,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::InsertPropertyHandler_MAC_SRC_MATCH_SHORT_ADDRESSES(void)
|
||||
template <> otError NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_SRC_MATCH_SHORT_ADDRESSES>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
uint16_t shortAddress;
|
||||
@@ -278,7 +278,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::InsertPropertyHandler_MAC_SRC_MATCH_EXTENDED_ADDRESSES(void)
|
||||
template <> otError NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_SRC_MATCH_EXTENDED_ADDRESSES>(void)
|
||||
{
|
||||
otError error = OT_ERROR_NONE;
|
||||
const otExtAddress *extAddress = NULL;
|
||||
@@ -291,7 +291,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_PHY_ENABLED(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_PHY_ENABLED>(void)
|
||||
{
|
||||
bool value = false;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -323,7 +323,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_MAC_15_4_SADDR(void)
|
||||
template <> otError NcpBase::HandlePropertySet<SPINEL_PROP_MAC_15_4_SADDR>(void)
|
||||
{
|
||||
uint16_t shortAddress;
|
||||
otError error = OT_ERROR_NONE;
|
||||
@@ -336,7 +336,7 @@ exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
otError NcpBase::SetPropertyHandler_STREAM_RAW(uint8_t aHeader)
|
||||
otError NcpBase::HandlePropertySet_SPINEL_PROP_STREAM_RAW(uint8_t aHeader)
|
||||
{
|
||||
const uint8_t *frameBuffer = NULL;
|
||||
otRadioFrame * frame;
|
||||
|
||||
Reference in New Issue
Block a user