1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00
Commit Graph

4841 Commits

Author SHA1 Message Date
Dylan Laduranty
29664c1995
Merge pull request #13001 from dylad/pr/sam0_uart_hw_fc
sam0/uart: add hardware flow control support
2019-12-26 20:12:39 +01:00
benpicco
676d0d399c
Merge pull request #11982 from gschorcht/cpu/esp32/fix_cleanup_rtc
cpu/esp32: fixes, improvements and cleanups of periph_rtc
2019-12-26 19:32:08 +01:00
Gunar Schorcht
25d04c4742 cpu/esp32: fixes and cleanups of RTC timer
- Unecessary definitions are removed.

- Since the 48-bit RTC hardware timer uses a RC oscillator as clock, it is pretty inaccurate and leads to a RTC time deviation of up to 3 seconds per minute. Therefore, a calibration during the boot time determines a correction factor for the 48-bit RTC hardware timer. Function _rtc_time_to_us uses now this correction factor and converts a raw 48-bit RTC time to a corrected time in microseconds. Thus, the 48-bit RTC timer becomes much more accurate, but it can't still reach the accuracy of the PLL driven 64-bit system timer. The Advantage of using RTC over 64-bit sydtem timer is that it also continues in deep sleep mode and after software reset.

- If the 64-bit system timer is used to emulate the RTC timer, it uses the RTC hardware timer to continue its operation after software .
2019-12-26 18:13:10 +01:00
Gunar Schorcht
21b2c8d334 cpu/esp32: introduce pseudomodule esp_rtc_timer
It is possible to use different timers as RTC timer for the periph_rtc module. Either the 48-bit RTC hardware timer is used directly or the PLL driven 64-bit system timer emulates a RTC timer. The latter one is much more accurate. Pseudomodule esp_rtc_timer controlls which timer is used. Only if esp_rtc_timer is enabled explicitly, the 48-bit RTC hardware timer is used. Otherwise the 64-bit sytstem timer is used to emulate the RTC timer.
2019-12-25 09:47:52 +01:00
Gunar Schorcht
9cf103e055 cpu/esp32: fix rtc_init and displaying system time
The explicit call of rtc_init during the CPU start was removed because rtc_init is called within the function periph_init. The display of the system time at startup had to be placed after the call to periph_init.
2019-12-25 09:47:52 +01:00
Gunar Schorcht
9b3095fd6b cpu/esp32: system_get_time_ms cleanup
There is an existing function that returns the system time in us as a 64 bit value. Converting this 64 value in us to a 32 bit value in ms is more easier and uses the complete 32 bit range. Using only the low part of the 64 bit system time in us and dividing it by 1e3 cuts the 32 bit range.
2019-12-24 14:35:37 +01:00
dylad
bd06772980 sam0/uart: add support for hardware flow control 2019-12-20 21:19:44 +01:00
e5c64c739a
cpu/fe310: rework uart driver implem/config 2019-12-20 15:22:09 +01:00
benpicco
6eac8df10f
Merge pull request #12986 from gschorcht/cpu/esp8266/esp_wifi/fix_send
cpu/esp8266: fix of esp_wifi_send function
2019-12-20 00:54:23 +01:00
Martine Lenders
501e700a3d
Merge pull request #12981 from miri64/native/feat/stdio
stdio_native: initial import
2019-12-19 15:14:15 +01:00
Gunar Schorcht
0194d7f44b cpu/esp8266: fix of esp_wifi_send
In case of succes, the esp_wifi_send function returned a 0 instead of sent bytes.
2019-12-18 21:52:25 +01:00
Martine S. Lenders
0957b6301b
stdio_native: initial import 2019-12-18 14:15:40 +01:00
benpicco
b35ef08094
Merge pull request #12901 from benpicco/lpc2387-stacks
cpu/lpc2387: use the same default stack sizes as cortexm_common
2019-12-18 14:12:58 +01:00
benpicco
f7cb0a096e
Merge pull request #12899 from benpicco/lpc2387-micropython
cpu/lpc2387: align lpc2387.ld with cortexm_base.ld, provide thread_isr_stack_*() - enables MicroPython
2019-12-18 12:08:12 +01:00
benpicco
cfeb2a3843
Merge pull request #12949 from gschorcht/cpu/esp8266/enable_lwip
cpu/esp8266: enable lwIP for ESP8266
2019-12-17 13:39:35 +01:00
Benjamin Valentin
a90663c9e7 cpu/lpc2387: provide ISR_STACKSIZE & thread_isr_stack_start()
Those are needed by MicroPython
2019-12-17 13:37:32 +01:00
Gunar Schorcht
8021888c06 pkg/lwip: remove esp8266 from blacklist 2019-12-17 08:28:33 +01:00
Gunar Schorcht
dcb6673024 cpu/esp8266: platform dependent settings for lwIP 2019-12-17 08:28:33 +01:00
Francisco
927b03f0ff
Merge pull request #12902 from aabadie/pr/boards/hifive1b_arduino
boards/hifive1b: add arduino feature
2019-12-16 13:31:17 +01:00
benpicco
50f5060e90
Merge pull request #12948 from gschorcht/pkg/lwip/lwipopts_fix_cleanup
pkg/lwip: overiddable settings in lwipopts.h
2019-12-16 10:43:34 +01:00
benpicco
8c4498ad8e
Merge pull request #12950 from gschorcht/cpu/esp32/lwip_eth
pkg/lwip: add support for esp32 Ethernet device
2019-12-16 10:33:47 +01:00
Kevin "Tristate Tom" Weiss
b20aed5c17
Merge pull request #12929 from gschorcht/cpu/esp8266/fix_bootloaders_log
cpu/esp8266: fix bootloaders and log outputs in vendor code
2019-12-16 09:03:25 +01:00
Gunar Schorcht
aa3f1329bf pkg/lwip: remove TCPIP_THREAD_PRIO for ESP32
This definition is platform dependent and should be therefore done with CFLAGS in ESP332's Makefile.
2019-12-15 23:50:45 +01:00
Gunar Schorcht
f92c083528 cpu/esp32: fix compile error 2019-12-15 11:17:23 +01:00
Gunar Schorcht
2e4e3507bd cpu/esp32: change netopt in esp_eth for lwIP 2019-12-14 16:59:21 +01:00
Gunar Schorcht
be688f51c6 cpu/esp32: expose esp_eth_setup for lwIP 2019-12-14 16:59:21 +01:00
Gunar Schorcht
3235f18b22 cpu/esp32: expose eps_eth netdev for lwIP 2019-12-14 16:59:21 +01:00
benpicco
2ed87d54bd
Merge pull request #12947 from gschorcht/cpu/esp32/fix_send_buffer
cpu/esp32: esp_wifi send buffer should not be on stack
2019-12-14 11:21:26 +01:00
Gunar Schorcht
e6db92567e cpu/esp32: esp_wifi send buffer should not be on stack
The buffer[EHTHERNET_MAX_LEN] used in _esp_wifi_send to convert the iolist of the given packet to a plain buffer for the WiFi interface should not be on the stack to prevent the sending thread's stack from overflowing.
2019-12-14 10:21:05 +01:00
b49cca2d0c
cpu/fe310: include thread.h in cpu.h
This ensures the ARRAY_SIZE macro is implicitly available
2019-12-13 16:25:11 +01:00
William MARTIN
1d54137295 cpu/stm32l0: add stm32l010xx family
This adds support for members of the stm32l010xx family.

