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

21167 Commits

Author SHA1 Message Date
Martine Lenders
fbe43634d9
Merge pull request #10844 from maribu/ethernet_shield
boards/arduino*: Added/refactored params for W5100
2019-01-24 11:59:43 +01:00
Jose Alamos
65e985d649 net/netreg: fix static netreg init macros 2019-01-24 11:44:17 +01:00
danpetry
6e21c92418
Merge pull request #10796 from leandrolanzieri/pr/sys/base64_size_macros
sys/base64: Add size estimation functions
2019-01-24 11:43:13 +01:00
Gunar Schorcht
d90d546053
Merge pull request #10824 from miri64/gnrc_ipv6_nib/fix/br-slaac
gnrc_ipv6_nib: activate SLAAC on border router
2019-01-24 11:20:36 +01:00
Ken Bannister
3343ed3674 net/nanocoap: verify reply length before write 2019-01-24 05:18:12 -05:00
Gunar Schorcht
e6cf33eb4c tests/lwip*: blacklist esp8266 boards 2019-01-24 10:29:19 +01:00
Gunar Schorcht
49f06efd38 cpu/esp8266: fix pbuf length check in esp_wifi
When the size of a received frame is checked, always the total length should be used instead of the length of the first lwIP pbuf in the pbuf chain. Otherwise, the check that the length does not exceed ETHERNET_MAX_LEN will always be true since the maximum size of one lwIP pbuf in a pbuf chain is 512 bytes.
2019-01-24 09:54:53 +01:00
Gunar Schorcht
88c65aff0b cpu/esp8266: allow _esp_wifi_recv_cb during send
Receiption of a frame in _esp_wifi_recv_cb while sending has no effect and should be possible to increases the performance.
2019-01-24 09:39:45 +01:00
Sebastian Meiling
44234783da
Merge pull request #10823 from kb2ma/nanocoap/verify_before_write_option
net/nanocoap: validate option length
2019-01-24 09:23:26 +01:00
Gunar Schorcht
0920bbb4fb cpu/esp8266: log message on reconnect in esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
92f6c1a7c6 cpu/esp8266: WiFi mode changed in esp_wifi
Although only the station interface is needed, the WiFi interface has to be used in SoftAP + Station mode. Otherwise the send function blocks sporadically. Since the SoftAP interface is not used, it is configured with a hidden SSID and a long beacon interval. Connections from other stations are not allowed.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
538aac00ad cpu/esp8266: fix of allocated pbuf in esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
e384f1e502 cpu/esp8266: send timeout handling in esp_wifi
A timeout was introduced if sending a frame takes to long time. In that case the WiFi interface disconnects and reconnects automatically to recover.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
04ee2ebe15 cpu/esp8266: automatic reconnect in esp_wifi
A reconnect timer is used to try to reconnect every 20 secons if WiFi interface is in disconnected or connecting state.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
87b87631a6 cpu/esp8266: functions that have to run in IRAM
Due to performance reasons _esp_wifi_recv_cb and _send have to be executed in IRAM.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
96d0910d33 cpu/esp8266: avoid _esp_wifi_recv_cb during send
To avoid conflicts on receiption of a frame while sending, _esp_wifi_recv_cb should not executed while a frame is in transmission
2019-01-24 09:21:17 +01:00
Gunar Schorcht
78e0aa2a77 cpu/esp8266: usage of _esp_wifi_recv_cb
Overriding ethernet_input function _esp_wifi_recv_cb is only used when the WiFi interface is in connected state.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
c5a9058ab9 cpu/esp8266: simplified error handling in esp_wifi
wifi_station_connect and wifi_stattion_disconnect never produce errors. Thus, error handling can be removed.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
3225aaa387 cpu/esp8266: different conn states in esp_wifi
Different connection states defined to be able to realize a better connect/reconnect handling
2019-01-24 09:21:17 +01:00
Gunar Schorcht
88f6beeca2 cpu/esp8266: use SDK mem management for esp_wifi
Some SDK interrupt service routines obviously use malloc/free in the interrupt context. Because the rmutex-based lock/unlock approach of the malloc/free function suite of the newlib does not work in the interrupt context, the SDK memory management functions MUST therefore be used. To use the same memory management functions in RIOT as in the SDK, the malloc/free function suite has to be replaced by wrapper functions.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
5a835e91ba cpu/esp8266: fix some comments in esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
107e196b18 cpu/esp8266: fix of maximum frame length in esp_wif
Since complete MAC frames are handled, ETHERNET_MAX_LEN has to be used instead of ETHERNET_DATA_LEN for receive buffer size and length check.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
0e46869e57 cpu/esp8266: react to "out of memory" in esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
35a751c245 cpu/esp8266: avoid send interruption in esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
f7998c2ad6 cpu/esp8266: automatic reconnect in esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
d6664dafad cpu/esp8266: esp_wifi dbg msg changed to err msg 2019-01-24 09:21:17 +01:00
Gunar Schorcht
be3a2a4cb5 cpu/esp8266: fix compilation problem of esp_wif 2019-01-24 09:21:17 +01:00
Gunar Schorcht
698770ddb5 cpu/esp8266: fix esp_wifi stability issues
Fixes sporadic blocking of the wifi thread in esp_wifi_recv_cb function under heavy network load conditions when frames are coming in faster than they can be processed. Since esp_wifi_recv_cb function is not executed in interrupt context, the msg_send function used for ISR event can block when the message queue is full. With this change esp_wifi can be flooded with icmpv6 packets of maximum size without any problems over hours.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
21db1ce224 cpu/esp8266: doc extended for esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
664566ce70 cpu/esp8266: makefile support for esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
04de1e75aa cpu/esp8266: stack sizes tuned for esp_wifi 2019-01-24 09:21:17 +01:00
Gunar Schorcht
642c48f856 cpu/esp8266: add built-in WiFi netdev driver 2019-01-24 09:21:17 +01:00
Sebastian Meiling
50516cb07c
Merge pull request #10854 from cladmi/pr/atmega_common/unexport/linkflags
cpu/atmega_common: do not export LINKFLAGS
2019-01-24 09:06:44 +01:00
Leandro Lanzieri
c5cd71fb72 sys/base64: Add size estimation macros 2019-01-24 08:35:22 +01:00
Ken Bannister
e35bcb6853 net/nanocoap: fix remaining space calculation
The space calculation must use the same length as the eventual
return value.
2019-01-23 16:36:20 -05:00
Ken Bannister
e1bebed512 net/nanocoap: make reply doc more specific 2019-01-23 16:36:20 -05:00
Martine Lenders
1370099435 gnrc_sixlowpan_frag/rbuf: provide helper functions for testing 2019-01-23 20:00:07 +01:00
Martine Lenders
0cd052a0c0
Merge pull request #10852 from miri64/gnrc_sixlowpan_frag/fix/free-on-too-big
gnrc_sixlowpan_frag: release for fragment too big error case
2019-01-23 19:58:58 +01:00
3a1a615cf7
Merge pull request #10853 from cladmi/pr/make/unexport/linkflags
makefiles/vars.inc.mk: do not export LINKFLAGS
2019-01-23 19:42:32 +01:00
3974c4607a
Merge pull request #10837 from aabadie/pr/tools/compile_test_board_checks
dist/tools/compile_and_test_for_board: add basic checks for script
2019-01-23 18:52:29 +01:00
Gaëtan Harter
9cd50a693a
cpu/atmega_common: do not export LINKFLAGS
This prevent evaluating `LINKFLAGS` when not needed and when building
in docker so does not produce errors if `avr-ld` is not installed.

```
BUILD_IN_DOCKER=1 BOARD=arduino-mega2560  make --no-print-directory -C examples/hello-world/ clean
/srv/ilab-builds/workspace/git/riot_master/makefiles/toolchain/gnu.inc.mk:18: objcopy not found. Hex file will not be created.
/bin/sh: 1: avr-ld: not found
```

It removes the `/bin/sh: 1: avr-ld: not found`
2019-01-23 18:32:40 +01:00
Gaëtan Harter
be75f734d1
makefiles/vars.inc.mk: do not export LINKFLAGS
It is only used by `Makefile.include` and should not be used by sub-make
instances.

This is required to prevent evaluating `LINKFLAGS` when not needed and a
required step to not evaluate it on the host with for example `avr-ld`
when building in docker.

I checked usage with:

    git grep -e '(LINKFLAGS)' -e '{LINKFLAGS}'

Packages may be using it but `LINKFLAGS` is a RIOT way of naming
things and even if `generate-xcompile-toolchain` uses `LINK` it does not
use `LINKFLAGS`.
2019-01-23 18:31:24 +01:00
613e05fd42
tools/compile_test_one_board: update documentation README
Provide some notes on how to perform basic checks on the script using tox
2019-01-23 18:23:05 +01:00
148f715689
tools/compile_test_one_board: add tox.ini configuration file
tox.ini configures 3 checks on the python script: doctest (via pytest), pylint and flake8
2019-01-23 18:23:04 +01:00
Martine Lenders
4c1d1424c0 gnrc_sixlowpan_frag: release for fragment too big error case
The fragment is released for all other error cases, just not this one.
2019-01-23 18:05:37 +01:00
26a64694dd
tools/compile_test_one_board: rename TestError exception class
Otherwise it conflicts with pytest automatic parsing which tries to execute all classes with name beginning with Test
2019-01-23 16:25:31 +01:00
Peter Kietzmann
1f7292c358
Merge pull request #10764 from benemorius/kinetis-rtt-subseconds
cpu/kinetis/rtt: clear TPR when writing TSR
2019-01-23 15:15:29 +01:00
Ken Bannister
7e77ac7ace
Merge pull request #10845 from kb2ma/nanocoap/server_debug_msg
net/nanocoap: add debug message for server
2019-01-23 11:41:47 +00:00
33c43626e3
Merge pull request #10785 from kaspar030/aes_fix_integer_promotion_ub
sys/crypto/aes: avoid UB by explicit unsigned integer promotion
2019-01-22 21:32:52 +01:00
Leandro Lanzieri
5d1f2e24c3
Merge pull request #10828 from aabadie/pr/cpu/nrf5x_gpiote_multi_channel
cpu/nrf5x: handle multiple exti pins in gpio driver
2019-01-22 17:05:12 +01:00