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
Alexandre Abadie
7e3c382547
Merge pull request #10653 from dylad/pr/saml1x_support
...
cpu/saml1x: add support for SAML10 and SAML11 MCUs (Cortex-M23)
2019-01-22 08:53:06 +01:00
Sebastian Meiling
0edf76d362
Merge pull request #9984 from kaspar030/refactor_atmega_libc
...
cpu/atmega_common: refactor AVR libc code into module
2019-01-22 08:41:37 +01:00
Sebastian Meiling
e22e582049
Merge pull request #10656 from gschorcht/esp8266_ets_handling
...
cpu/esp8266: change of ETS task handling
2019-01-21 21:57:45 +01:00
Dylan Laduranty
9450fa7dc3
cpu/sam0_common: add support for saml10/saml11
...
Add SAML10/SAML11 support through SAM0 because hardware IP are the same so reuse to avoid duplication
2019-01-21 17:06:58 +01:00
Dylan Laduranty
adeb19339c
cpu/saml1x: add support for saml10/saml11 MCUs
2019-01-21 17:05:04 +01:00
Dylan Laduranty
6d3fda7260
cpu/cortexm: add cortex-m23 support
2019-01-21 17:04:20 +01:00
Gunar Schorcht
e4b0ace841
cpu/esp8266: inc ets_task stack size for esp_now
2019-01-21 16:30:33 +01:00
Gunar Schorcht
b3906539f1
cpu/esp8266: fix ets_post when flash is written
...
During flash write access, the IROM cache cannot be used and is disabled therefore. During that time, ets_post crashes if a functions is called which is not in IRAM. Therefore thread_flags_set must not be called if IROM cache is disabled.
2019-01-21 16:30:33 +01:00
Gunar Schorcht
8076f393f3
cpu/esp8266: doc fixes for esp_task thread
2019-01-21 16:30:33 +01:00
Gunar Schorcht
09da830a2a
cpu/esp8266: doc update for ets_task thread
2019-01-21 16:30:33 +01:00
Gunar Schorcht
0c12206503
cpu/esp8266: cpu configuration tuned
...
With the new ETS task handling thread, the stack sizes could be down sized.
2019-01-21 16:30:33 +01:00
Gunar Schorcht
66683050c5
cpu/esp8266: Makefile fixes for ets_task thread
...
Changes of ETS task handling require the context switch by software interrupt. The context switch based on interrupt is therefore enabled by default. Furthermore, the number of priority levels are increased due to the new additional thread.
2019-01-21 16:30:33 +01:00
Gunar Schorcht
906bdebb9a
cpu/esp8266: new ets_task thread
...
ETS tasks are now handled by a high priority RIOT thread
2019-01-21 16:30:33 +01:00
Gunar Schorcht
5020c30970
cpu/esp32: fix of maximum frame length in esp_wifi
...
Since complete MAC frames are handled, ETHERNET_MAX_LEN has to be used instead of ETHERNET_DATA_LEN for buffer sizes and length checks.
2019-01-21 15:26:18 +01:00
Gunar Schorcht
676a615996
cpu/esp32: fix of maximum frame length in esp_eth
...
Since complete MAC frames are handled, ETHERNET_MAX_LEN has to be used instead of ETHERNET_DATA_LEN for buffer sizes and length checks.
2019-01-21 15:25:43 +01:00
7313525035
atmega_common: refactor avr-libc-extra into avr_libc_extra module
2019-01-21 14:37:08 +01:00
Martine Lenders
f91f62155d
Merge pull request #10801 from gschorcht/esp32_fix_memset_opt
...
cpu/esp32: fixes the memset optimization problem in esp_wifi/wpa_supplicant
2019-01-18 22:31:42 +01:00
Martine Lenders
4e53f0fa76
nrfmin: fix type for NETOPT_PROTO
...
The type [is documented as `gnrc_nettype_t`][1] so it should by checked
as such.
[1]: f9a3bdf1a7/sys/include/net/netopt.h (L210-L212)
2019-01-18 18:14:00 +01:00
Gunar Schorcht
c5e9f12243
doc: fix undocumented func in socket_zep_params.h
2019-01-18 07:18:06 +01:00
Cenk Gündoğan
1c712c79a4
Merge pull request #10781 from miri64/nrfmin/cleanup/long-addr
...
nrfmin: remove long address support
2019-01-17 20:04:03 +01:00
Gunar Schorcht
5bb05f0911
cpu/esp32: esp-wifi related doc changes
2019-01-17 17:10:43 +01:00
Gunar Schorcht
6a99e86b2f
cpu/esp32: fix stability issues of esp_wifi
...
ESP-IDF heap handling has to be used for esp_wifi for stability reasons. Otherwise, heap is corrupted sporadically
2019-01-17 17:10:43 +01:00
Gunar Schorcht
f788928b27
cpu/esp32: 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-17 17:10:43 +01:00
Gunar Schorcht
6caead7bbc
cpu/esp32: esp-wifi related doc changes
2019-01-17 17:10:43 +01:00
Gunar Schorcht
7754a3416c
cpu/esp_common: doc fixes related to esp_wifi
2019-01-17 17:10:43 +01:00
Gunar Schorcht
cb37288ca5
cpu/esp32: redundant README.md removed
...
To avoid further inconsistencies in documentation, README.md is not provided any longer
2019-01-17 17:10:43 +01:00
Gunar Schorcht
1cf415a8a9
cpu/esp32: doc improvements in esp_wifi
2019-01-17 17:10:43 +01:00
Gunar Schorcht
e83a8679b4
cpu/esp32: cleanup esp_wifi config parameters
2019-01-17 17:10:43 +01:00
Gunar Schorcht
c0d4706bf8
cpu/esp32: fix of event types in esp_wifi
2019-01-17 17:10:43 +01:00
Gunar Schorcht
c9684af5c2
cpu/esp32: automatic reconnect after disconnect
...
If WiFi is disconnected, e.g., because of timeout for beacon frame, it is tried to reconnect automatically.
2019-01-17 17:10:43 +01:00
Gunar Schorcht
90e9c95c30
cpu/esp32: registration of RX callback in esp_wifi
...
RX callback function should be register when WiFi has been connected to AP successfully and should be unregistered when WiFi disconnects from AP. Therefore, esp_wifi_internal_reg_rxcb is called now in event handler on event SYSTEM_EVENT_STA_CONNECTED. It is reset now on event SYSTEM_EVENT_STA_DISCONNECTED.
2019-01-17 17:10:43 +01:00
Gunar Schorcht
f4cacc1e24
cpu/esp32: improved debug message in esp_wifi
2019-01-17 17:10:43 +01:00