Co-authored-by: William MARTIN <wysman@gmail.com>
2019-12-13 14:14:28 +01:00
Gunar Schorcht
baf4db675d cpu/esp8266: fix bootloader images
Some ESP8266/ESP8285 modules only work with DOUT SPI flash mode and a SPI flash frequency of 26 MHz. Therefore, these parameters have to be used by default. Otherwise some modules will no boot.
2019-12-12 08:16:54 +01:00
Gunar Schorcht
3e3a6f7018 cpu/esp8266: change of log output level in vendor code 2019-12-12 08:16:54 +01:00
Gunar Schorcht
a3de59fec3 cpu/esp8266: log outputs from esp vendor code
Log outputs from the Espressif vendor code are completely controlled by LOG_LEVEL and should not be controlled by ENABLE_DEBUG by file.
2019-12-12 08:16:54 +01:00
dylad
f44d9f88f0 sam0/uart: remove useless read-modify-write op 2019-12-10 20:19:34 +01:00
Benjamin Valentin
b1808800ed cpu/lpc2387: align lpc2387.ld with cortexm_base.ld
For better compatibility copy most of cortexm_base.ld
and use the same section names.

Only interrupt stacks and the two additional (currently unused)
heap sections are different between the two now.
2019-12-09 15:13:53 +01:00
Benjamin Valentin
d57e03c94c cpu/lpc2387: use the same default stack sizes as cortexm_common
Both architectures are variants of the ARM architecture and use the same
toolchain.
There is no reason to have such wildly different defaults.

