You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 6, 2024. It is now read-only.
I'm not sure this otrTaskNotifyGive() line is necessary. If a user makes an OpenThread call using the OT_API_CALL(...) macro from another FreeRTOS task and a call to otTaskletsProcess() is required, won't the callback otSysEventSignalPending() be called which also calls otrTaskNotifyGive()? It seems this would duplicate the call to otrTaskNotifyGive(). Not that big of a deal because each call to otrTaskNotifyGive() will just run the application loop an extra time, but if you're running a low-power application you wouldn't really want that.
So as an example: Calling OT_API_CALL(otSetStateChangedCallback) wouldn't actually require a call to otTaskletsProcess() but the macro OT_API_CALL(...) would force a call to that application layer function anyway.
Thanks
The text was updated successfully, but these errors were encountered:
To further this idea: The callbacks for both otSysEventSignalPending and otTaskletsSignalPending both call otrTaskNotifyGive. So notifying the task in the macro OT_API_CALL(...) is going to be redundant I believe.
ot-rtos/include/openthread/openthread-freertos.h
Line 132 in a6e1c6a
I'm not sure this
otrTaskNotifyGive()
line is necessary. If a user makes an OpenThread call using theOT_API_CALL(...)
macro from another FreeRTOS task and a call tootTaskletsProcess()
is required, won't the callbackotSysEventSignalPending()
be called which also callsotrTaskNotifyGive()
? It seems this would duplicate the call tootrTaskNotifyGive()
. Not that big of a deal because each call tootrTaskNotifyGive()
will just run the application loop an extra time, but if you're running a low-power application you wouldn't really want that.So as an example: Calling
OT_API_CALL(otSetStateChangedCallback)
wouldn't actually require a call tootTaskletsProcess()
but the macroOT_API_CALL(...)
would force a call to that application layer function anyway.Thanks
The text was updated successfully, but these errors were encountered: