xSemaphoreTake() returned before the fix: pdFALSE(equal to pdFAIL) when the call was successful in obtaining the semaphore
and pdTRUE(equal to pdPASS) when the call did not successfully obtain the semaphore.
According to freertos documentation:
"pdPASS Returned only if the call to xSemaphoreTake() was successful in obtaining the semaphore"
"pdFAIL Returned if the call to xSemaphoreTake() did not successfully obtain the semaphore."
Fixed it to return the correct value.
Added test for freertos. Only for BOARD:esp32-wroom-32 at the moment.
At the moment it only tests xSemaphoreTake(), xSemaphoreTakeRecursive() and the creation of the semaphore.
It creates the semaphore and calls take for it multiple times and checks whether the return value is correct.
Take should return (quote freertos documention):
"pdPASS Returned only if the call to xSemaphoreTakeRecursive() was successful in obtaining the semaphore."
"pdFAIL Returned if the call to xSemaphoreTakeRecursive() did not successfully obtain the semaphore."
The same for xSemaphoreTake().
The future goal for this test is to test the complete freertos compatibility layer
and to have the test for a general freertos compatibility layer that does not only work for esp32.
Also remove binding of the DNS server to 2001:db8::1. It causes
`dnsmasq` to send router advertisements from that address, which is
not a [valid source for RAs][RFC 4861], so a default route is never
configured on the RIOT to reach the DNS server.
[RFC 4861]: https://tools.ietf.org/html/rfc4861#section-6.1.2
[tinydtls] Makefile: Updated PKG_URL
The tinydtls repository has moved from Eclipse Gerrit to GitHub [1].
PKG_URL now points to the new direction and PKG_VERSION was updated
to the HEAD of the develop branch.
[1] https://github.com/eclipse/tinydtls.git
The following functions can now be wrapped around the more generalized
approach:
- gnrc_netif_ipv6_iid_from_addr()
- gnrc_netif_ipv6_iid_to_addr()
- gnrc_netif_ndp_addr_len_from_l2ao()
- gnrc_netif_eui64_from_addr()
This defines a new 'isrpipe_read_timeout' module that should be used when using
the timeout based function of isrpipe.
This fix the implicit dependency to 'xtimer' that is only needed for the
'_timeout' functions.
It prevents 'stdio_uart' that uses 'isrpipe' to need to depend on xtimer.
This was silently solved at link time for most platforms but not for the
'esp32' for example.
'drivers/at' needed to be updated at the same time to follow the api change.