This results in some tests passing that would crash before:

 - [x] `tests/pkg_libcose`
 - [x] `tests/pkg_qdsa`
 - [x] `tests/pkg_relic`
 - [x] `tests/pkg_tweetnacl`
 - [x] `tests/pthread_tls`

`THREAD_EXTRA_STACKSIZE_PRINTF_FLOAT` is not used anywhere in RIOT
anymore, so just drop it.
2019-12-08 22:07:57 +01:00
benpicco
34963006f0
Merge pull request #11258 from Former/stm32f1_rtc
cpu: RTC implementation for STM32F1
2019-12-08 15:15:50 +01:00
Gunar Schorcht
81cde86a73 cpu/esp8266: enable esp_log_startup on LOG_LEVL=4 2019-12-07 15:16:32 +01:00
Gunar Schorcht
b4b3e4f934 cpu/esp8266: module to print startup info
Startup information, including board configuration, is only printed when module esp_log_startup is used. This reduces the amount of information that is printed by default to the console during the startup. The user can enable module esp_log_startup to get the additional startup information.
2019-12-07 15:16:32 +01:00
benpicco
29a3a7f8e9
Merge pull request #12852 from chudov/atmegarfr2-rtt
cpu/atmega256rfr2: symbol counter based RTT support
2019-12-06 16:49:33 +01:00
855e249d8c
Merge pull request #12890 from gschorcht/cpu/esp/fix_tests_spiffs
cpu/esp*: fixes for tests/pkg_spiffs and tests/pkg_littlefs
2019-12-06 12:42:14 +01:00
Gunar Schorcht
35357b86a8 cpu/esp*: reduce test timeouts for spiffs/littlefs
To avoid that murdock times out before tests/pkg_spiffs and tests/pkg_littlefs time out, the configured test timeouts for these tests is reduced to 200 seconds which should be enough. An ESP32 needs an average of 60 seconds for these tests, while an ESP8266 needs in average 100 seconds.
2019-12-06 11:44:15 +01:00
Gunar Schorcht
95c6d1859c cpu/esp32: fix for crashes of tests/pkg_spiffs
ESP32 nodes can crash during SPI Flash write operations if required parts of the code are not in the IRAM but in the cached SPI Flash memory, which is disabled during the SPI Flash write operations. Therefore, the code of the SPIFFS package and the VFS module are now stored in the IRAM.
2019-12-06 11:44:15 +01:00
Alexei Bezborodov
88c429af5b cpu/stm32f1: FEATURES_PROVIDED += periph_rtc 2019-12-06 12:48:04 +03:00
Alexei Bezborodov
239fc2b791 cpu: RTC implementation for STM32F1
Works get_time, set_time, alarm and wakeup after set power mode STM32_PM_STOP
2019-12-06 12:47:22 +03:00
chudov
efa9bb88a2 cpu/atmega256rfr2: symbol counter based RTT support 2019-12-05 22:53:05 +01:00
a3706c1f02 cpu/fe310: add cpp feature 2019-12-05 18:27:12 +01:00
5e301219df
cpu/fe310: provide gpio feature at cpu level 2019-12-05 15:25:26 +01:00
3bdd73a146
Merge pull request #12810 from gschorcht/cpu/esp32/startup_info_develhelp
cpu/esp32: startup info if module esp_log_startup is used
2019-12-04 19:53:26 +01:00