1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

20632 Commits

Author SHA1 Message Date
Gunar Schorcht
3bb28c989b cpu/esp: esp_now timer restart for peer-scan moved
Timer restart was moved from esp_now_scan_peers_done to esp_now_scan_peers_start to avoid that the scan for peers isn't triggered anymore if the esp_now_scan_peers_done callback isn't called because of errors.
2019-01-07 18:36:35 +01:00
Gunar Schorcht
26cec66be5 cpu/esp: _get_iid removed in esp_now_netdev 2019-01-07 18:27:24 +01:00
Gunar Schorcht
56b3643ad6 cpu/esp: buffer in esp_now_netdev removed
Since it is not possible to reenter the function `esp_now_recv_cb`, and the functions netif::_ recv and esp_now_netdev::_ recv are called directly in the same thread context we can read directly from the `buf` and don't need a receive buffer anymmore.
2019-01-03 17:22:19 +01:00
Gunar Schorcht
3888c62f61 cpu/esp: ringbuffer removed from esp_now_netdev
Since it is not possible to reenter the function `esp_now_recv_cb`, and the functions netif::_ recv and esp_now_netdev::_ recv are called directly in the same thread context we only need a buffer which contains one frame and its source mac address.
2019-01-03 16:01:02 +01:00
Gunar Schorcht
d8ee8020c6 cpu/esp: remove rx_lock mutex in esp_now_netdev
Since it is not possible to reenter the function `esp_now_recv_cb`, and the functions netif::_ recv and esp_now_netdev::_ recv are called directly in the same thread context, neither a mutual exclusion has to be realized nor have the interrupts to be deactivated.
2019-01-03 14:52:57 +01:00
Gunar Schorcht
00730b41e0 cpu/esp: direct call _recv in esp_now_recv_cb
Since the esp_now_recv_cb function is not called directly as an ISR through interrupts, it is not executed in the interrupt context. _recv can therefore be called directly. The treatment of the recv_event is no longer necessary.
2019-01-03 14:39:27 +01:00
Gunar Schorcht
a2f5c9d02f cpu/esp: avoid reentrance of esp_now_recv_cb
Although it should not be possible to reenter the function esp_now_recv_cb, this is avoided by an additional boolean variable. It can not be realized by mutex because it would reenter from same thread context.  If macro NDEBUG is not defined, an assertion is used.
2019-01-03 14:01:51 +01:00
Gunar Schorcht
9b5a77f1c4 cpu/esp: fix of lost esp_now_netdev ISR events 2019-01-03 13:36:21 +01:00
Gunar Schorcht
a36366f9a9 cpu/esp: api change in esp_now_netdev::_recv
Newest version of API requires to drop the frame when if parameter len is smaller than the received packet.
2019-01-03 13:35:09 +01:00
Gunar Schorcht
49c64c01a8 cpu/esp: simplified esp_now_netdev::_recv function
Simplifies the _recv receive function structure of esp_now_netdev according to the possible parameter values.
2019-01-03 13:33:25 +01:00
Gunar Schorcht
d3f78a5a40
Merge pull request #10679 from miri64/gnrc_sixlowpan_frag/fix/send-check-msg-queue
gnrc_sixlowpan_frag: check if own message queue is full
2018-12-30 15:48:26 +01:00
Gunar Schorcht
934c4225d2
Merge pull request #10680 from miri64/gnrc_sixlowpan_frag/fix/rbuf-full-release
gnrc_sixlowpan_frag: release packet rbuf_add error cases
2018-12-30 15:47:59 +01:00
Martine Lenders
e8da744e6d gnrc_sixlowpan_frag: release packet when frag hdr can't be marked
Otherwise, there will be leaks ;-).
2018-12-30 01:05:34 +01:00
Martine Lenders
a409603f84 gnrc_sixlowpan_frag: release packet when rbuf is full
Otherwise, there will be leaks ;-).
2018-12-30 00:59:04 +01:00
Martine Lenders
9e3cdebae1 gnrc_sixlowpan_frag: check if own message queue is full
When issueing the sending of the next fragment the current version of
`gnrc_sixlowpan_frag` doesn't check if the queue is full. This leads to
leakage of the packet buffer, since when it is full, the package never
gets released.

