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

21316 Commits

Author SHA1 Message Date
Martine Lenders
d680aeae07 gnrc_ipv6_nib: use gnrc_netif_get_eui64() for ARO build and check 2019-01-29 21:52:53 +01:00
Martine Lenders
0fa8419c4a gnrc_netif: wrap _ipv6_iid_from_addr() around _eui64_from_addr() 2019-01-29 21:52:53 +01:00
Martine Lenders
16e7fc8336 gnrc_netif: introduce L2 address to EUI-64 conversion 2019-01-29 21:52:53 +01:00
Martine Lenders
a2b2f96fe3 gnrc_netif: rename _create_iid_from_short() to emphesize EUI-64 2019-01-29 21:52:53 +01:00
Martine Lenders
9468342e44 eui48: wrap eui48_to_ipv6_iid() around eui48_to_eui64() 2019-01-29 21:52:53 +01:00
Martine Lenders
963b405312 eui48: introduce eui48_to_eui64() function 2019-01-29 21:52:53 +01:00
Federico Pellegrin
409d83e087 sam0 flashpage: minor code style fixes 2019-01-29 20:58:46 +01:00
Marian Buschsieweke
a81d39494f
drivers/w5100: Fix recv() with too small buffer
If netdev_driver_t::recv() is called and the provided buffer is smaller than
the frame then `-ENOBUFS` should be returned, the frame should be dropped, and
no data of the frame should be returned.

Addresses: https://github.com/RIOT-OS/RIOT/issues/10413
2019-01-29 20:38:56 +01:00
Marian Buschsieweke
ea3edef5c7
drivers/w5100: Added missing drop implementation
The netdev_driver_t::recv implementation of the w5100 does not provide the
drop feature. This commit adds it.

Fixes: https://github.com/RIOT-OS/RIOT/issues/10410
2019-01-29 20:36:37 +01:00
Gunar Schorcht
975fba8265 cpu/esp8266: check free heap before pbuf alloc
Checking by the send function that at least two maximum size Ethernet frames fit in the remaining heap before the LwIP packet buffer is allocated seems to increase stability. This can be caused by the fact that WLAN hardware interrupts allocate additional memory when receiving a frame during the send attempt.
2019-01-29 18:16:21 +01:00
82b2362bc3 core/msg: add assert for problem identified in #10881 2019-01-28 17:14:16 +01:00
62bb4cc526 cpu/native: fix race condition in thread_yield_higher()
Error case:
1. thread_yield_higher() stores the thread's ucontext
2. creates an "isr ucontext" for isr_thread_yield, switches to it

Case 1: no signals are pending, continues in isr_thread_yield()
3a. sched_run is called
4a. return to sched_active_thread ucontext

Case 2: signals pending (the crashing scenario), continues in native_irq_handler()
3b. handles signals
4b. if sched_context_switch_request is set, call sched_run
5b. return to sched_active_thread ucontext

4b misses the call to sched_run(), leading to a possible return into a
non-ready thread.
2019-01-28 17:12:01 +01:00
782b181b63
Merge pull request #10887 from aabadie/pr/make/distclean_cleanup
tests: remove leftover test targets in test application makefiles
2019-01-28 16:25:02 +01:00
Martine Lenders
caa1d0b8e5
Merge pull request #10755 from maribu/ltc4150-new
drivers/ltc4150: (Re-)implemented driver for the LTC4150 coulomb counter
2019-01-28 15:05:53 +01:00
Marian Buschsieweke
075ad47bb3
tests/driver_ltc4150: BOARD_INSUFFICIENT_MEMORY 2019-01-28 13:53:47 +01:00
Marian Buschsieweke
2ba57ac00c
tests/driver_ltc4150: Workarround for msp430
The msp430 toolchain is missing an `fputs()` implementation. This commit makes
them use the `printf("%s", str);` instead of `fputs(str, stdout);`, which is
semantically equivalent (but has more overhead).
2019-01-28 13:53:38 +01:00
Marian Buschsieweke
618e2e58d5
tests: Added test for ltc4150 driver 2019-01-28 13:50:42 +01:00
Gaëtan Harter
566c990eba
makefiles/toolchain: fix command -v multiple commands
`command -v first second third` only works in `bash` and not in `sh`.
So replace with multiple calls to `command`.

