This module includes functions that control the Thread stack's execution.
Classes |
|
struct | otNcpLegacyHandlers |
Defines a struct containing all the legacy handlers (function pointers).
|
Macros |
|
#define | OT_NCP_LEGACY_ULA_PREFIX_LENGTH 8 |
Legacy ULA size (in bytes)
|
Typedefs |
|
typedef int(* | otNcpHdlcSendCallback ) (const uint8_t *aBuf, uint16_t aBufLength) |
This function pointer is called to send HDLC encoded NCP data.
|
|
typedef bool(* | otNcpDelegateAllowPeekPoke ) (uint32_t aAddress, uint16_t aCount) |
Defines delegate (function pointer) type to control behavior of peek/poke operation.
|
|
typedef void(* | otNcpHandlerStartLegacy ) (void) |
Defines handler (function pointer) type for starting legacy network.
|
|
typedef void(* | otNcpHandlerStopLegacy ) (void) |
Defines handler (function pointer) type for stopping legacy network.
|
|
typedef void(* | otNcpHandlerJoinLegacyNode ) (const otExtAddress *aExtAddress) |
Defines handler (function pointer) type for initiating joining process.
|
|
typedef void(* | otNcpHandlerSetLegacyUlaPrefix ) (const uint8_t *aUlaPrefix) |
Defines handler (function pointer) type for setting the legacy ULA prefix.
|
|
typedef struct otNcpLegacyHandlers | otNcpLegacyHandlers |
Defines a struct containing all the legacy handlers (function pointers).
|
Functions |
|
void | otNcpHdlcSendDone (void) |
This function is called after NCP send finished.
|
|
void | otNcpHdlcReceive (const uint8_t *aBuf, uint16_t aBufLength) |
This function is called after HDLC encoded NCP data received.
|
|
void | otNcpHdlcInit ( otInstance *aInstance, otNcpHdlcSendCallback aSendCallback) |
Initialize the NCP based on HDLC framing.
|
|
void | otNcpSpiInit ( otInstance *aInstance) |
Initialize the NCP based on SPI framing.
|
|
otError | otNcpStreamWrite (int aStreamId, const uint8_t *aDataPtr, int aDataLen) |
Send data to the host via a specific stream.
|
|
void | otNcpPlatLogv ( otLogLevel aLogLevel, otLogRegion aLogRegion, const char *aFormat, va_list aArgs) |
Writes OpenThread Log using
otNcpStreamWrite
.
|
|
void | otNcpRegisterPeekPokeDelagates ( otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate) |
This method registers peek/poke delegate functions with NCP module.
|
|
void | otNcpHandleLegacyNodeDidJoin (const otExtAddress *aExtAddr) |
This callback is invoked by the legacy stack to notify that a new legacy node did join the network.
|
|
void | otNcpHandleDidReceiveNewLegacyUlaPrefix (const uint8_t *aUlaPrefix) |
This callback is invoked by the legacy stack to notify that the legacy ULA prefix has changed.
|
|
void | otNcpRegisterLegacyHandlers (const otNcpLegacyHandlers *aHandlers) |
This method registers a set of legacy handlers with NCP.
|
Detailed Description
This module includes functions that control the Thread stack's execution.
Typedef Documentation
◆ otNcpDelegateAllowPeekPoke
typedef bool(* otNcpDelegateAllowPeekPoke) (uint32_t aAddress, uint16_t aCount) |
Defines delegate (function pointer) type to control behavior of peek/poke operation.
This delegate function is called to decide whether to allow peek or poke of a specific memory region. It is used if NCP support for peek/poke commands is enabled.
- Parameters
-
[in] aAddress
Start address of memory region. [in] aCount
Number of bytes to peek or poke.
- Returns
- TRUE to allow peek/poke of the given memory region, FALSE otherwise.
◆ otNcpHandlerJoinLegacyNode
typedef void(* otNcpHandlerJoinLegacyNode) (const otExtAddress *aExtAddress) |
Defines handler (function pointer) type for initiating joining process.
- Parameters
-
[in] aExtAddress
A pointer to the extended address for the node to join or NULL if desired to join any neighboring node.
Invoked to initiate a legacy join procedure to any or a specific node.
◆ otNcpHandlerSetLegacyUlaPrefix
typedef void(* otNcpHandlerSetLegacyUlaPrefix) (const uint8_t *aUlaPrefix) |
Defines handler (function pointer) type for setting the legacy ULA prefix.
- Parameters
-
[in] aUlaPrefix
A pointer to buffer containing the legacy ULA prefix.
Invoked to set the legacy ULA prefix.
◆ otNcpHandlerStartLegacy
typedef void(* otNcpHandlerStartLegacy) (void) |
Defines handler (function pointer) type for starting legacy network.
Invoked to start the legacy network.
◆ otNcpHandlerStopLegacy
typedef void(* otNcpHandlerStopLegacy) (void) |
Defines handler (function pointer) type for stopping legacy network.
Invoked to stop the legacy network.
◆ otNcpHdlcSendCallback
typedef int(* otNcpHdlcSendCallback) (const uint8_t *aBuf, uint16_t aBufLength) |
This function pointer is called to send HDLC encoded NCP data.
- Parameters
-
[in] aBuf
A pointer to a buffer with an output. [in] aBufLength
A length of the output data stored in the buffer.
- Returns
- Number of bytes processed by the callback.
Function Documentation
◆ otNcpHandleDidReceiveNewLegacyUlaPrefix()
void otNcpHandleDidReceiveNewLegacyUlaPrefix | ( | const uint8_t * |
aUlaPrefix
|
) |
This callback is invoked by the legacy stack to notify that the legacy ULA prefix has changed.
- Parameters
-
[in] aUlaPrefix
A pointer to the received ULA prefix.
◆ otNcpHandleLegacyNodeDidJoin()
void otNcpHandleLegacyNodeDidJoin | ( | const otExtAddress * |
aExtAddr
|
) |
This callback is invoked by the legacy stack to notify that a new legacy node did join the network.
- Parameters
-
[in] aExtAddr
A pointer to the extended address of the joined node.
◆ otNcpHdlcInit()
void otNcpHdlcInit | ( | otInstance * |
aInstance,
|
otNcpHdlcSendCallback |
aSendCallback
|
||
) |
Initialize the NCP based on HDLC framing.
- Parameters
-
[in] aInstance
The OpenThread instance structure. [in] aSendCallback
The function pointer used to send NCP data.
◆ otNcpHdlcReceive()
void otNcpHdlcReceive | ( | const uint8_t * |
aBuf,
|
uint16_t |
aBufLength
|
||
) |
This function is called after HDLC encoded NCP data received.
- Parameters
-
[in] aBuf
A pointer to a buffer. [in] aBufLength
The length of the data stored in the buffer.
◆ otNcpPlatLogv()
void otNcpPlatLogv | ( | otLogLevel |
aLogLevel,
|
otLogRegion |
aLogRegion,
|
||
const char * |
aFormat,
|
||
va_list |
aArgs
|
||
) |
Writes OpenThread Log using
otNcpStreamWrite
.
- Parameters
-
[in] aLogLevel
The log level. [in] aLogRegion
The log region. [in] aFormat
A pointer to the format string. [in] aArgs
va_list matching aFormat.
◆ otNcpRegisterLegacyHandlers()
void otNcpRegisterLegacyHandlers | ( | const otNcpLegacyHandlers * |
aHandlers
|
) |
This method registers a set of legacy handlers with NCP.
The set of handlers provided by the struct
aHandlers
are used by NCP code to start/stop legacy network. The
aHandlers
can be NULL to disable legacy support on NCP. Individual handlers in the given handlers struct can also be NULL.
- Parameters
-
[in] aHandlers
A pointer to a handler struct.
◆ otNcpRegisterPeekPokeDelagates()
void otNcpRegisterPeekPokeDelagates | ( | otNcpDelegateAllowPeekPoke |
aAllowPeekDelegate,
|
otNcpDelegateAllowPeekPoke |
aAllowPokeDelegate
|
||
) |
This method registers peek/poke delegate functions with NCP module.
The delegate functions are called by NCP module to decide whether to allow peek or poke of a specific memory region. If the delegate pointer is set to NULL, it allows peek/poke operation for any address.
- Parameters
-
[in] aAllowPeekDelegate
Delegate function pointer for peek operation. [in] aAllowPokeDelegate
Delegate function pointer for poke operation.
◆ otNcpSpiInit()
void otNcpSpiInit | ( | otInstance * |
aInstance
|
) |
Initialize the NCP based on SPI framing.
- Parameters
-
[in] aInstance
The OpenThread instance structure.
◆ otNcpStreamWrite()
otError otNcpStreamWrite | ( | int |
aStreamId,
|
const uint8_t * |
aDataPtr,
|
||
int |
aDataLen
|
||
) |
Send data to the host via a specific stream.
This function attempts to send the given data to the host using the given aStreamId. This is useful for reporting error messages, implementing debug/diagnostic consoles, and potentially other types of datastreams.
The write either is accepted in its entirety or rejected. Partial writes are not attempted.
- Parameters
-
[in] aStreamId
A numeric identifier for the stream to write to. If set to '0', will default to the debug stream. [in] aDataPtr
A pointer to the data to send on the stream. If aDataLen is non-zero, this param MUST NOT be NULL. [in] aDataLen
The number of bytes of data from aDataPtr to send.
- Return values
-
OT_ERROR_NONE
The data was queued for delivery to the host. OT_ERROR_BUSY
There are not enough resources to complete this request. This is usually a temporary condition. OT_ERROR_INVALID_ARGS
The given aStreamId was invalid.