Multipan#

This module includes the platform abstraction for multipan support.

Functions#

otPlatMultipanGetActiveInstance(otInstance **aInstance)

Get instance currently in control of the radio.

otPlatMultipanSetActiveInstance(otInstance *aInstance, bool aCompletePending)

Set aInstance as the current active instance controlling radio.

void
otPlatMultipanSwitchoverDone(otInstance *aInstance, bool aSuccess)

The platform completed the interface switching procedure.

Get the instance pointer corresponding to the given IID.

uint8_t
otPlatMultipanInstanceToIid(otInstance *aInstance)

Get the IID corresponding to the given OpenThread instance pointer.

Function Documentation#

otPlatMultipanGetActiveInstance#

otError otPlatMultipanGetActiveInstance (otInstance ** aInstance)

Get instance currently in control of the radio.

Parameters
[out]aInstance

Pointer to the variable for storing the active instance pointer.

If radio does not operate in parallel on all interfaces, this function returns an instance object with granted radio access.


Definition at line 82 of file include/openthread/platform/multipan.h

otPlatMultipanSetActiveInstance#

otError otPlatMultipanSetActiveInstance (otInstance * aInstance, bool aCompletePending)

Set aInstance as the current active instance controlling radio.

Parameters
[in]aInstance

The OpenThread instance structure.

[in]aCompletePending

True if ongoing radio operation should complete before interface switch (Soft switch), false for force switch.

This function allows selecting the currently active instance on platforms that do not support parallel communication on multiple interfaces. In other words, if more than one instance is in a receive state, calling otPlatMultipanSetActiveInstance guarantees that specified instance will be the one receiving. This function returns if the request was received properly. After interface switching is complete, the platform should call otPlatMultipanSwitchoverDone. Switching interfaces may take longer if aCompletePending is set true.


Definition at line 104 of file include/openthread/platform/multipan.h

otPlatMultipanSwitchoverDone#

void otPlatMultipanSwitchoverDone (otInstance * aInstance, bool aSuccess)

The platform completed the interface switching procedure.

Parameters
[in]aInstance

The OpenThread instance structure.

[in]aSuccess

True if successfully switched the interfaces, false if switching failed.

Should be invoked immediately after processing otPlatMultipanSetActiveInstance if no delay is needed, or if some longer radio operations need to complete first, after the switch in interfaces is fully complete.


Definition at line 116 of file include/openthread/platform/multipan.h

otPlatMultipanIidToInstance#

otInstance * otPlatMultipanIidToInstance (uint8_t aIid)

Get the instance pointer corresponding to the given IID.

Parameters
[in]aIid

The IID of the interface.


Definition at line 125 of file include/openthread/platform/multipan.h

otPlatMultipanInstanceToIid#

uint8_t otPlatMultipanInstanceToIid (otInstance * aInstance)

Get the IID corresponding to the given OpenThread instance pointer.

Parameters
[in]aInstance

The OpenThread instance structure.


Definition at line 134 of file include/openthread/platform/multipan.h