This fixes using `objcopy` when the toolchain `objcopy` is not available.
2019-01-28 13:48:20 +01:00
Marian Buschsieweke
db0c66e07f
drivers/ltc4150: Allow tracking last minute charge
Implemented an example `ltc4150_recorder_t` implementation as a proof of concept
for the recorder API.
2019-01-28 13:45:45 +01:00
Marian Buschsieweke
fa0d08a08b
boards/msba2: Added ltc4150 to saul_default 2019-01-28 13:45:08 +01:00
Marian Buschsieweke
c434c5cd3a
drivers/saul: Integrated ltc4150 2019-01-28 13:44:45 +01:00
Marian Buschsieweke
c00886ac39
drivers/ltc4150: (Re-)implemented LTC4150 driver
The LTC4150 is a coulomb counter (a.k.a. battery sensor or bidirectional
current sensor) that is used in the MSBA2 board and available for little money
as easy to use break out board.
2019-01-28 13:44:16 +01:00
Marian Buschsieweke
5acd87bf6f
tests/saul: Updated BOARD_INSUFFICIENT_MEMORY 2019-01-28 13:33:27 +01:00
Marian Buschsieweke
ac98c98a0d
drivers/saul: Added coulomb counter & ammeter 2019-01-28 13:33:18 +01:00
Marian Buschsieweke
cc0e6dc779
sys/phydat: Added unit Coulomb 2019-01-28 13:33:16 +01:00
Marian Buschsieweke
d180339e5a
sys/shell: Removed fragments of old driver
The shell handlers of the old, depreciated and removed LTC4150 driver are still
in place. This commit removes them
2019-01-28 13:33:14 +01:00
9bf82ecd16
tests/pkg_cmsis-dsp: remove useless test target 2019-01-28 10:26:36 +01:00
3ef9707e40
tests/cond_order: remove useless test target 2019-01-28 10:26:20 +01:00
Martine Lenders
579925b81d
Merge pull request #10879 from miri64/shell_commands/fix/nib-check-iface
sc_gnrc_ipv6_nib: check interface existence
2019-01-28 09:46:28 +01:00
Peter Kietzmann
7cd93e766b
Merge pull request #10885 from MrKevinWeiss/pr/copywrite
doc: Update copywrites it include HAW
2019-01-28 09:39:17 +01:00
Martine Lenders
28204e0a4f sc_gnrc_ipv6_nib: check interface existence
Currently an interface's existence is not checked when it is supplied
by the user with the `nib` command. This can lead to assertion errors
as soon as the generated entry tries to resolve an address or route
generated with that command and the network interface not being found.
2019-01-28 09:16:51 +01:00
MrKevinWeiss
957cc83cc6 doc: Update copywrites it include HAW 2019-01-28 09:08:50 +01:00
eb79ba0400
tests/pkg_lora-serialization: remove useless test target 2019-01-27 19:39:26 +01:00
Gunar Schorcht
c81138367b cpu/esp8266: dbg msg replaced by an error msg
The situation where the firmware `lwIP` packet buffer is exhausted is an important indication that the traffic sent to and sent from the esp8266 is more than the esp8266 is able to handle. Therefore, it should be an error message.
2019-01-27 12:14:18 +01:00
Federico Pellegrin
051be66b76 sam0 flashpage: wait for READY bit in INTFLAG after write command 2019-01-27 07:39:10 +01:00
Gunar Schorcht
fa48e3f51f cpu/esp8266: event handling for link up/down 2019-01-26 17:34:13 +01:00
Gunar Schorcht
4e41afa2fb cpu/esp8266: readable disconn reasons in esp_wifi 2019-01-26 17:33:28 +01:00
Gunar Schorcht
1a8a560bb5 cpu/esp8266: remove timeout handling in send func
It is not necessary to realize timeout handling in send function or to disconnect from AP if lwIP packet buffer is exhausted. Waiting that the frame allocated in lwIP packet buffer is freed by MAC layer led to the complete blockage of send function on heavy network load. Disconnecting from AP is counterproductive since reconnecting usually fails on heavy network load.
2019-01-26 17:32:04 +01:00
Gunar Schorcht
fa5fe7e48f cpu/esp8266: don't disconnect on pbuf full in send
Disconnecting from the AP in the send function if the lwIP packet buffer is exhausted is counterproductive since reconnecting usually fails on heavy network load. A better strategy is to slow down the sending of MAC frames from netif a bit to wait for flushing the buffer in the MAC layer.
2019-01-26 17:23:21 +01:00
Anton Gerasimov
19d2ef736c kinetis: limit scope of a variable in ics.c to make Codacy happy
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-01-26 15:53:05 +01:00
Anton Gerasimov
40bcfc9211 kinetis: add support for S9KEAZ128
Signed-off-by: Anton Gerasimov <anton.gerasimov@here.com>
2019-01-26 15:53:05 +01:00
Martine Lenders
bdd2d52fd5
Merge pull request #10797 from kaspar030/add_unaligned
sys: add unaligned.h (header for alignment safe value-from-pointer functions)
2019-01-26 13:09:20 +01:00
Gunar Schorcht
5d0b447209 cpu/esp8266: auto reconnect in esp_wifi
It seems to be more stable and less memory consuming to use auto reconnect policy.
2019-01-25 23:59:42 +01:00
Gunar Schorcht
457ef97d74 cpu/esp8266: lwIP dummy functions added
Defines a number of lwIP functions that are required as symbols by Espressif's SDK libraries. These functions are only dummies without real functionality. Using these functions instead of real lwIP functions provided with the SDK saves arround 4 kBytes of RAM.
2019-01-25 23:59:42 +01:00
Gunar Schorcht
24b71a7fbe cpu/esp8266: call _recv directly in esp_wifi
Since _esp_wifi_recv_cb is not executed in interrupt context but in the context of the `ets` thread, it is not necessary to pass the`NETDEV_EVENT_ISR` event first. Instead, the receive function can be called directly which result in much faster handling, a less frame lost rate and more robustness.
2019-01-25 23:59:42 +01:00
Gunar Schorcht
f12606d7c0 cpu/esp8266: removes the mutex in esp_wifi
Since _esp_wifi_recv_cb is not executed in interrupt context but in the context of the `ets` thread, the receive function can be called directly. There is no need for a mutex anymore to synchronize the access to the receive buffer between _esp_wifi_recv_cb and _recv function.
2019-01-25 23:59:42 +01:00
6cd81dbc87
Merge pull request #10865 from kaspar030/uncrustify_change_disable_hint
uncrustify: change en/disable markers
2019-01-25 22:40:02 +01:00
344af9c479 sys/checksum/fletcher32: make use of unaligned.h 2019-01-25 22:22:45 +01:00
c85d33f305 sys/include/unaligned: initial commit 2019-01-25 22:22:45 +01:00
Martine Lenders
c8dd8d114d
Merge pull request #10819 from miri64/doc/enh/paper
doc: add reference to RIOT paper
2019-01-25 21:33:47 +01:00