This change adds a checks and error exits in case the queue is full.
2018-12-29 22:54:52 +01:00
Martine Lenders
d5bbf45d32 gnrc_sixlowpan_frag: reduce code duplication in send 2018-12-29 22:54:14 +01:00
Gunar Schorcht
a87c2c9563
Merge pull request #10675 from miri64/dist/enh/print-toolchain-version-xtensa
print_toolchain_versions.sh: add xtensa toolchains
2018-12-29 15:44:44 +01:00
Martine Lenders
4887b22ef5 print_toolchain_versions.sh: add xtensa newlibs 2018-12-29 15:26:36 +01:00
Martine Lenders
fa3d617e2e
Merge pull request #10657 from maribu/netdev_driver_pre
netdev_driver_t::recv(): Clarified documentation
2018-12-29 14:34:42 +01:00
Martine Lenders
745574266c print_toolchain_versions.sh: add xtensa toolchains 2018-12-29 14:28:08 +01:00
Martine Lenders
7bdbd163c9 print_toolchain_versions.sh: make lists easily diff-able 2018-12-29 14:27:35 +01:00
Martine Lenders
5dda85f54d
Merge pull request #10581 from TimoRoth/master
esp_now: avoid parsing IPv6 header in netdev driver
2018-12-29 14:08:38 +01:00
Marian Buschsieweke
58f496de47
netdev_driver_t::recv: Extend doc on size feature
Some drivers return on netdev_driver_t::recv() not the actual frame size, but
an upper bound estimation of it. The upper layer code is already prepared to
handle that. This brings the doc in sync with the code.
2018-12-29 13:59:58 +01:00
Timo Rothenpieler
814e4ecbbe gnrc_netif: ESP-NOW talks 6Lo now 2018-12-29 13:15:44 +01:00
Timo Rothenpieler
6be81fbd93 esp_now: use custom netif instead of raw one
Avoids parsing IPv6 packets to determine destination address.
Allows using 6Lo over ESP-NOW, which is required due to the low MTU of
ESP-NOW.

Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2018-12-29 13:15:44 +01:00
Marian Buschsieweke
e81b6191aa
netdev_driver_t::recv: Clarified small buf case
Clarified in the documentation how netdev_driver_t::recv() should behave in case
the size of the buffer in parameter buf (indicated by parameter len) is to small
to fit the received frame.
2018-12-28 20:23:19 +01:00
Marian Buschsieweke
87055d7b6d
netdev_driver_t::recv: Added drop and size to doc
netdev_driver_t::recv does on of three things:
 - Receive the frame
 - Drop it
 - Get (an estimation of) the size of the frame

The brief section of the documentation was changed to reflect this. (And it
starts with the least obvious thing in the hope readers of the API stumble upon
it...)
2018-12-28 20:23:11 +01:00
Marian Buschsieweke
b6069eb5f5
netdev_driver_t::recv: Fixed preconditions in doc
Removed the invalid precondition in netdev_driver_t::recv that the buffer never
NULL and the length positive. (In the "get message size" case both is wrong, in
the drop message case the first part is wrong.)
2018-12-28 20:22:57 +01:00
Timo Rothenpieler
34c42cbcc2 esp_now: code style amendments 2018-12-28 13:35:46 +01:00
Timo Rothenpieler
a46023a523 esp_now: remove unnecessary ifdef 2018-12-28 13:35:46 +01:00
Martine Lenders
07ceddd9b1
Merge pull request #10668 from miri64/esp_now/doc/fix-grouping
esp_now: fix doxygen groups
2018-12-28 13:17:33 +01:00
Martine Lenders
9f0dfb5222 esp_now: fix doxygen groups 2018-12-28 12:14:16 +01:00
Martine Lenders
9f51e15889
Merge pull request #10606 from aabadie/pr/tests/posix_semaphore_timeout_margin
tests/posix_semaphore: increase timeout margin
2018-12-28 12:10:10 +01:00
Martine Lenders
b0f64dbb98
Merge pull request #9847 from aabadie/pr/tools/pyocd
dist/tools: add support for PyOCD programmer/debugger
2018-12-28 12:09:51 +01:00
Martine Lenders
e13bc4285b
Merge pull request #10191 from fedepell/at_recv_bytes_1
drivers/at: add function to read raw data bytes from modem
2018-12-28 12:09:35 +01:00
4b11509b0f
Merge pull request #10669 from OTAkeys/pr/sx127x_irq
drivers/sx127x: remove irq_disable/irq_restore around spi transfers
2018-12-28 10:42:12 +01:00
Vincent Dupont
6b82b8490b drivers/sx127x: remove irq_disable/irq_restore around spi transfers 2018-12-28 09:36:00 +01:00
Lotte Steenbrink
b6b4fed26d
Merge pull request #10659 from miri64/gnrc_sixlowpan/enh/netapi-doc
gnrc_sixlowpan: amend gnrc_netapi introduction
2018-12-27 23:21:20 +01:00
Martine Lenders
def3aa9b65
Merge pull request #10629 from miri64/gnrc_netif/cleanup/mac-flags
gnrc_netif: remove superfluous GNRC_NETIF_FLAGS_MAC_*
2018-12-27 19:56:00 +01:00
Martine Lenders
380d19e9d2
Merge pull request #10660 from aabadie/pr/periph/stm32_lpuart_l496zg
boards/nucleo-l496zg: use lpuart1 as stdio interface
2018-12-27 19:32:17 +01:00
Martine Lenders
dd55c792c5
Merge pull request #10574 from haukepetersen/add_bluetil_ad
net/ble: add generic advertisement data (AD) processing helper
2018-12-27 19:30:43 +01:00
Martine Lenders
7414ddb5d6
Merge pull request #10663 from gschorcht/cpu_esp_common
cpu: esp_common added for common modules of ESP SoCs
2018-12-27 19:25:35 +01:00
Gunar Schorcht
797a894e40 cpu/esp32: esp_now netdev moved to esp_common 2018-12-27 17:31:34 +01:00
Gunar Schorcht
a352500476 cpu/esp_common: added for common files for ESP SoC 2018-12-27 17:28:46 +01:00
f682476c87 boards/nucleo-l496zg: adapt conf to lpuart driver
Co-authored-by: Vincent Dupont <vincent@otakeys.com>
2018-12-27 14:16:05 +01:00
b2c3df3381 cpu/stm32/gpio: power up port G with L4
Co-authored-by: Vincent Dupont <vincent@otakeys.com>
2018-12-27 14:15:25 +01:00
Martine Lenders
b5ba43b517 gnrc_sixlowpan: amend gnrc_netapi introduction 2018-12-27 14:06:35 +01:00
Gunar Schorcht
e07ea98bc3
Merge pull request #10536 from miri64/gnrc_ipv6_nib/bug/correct-reverse
gnrc_ipv6_nib: use correct reverse-translate for ARSM-less NCE
2018-12-27 10:44:23 +01:00
Martine Lenders
f160849e8a gnrc_ipv6_nib: use correct reverse-translate for ARSM-less NCE
The current implementation uses the assumption that the IPv6 address is
always based on an EUI-64, which it doesn't has to.
2018-12-27 10:21:31 +01:00
Martine Lenders
66e4532898
Merge pull request #10652 from Lotterleben/icmpv6_fix_typos
icmpv6.h: fix two small typos
2018-12-25 10:24:51 +01:00