Hyungsin
8661205c6d
cpu/esp32: reflecting xtimer's member change
2020-01-10 13:21:33 -08:00
a953b74bc7
cpu/fe310: restore flash initialization in cpu_init
2020-01-10 16:51:10 +01:00
3f29eb9efb
cpu/fe310: use CLOCK_CORECLOCK macro to get cpu freq
2020-01-10 16:41:33 +01:00
fc911bf6c5
cpu/fe310: rework clock initialization
2020-01-10 16:41:33 +01:00
97e1c7ba7e
cpu/fe310: reorganize files and includes
2020-01-10 16:41:33 +01:00
Marian Buschsieweke
fabbae8b05
cpu/stm32l1/periph: adc_sample() now returns int32_t
2020-01-10 14:13:16 +01:00
Marian Buschsieweke
b3c8339c2c
cpu/stm32l4/periph: adc_sample() now returns int32_t
2020-01-10 14:13:16 +01:00
Marian Buschsieweke
cff0d4033e
cpu/stm32l0/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
eaf2eeaf84
cpu/stm32f4/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
7dbd9e3e56
cpu/stm32f2/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
05d1ce6b58
cpu/stm32f1/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
09b45066ce
cpu/stm32f0/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
2247263a78
cpu/sam3/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
47cb59e6e5
cpu/sam0_common/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
186d2ccfa4
cpu/nrf52/periph: adc_sample() now returns int32_t
2020-01-10 14:13:15 +01:00
Marian Buschsieweke
a468af79a4
cpu/nrf51/periph: adc_sample() now returns int32_t
2020-01-10 14:13:14 +01:00
Marian Buschsieweke
c332501eb8
cpu/lm4f120/periph: adc_sample() now returns int32_t
2020-01-10 14:13:14 +01:00
Marian Buschsieweke
7387cd43d9
cpu/kinetis/periph: adc_sample() now returns int32_t
2020-01-10 14:13:14 +01:00
Marian Buschsieweke
55dc429d11
cpu/esp8266/periph: adc_sample() now returns int32_t
2020-01-10 14:13:14 +01:00
Marian Buschsieweke
746e4d2fba
cpu/esp32/periph: adc_sample() now returns int32_t
2020-01-10 14:13:14 +01:00
Marian Buschsieweke
80787d523e
cpu/efm32/periph: adc_sample() now returns int32_t
2020-01-10 14:13:14 +01:00
Marian Buschsieweke
c4a84f01c0
cpu/cc2538/periph: adc_sample() now returns int32_t
2020-01-10 14:13:14 +01:00
Marian Buschsieweke
3c7d95de02
cpu/atmega_common/periph: adc_sample() now returns int32_t
2020-01-10 14:13:13 +01:00
Gunar Schorcht
528512d9af
cpu/esp32: activate automatic XTAL detection
...
ESP32 can be clocked with either a 40 MHz or 26 MHz crystal. Since most boards use a 40 MHz crystal, the configuration was previously fixed to a 40 MHz crystal. This commit changes the crystal from 40 MHz to automatic detection, allowing boards with a 26 MHz crystal like the Sparkfun ESP32 Thing DEV to be used.
2020-01-09 15:34:18 +01:00
82d1d40042
cpu/cc2538: define radio irq prio at cpu level
2020-01-08 14:41:01 +01:00
ce0bb35587
Merge pull request #12993 from fjmolinas/pr_cc2538_rtt
...
cpu/cc2538: add periph_rtt
2020-01-08 09:55:45 +01:00
Francisco Molina
1801f4f085
cpu/cc2538: add periph_rtt
2020-01-08 09:16:49 +01:00
4eba1427d2
cpu/fe310: uart_init(): drain RX fifo before enabling RX IRQ
2020-01-07 13:16:02 +01:00
e2f88abe63
cpu/fe310: periph_uart: only call rx_cb if set
2020-01-07 13:14:08 +01:00
benpicco
0d4d621f99
Merge pull request #13013 from Hoernchen20/stm32f1_rtc_stop_mode
...
cpu/stm32f1: improve rtc irq
2020-01-04 21:45:48 +01:00
Hoernchen20
3b966cc260
cpu/stm32f1: improve rtc irq
2020-01-04 19:59:14 +01:00
Francisco
f6f4469542
Merge pull request #11889 from miri64/tapsetup/enh/sudo
...
tapsetup: require to be executed with sudo
2020-01-04 10:43:06 +01:00
Martine S. Lenders
bacef29086
native: adapt doc on tapsetup for new sudo requirement
2020-01-03 21:00:54 +01:00
e45dc52c7b
Merge pull request #11422 from fjmolinas/pr_kinetis_w_flashpage
...
cpu/kinetis: add flashpage for W & K series
2020-01-03 14:18:29 +01:00
francisco
7d11e40eac
cpu/kinetis: add flashpage for W & K series
2020-01-03 09:57:24 +01:00
9ae1cc9d74
cpu/stm32: remove use of export for LINKFLAGS
2020-01-02 09:50:35 +01:00
98b5487802
cpu/sam_common: remove use of export for LINKFLAGS
2020-01-02 09:50:14 +01:00
1e8528d6e8
cpu/mips: remove use of export for LINKFLAGS
2020-01-02 09:48:46 +01:00
410dfbe7c7
cpu/armv7: remove use of export for LINKFLAGS
2020-01-02 09:48:02 +01:00
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
6e31a0cb92
cpu/esp*: esp_wifi used as default netdev for lwip
2019-12-26 19:02:04 +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
Gunar Schorcht
53139c067c
cpu/esp32: make the level for wifi log outputs settable
2019-12-20 17:58:58 +01:00
Gunar Schorcht
1899c257b7
cpu/esp_common: functions for SDK log outputs
...
To control the log level and the format of the log output of SDK libraries, a bunch of library-specific printf functions are realized which map the log output from SDK libraries to RIOT's log macros.
2019-12-20 17:58:58 +01:00
Gunar Schorcht
649bce4a46
cpu/esp*: cleanup the log level for init functions
...
The log level for normal information should be LOG_DEBUG.
2019-12-20 16:25:41 +01:00
Gunar Schorcht
7bf5bba564
cpu/esp_common: LOG_TAG macro for DEBUG_ALL
...
LOG_TAG macro is required for LOG_VERBOSE level in ESP SDK log output handling.
2019-12-20 16:25:41 +01:00
Gunar Schorcht
40b878ebfa
cpu/esp32: unify esp_wifi log output
2019-12-20 16:25:41 +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
Marian Buschsieweke
3ecd303ed0
cpu/atmega_common/periph: Clean up PCINT support
...
- Using a enum instead of _COUNTER is easier to read
- _COUNTER is also a reserved name; so better not use it to avoid issues
- Split out the pcint code into a static inline function for increased
readability
2019-12-12 11:38:43 +01:00
Marian Buschsieweke
a45066551b
cpu/atmega_common/periph: Fixed bug in PCINT
...
The bank index and the pin number are not necessarily identical. For all
PCINT banks except for bank 3 bank_idx was used therefore. It was likely
just forgotten to update that for bank 3 as well.
2019-12-12 11:33:19 +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
Sebastian Meiling
912f003a35
Merge pull request #12864 from smlng/pr_freebsd_zep
...
cpu/native: add missing header in socket zep
2019-12-03 17:47:27 +01:00
Sebastian Meiling
6dd7d6010f
cpu/native: add missing header in socket zep
...
Building e.g. gnrc_border_router example on FreeBSD fails due to
missing defines related to sockets. This adds the missing header
<sys/socket.h> to fix compiling.
2019-12-03 15:34:25 +01:00
Martine Lenders
2f74d9d644
Merge pull request #12517 from miri64/native/enh/reset-command
...
native: allow for native to be resetable via SIGUSR1
2019-12-03 10:56:11 +01:00
Martine Lenders
fa317910d0
native: allow for native to be resetable via SIGUSR1
2019-12-03 09:51:52 +01:00
Leandro Lanzieri
93788ecced
cpu/kinetis/Makefile.features: Use CPU_MODEL to determine features
...
Now that CPU and CPU_MODEL are defined in the board's Makefile.features
it can be used to determine the available features provided by the
specific model.
2019-12-02 19:04:23 +01:00
benpicco
c9e9e04c6f
Merge pull request #12815 from benpicco/atmega-rtt
...
cpu/atmega_common: RTT support
2019-12-01 19:30:55 +01:00
Matthew Blue
fb211c7c0c
cpu/atmega_common: initial RTT support
2019-12-01 17:26:24 +01:00
Tim Broenink
e35e9ea59f
cpu/common/esp8266: use 'awk/printf' instead of 'echo'
2019-12-01 14:36:42 +01:00
Benjamin Valentin
f89b852c1d
cpu/lpc2387: clean up lpc2387.ld
...
Clean up the linkerfile and bring it more in line with cortexm_base.ld
(so far only for the ROM part)
As a bonus, tests/cpp_ctors works now.
2019-11-29 12:13:21 +01:00
Benjamin Valentin
ed0f72c856
cpu/lpc2387: startup.s: remove dead code
...
Setting up the .data and .bss section happens in arm7_init.c now.
The code was commented out anyway, so just remove it.
Also remove leftover variable declarations that were only used in
the dead code.
2019-11-29 12:00:52 +01:00
Gunar Schorcht
eb73358284
cpu/esp32: enable esp_log_startup on LOG_LEVL=4
2019-11-28 18:59:09 +01:00
Gunar Schorcht
91496b3cba
cpu/esp32: add bootloaders without startup info
...
To reduce the information that are printed at the console during the startup, special bootloaders are required that suppress the outputs which are only informational. The according bootloader has to be selected during the make process.
2019-11-28 18:59:09 +01:00
Gunar Schorcht
8d25e6909e
cpu/esp32: 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-11-28 18:59:09 +01:00
benpicco
40a419baef
Merge pull request #12794 from gschorcht/cpu/esp32/cpu_clk_workaround
...
cpu/esp32: workaround for UART problems
2019-11-28 13:57:23 +01:00
benpicco
306319ae7a
Merge pull request #12748 from benpicco/lpc2387-lpram
...
cpu/lpc2387: add support for backup RAM
2019-11-28 13:51:52 +01:00
9eac4b8b75
Merge pull request #12825 from JannesVolkens/ncv7356_doc
...
drivers/ncv7356: Add documentation
2019-11-28 12:32:10 +01:00
Benjamin Valentin
3417cf7d8a
cpu/arm7_common: be less cryptic in setup code
...
There is no restriction in variable names in early boot, so use
better names then p1, p2 and p3 to name our pointers.
2019-11-28 11:34:59 +01:00
Benjamin Valentin
32bbba2fc5
cpu/lpc2387: add support for backup RAM
...
lpc23xx has 2k of battery RAM that is retained in Deep Power Down mode.
To not overwrite that data it must only be initialized on Power On Reset.
However, RSIR looks the same when waking up from Deep Power Down as it does
on the power-on case.
So use 4 bytes of the backup RAM to keep a signature that is only valid if
memory was retained (no power-on Reset).
A small change to the linker script is required so two sections can be
placed into flash.
2019-11-28 11:33:03 +01:00
Benjamin Valentin
15fcbe837a
cpu/lpc2387: add definition of RSIR bits
...
Add the bits of the Reset Source Identification Register
2019-11-28 11:30:38 +01:00
Dylan Laduranty
6a4259e48a
Merge pull request #12064 from benpicco/sam0-buffered_uart
...
cpu/sam0_common/periph/uart: implement non-blocking write
2019-11-28 10:07:11 +01:00
Dylan Laduranty
53994bdfeb
Merge pull request #12828 from bergzand/pr/sam0/adc_api
...
sam0/periph_adc: Fix API to return `-1` on unsupported resolution
2019-11-28 09:05:39 +01:00
Gunar Schorcht
e3bb708e4d
cpu/esp32/periph: flush UART TX FIFO before a baudrate change
2019-11-28 08:57:26 +01:00
4e07a26375
Merge pull request #12819 from maribu/atmega_fix
...
cpu/atmega_common: Fixed atmega_exit_isr
2019-11-28 08:43:10 +01:00
Gunar Schorcht
83892aa184
cpu/esp32/periph: workaround for UART clock problems
...
The UART peripheral clock seems to be sporadically set to wrong value when the CPU clock is changed. In this case, the UART clock is not set to 115.200 kbps but to 96 kbps, so that the output in the console seems like garbage. This can also cause automatic tests to fail. Therefore, the CPU clock is only changed if CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ defines a different default CPU clock than the one already used at boot time.
2019-11-28 08:22:30 +01:00
83215befd9
sam0: change ADC periph to return -1 on wrong resolution
...
The common ADC API dictates that a sample call must return -1 on an
incorrect resolution. The sam0 ADC implementation instead threw an
assertion failure.
2019-11-27 21:09:02 +01:00
7d2e10335d
sam0: remove duplicate _done()
call
2019-11-27 21:08:28 +01:00
Dylan Laduranty
5287e1c052
Merge pull request #12782 from ML-PA-Consulting-GmbH/fix/20191122__sam0common_spi_release
...
cpu/sam0_common/periph/spi: power off spi bus on release
2019-11-27 19:13:19 +01:00
Benjamin Valentin
0d977b3b3c
cpu/sam0_common/periph/uart: implement buffered write
...
Implement interrupt based uart_write() using a tsrb for the TX buffer.
To enable it, add
USEMODULE += periph_uart_nonblocking
to your Makefile.
2019-11-27 19:01:00 +01:00
Jannes
e88bbb0d6e
cpu/stm32_common: Edit documentation
2019-11-27 14:15:57 +01:00
Daniel Lockau
5ea4fcd9c8
cpu/sam0_common/periph/spi: uncrustify
2019-11-27 07:16:22 +01:00
Daniel Lockau
c5ad13cb18
cpu/sam0_common/periph/spi: power off spi bus on release
2019-11-27 07:16:22 +01:00
Marian Buschsieweke
97f727349b
cpu/atmega_common: Fixed atmega_exit_isr
...
A context switch at the end of the ISR should only occur, if requested.
This fixes this.
2019-11-27 01:39:33 +01:00
Benjamin Valentin
964725259a
cpu/lpc2387: implement periph/dac
...
The 10 bit DAC on the lpc23xx is very simple.
It only has one channel and can only be mapped to a single pin (P0.26).
After setting the pin mode to DAC no further configuration in needed.
2019-11-26 01:49:45 +01:00
benpicco
63e4d8ffa5
Merge pull request #12803 from gschorcht/cpu/esp32/fix_little_fs
...
cpu/esp32: fix to be able to use SPI flash drive with pkg_littlefs
2019-11-25 15:49:13 +01:00
d0d6e53ff4
Merge pull request #11960 from fjmolinas/pr_msp430_flashpage_raw
...
cpu/msp430_common: add flashpage_raw
2019-11-25 12:48:48 +01:00
Gunar Schorcht
4fe35efe2b
cpu/esp32: mtd has to be in IRAM to work correctly
2019-11-25 07:24:17 +01:00
Gunar Schorcht
5f9e3b1a4b
cpu/esp32: change order for spi_flash_drive_init
...
To see debug or error messages during SPI flash drive initialization, spi_flash_drive_init has to be called after stdio_init.
2019-11-25 07:23:47 +01:00
Benjamin Valentin
8337ab111e
cpu/arm7_common: hook up puf_sram
...
puf_sram only relies on an uninitialized chunk of memory.
This means to enable it we just have to hook up puf_sram_init().
All memory after __bss_end should be uninitialized at startup, so
just use that.
2019-11-25 02:04:34 +01:00
Francisco Molina
0a68323570
tests/periph_flashpage: use before last page for msp430
...
- msp430 holds the isr vector on the last page so avoid erasing
that page when testing.
2019-11-24 13:19:20 +01:00
fjmolinas
5368415c9a
cpu/msp430_common: add flashpage_raw support
2019-11-24 13:19:19 +01:00
Francisco Molina
291727c9e7
cpu/msp430_common: specify FLASHPAGE_SIZE/NUMOF type
...
- Since msp430 uses 16bit it is important that the variables
are treated as unsigned and not int so FLASHPAGE_NUMOF*FLASHPAGE_SIZE
doesn't overflow
2019-11-24 13:19:17 +01:00
Francisco Molina
22177258df
msp430_common/include: fix FLASHPAGE definitions
...
- TI documentation for msp430f1xx is ambiguous regarding length
of some memmory sectors. For some cpu's the acual size is 1/4 byte
smaller than advertised and one of the sectors is actually 256b and
not 512.
ref: https://e2e.ti.com/support/microcontrollers/msp430/f/166/p/798838/2962979#2962979
- Remove the first 256b sector from usage since there is not support for
variable sized pages
- Fix msp430f2617 FLASHPAGE_NUMOFF to represent accesible memory
2019-11-24 13:18:54 +01:00
41e29e3fda
Merge pull request #12790 from maribu/atmega_isr_thread
...
cpu/atmega_common
2019-11-24 11:10:10 +01:00
6dbd5eeab9
cpu/stm32_common: fix typos
2019-11-23 22:39:36 +01:00
3222621423
cpu/nrf5x_common: fix typos
2019-11-23 22:39:36 +01:00
c8d1d6b3f3
cpu/nrf52: fix typos
2019-11-23 22:39:36 +01:00
31b027124b
cpu/native: fix typos
2019-11-23 22:39:36 +01:00
ac7027268c
cpu/msp430_common: fix typos
2019-11-23 22:39:36 +01:00
2bbcbeaccb
cpu/mips32r2_common: fix typos
2019-11-23 22:39:36 +01:00
c6a80b4f4b
cpu/lpc2387: fix typos
2019-11-23 22:39:36 +01:00
3eea508695
cpu/kinetis: fix typos
2019-11-23 22:39:36 +01:00
a8c3c6ab68
cpu/esp32: fix typos
2019-11-23 22:39:36 +01:00
6b233780ae
cpu/efm32: fix typos
2019-11-23 22:39:36 +01:00
84bf543d78
cpu/cortexm_common: fix typos
2019-11-23 22:39:36 +01:00
b01c6707a5
cpu/cc2538: fix typos
2019-11-23 22:39:36 +01:00
cc51f4ff7c
cpu/atmega_common: fix typos
2019-11-23 22:39:35 +01:00
97e49b385c
cpu/atmega328p: fix typos
2019-11-23 22:39:35 +01:00
f210cf2535
cpu/atmega256rfr2: fix typos
2019-11-23 22:39:35 +01:00
26143aa38d
cpu/atmega2560: fix typos
2019-11-23 22:39:35 +01:00
83d72abf8f
cpu/atmega128rfa1: fix typos
2019-11-23 22:39:35 +01:00
fc4eeb3e28
cpu/atmega1284p: fix typos
2019-11-23 22:39:35 +01:00
bc7b95aee3
cpu/atmega1281: fix typos
2019-11-23 22:39:35 +01:00
Francois Berder
4a31f94cfc
many typo fixes
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
benpicco
d244b0fe59
Merge pull request #12787 from gschorcht/cpu/esp32/netdev_default
...
cpu/esp*: define esp_now as default netdev
2019-11-23 14:59:54 +01:00
Gunar Schorcht
7325192fcd
cpu/esp8266: defines esp_now as default netdev
...
If the user or the board definition doesn't enable `esp_wifi`, `esp_now` is defined as default netdev.
2019-11-23 14:26:37 +01:00
Gunar Schorcht
71d6a71364
cpu/esp32: defines esp_now as default netdev
...
If the user or the board definition doesn't enable `esp_wifi` or `esp_eth`, `esp_now` is defined as default netdev.
fixup! cpu/esp32: defines esp_now as default netdev
2019-11-23 14:26:07 +01:00
Marian Buschsieweke
606d72f64b
cpu/atmega_common: Clean up & fix IRQ handling
...
At the end of an ISR, the ATmega code was doing an `thread_yield()` instead of
a `thread_yield_higher()`. This resulted in tests/isr_yield_higher failing.
Fixing this saves a few lines of code, some ROM, and solves the issue.
2019-11-23 11:57:11 +01:00
Marian Buschsieweke
2b1bee750a
cpu/atmega_common: Stop using reserved names
...
Names with two leading underscores are reserved in any context of the c
standard, and thus must not be used. This ATmega platform used it however for
defining internal stuff. This commit fixes this.
2019-11-23 11:56:11 +01:00
benpicco
09f647eee2
Merge pull request #12693 from maribu/neopixel-atmega
...
drivers: Added WS281x RGB LED driver for ATmega platform
2019-11-22 22:36:36 +01:00
Dylan Laduranty
9b0ef62d64
saml1x/pm: fix doxygen ingroup
2019-11-22 22:20:19 +01:00
Dylan Laduranty
550bfdbdbf
Merge pull request #12777 from benpicco/pm_debug_puts
...
cpu/sam*: pm: make use of DEBUG_PUTS()
2019-11-22 19:57:46 +01:00
Gunar Schorcht
72967f8fc3
cpu/esp32: GNRC_NETIF_NUMOF is handled in CPU makefile
...
Since Makefile.dep files are included as last files multiple times to resolve all module dependencies, GNRC_NETIF_NUMOF is handled here.
2019-11-22 17:38:35 +01:00
Gunar Schorcht
afff683696
cpu/esp32: number of thread priorities for esp_eth
...
The number of thread priority levels has to be 32 if esp_eth is used.
2019-11-22 17:32:37 +01:00
f04df728cb
Merge pull request #12044 from gschorcht/cpu/esp32/log_module_fix
...
cpu/esp32: improvements and cleanup of log_module
2019-11-22 14:33:33 +01:00
Gunar Schorcht
43d989b4d5
cpu/esp32: break on core_panic
...
To be able to catch a core panic in debugger and to get the last output from asynchronous UART , e.g., if the stack is smashed, the system is not rebooted immediately anymore but breaks, which stops the execution in debugger or reboots the system after WDT timeout.
2019-11-22 13:56:41 +01:00
faac10f593
Merge pull request #11994 from gschorcht/cpu/esp32/esp_wifi/crypto-fix
...
cpu/esp32: esp_wifi and crypto module fix
2019-11-22 11:16:33 +01:00
Gunar Schorcht
6fb7c50d48
cpu/esp32: colored output modifications
...
For compatibility with module log_color and the esp8266 esp_log_colored implementation.
2019-11-22 11:11:19 +01:00
Gunar Schorcht
4af78c31ef
cpu/esp32: enable colored output with log_color
2019-11-22 11:11:19 +01:00
Gunar Schorcht
f500dcbf02
cpu/esp32: colored and tagged log output docu
2019-11-22 11:11:19 +01:00
Schorcht
4503f45abb
cpu/esp32: esp_log_color renamed to esp_log_colored
2019-11-22 11:11:19 +01:00
Gunar Schorcht
5d51c03af9
cpu/esp32: replace ets_printf by printf
...
Wherever possible, ets_printf is replaced by newlib printf.
2019-11-22 11:11:19 +01:00
Gunar Schorcht
1f940b0728
cpu/esp32: map log outputs from SDK libraries
...
Log outputs generated by binary ESP32 SDK libraries are mapped to the ESP32's log module which supports colored and tagged log outpus. Tagged log outputs from SDK libraries are handled accordingly.
2019-11-22 11:11:19 +01:00
Gunar Schorcht
9a4cdc7e93
cpu/esp32: log_module implementation
...
The implementation of `log_module` for ESP32 was changed from functions to a macro-based implementation to be able to use the bunch of macros for colored and tagget log output generation.
2019-11-22 11:11:19 +01:00
Benjamin Valentin
8424d1845b
cpu/lpc2387: fix doxygen errors
...
Document macros and remove an unused function.
2019-11-22 09:11:39 +01:00
Benjamin Valentin
a9d1825e2e
cpu/lpc2387: implement periph/pm
...
Enable IDLE and Deep Powerdown mode.
IDLE is pretty straightforward - insteady of busy waiting, the CPU will
enter an idle state from which it will resume on any event.
Deep Power Down shuts off the entite system except for the battery backup
power domain.
That means the CPU will reset on resume and can be woken by e.g. RTC.
SLEEP and POWERDOWN disable the PLL and the PLL and Flash respectively.
This requires some proper wake-up handling.
Since this turned out to be a major time sink and those modes are never
currently never used in RIOT outside of tests, I left this as an exercise
for a future reader.
2019-11-22 09:11:39 +01:00
Benjamin Valentin
9df377d699
cpu/sam*: pm: make use of DEBUG_PUTS()
...
`pm_set()` gets called by the idle thread whose stack is too small
for normal DEBUG()/printf().
Use DEBUG_PUTS() instead to print the static debug strings.
2019-11-22 01:30:03 +01:00
Gunar Schorcht
d55225eb29
cpu/esp32: remove SDK crypto dependency from doc
2019-11-21 18:34:08 +01:00
Gunar Schorcht
5f01d0a88f
cpu/esp32: remove SDK crypto function dependency
...
Modules `crypto` and `hashes` have not be disabled any longer when module `esp_wifi` is used.
2019-11-21 18:34:08 +01:00
Gunar Schorcht
1a12f56fbd
cpu/esp32: use renamed SDK crypto functions
2019-11-21 18:32:28 +01:00
Gunar Schorcht
d8f0399eaa
cpu/esp32: rename SDK crypto function
...
Renames crypto functions of ESP32 SDK in vendor code to resolve the conflicts between `wpa-supplicant` crypto functions and RIOT's `crypto` and `hashes` modules.
2019-11-21 18:32:28 +01:00
Gunar Schorcht
f8c740c190
cpu/esp32: use SDK crypto headers from vendor code
...
Changes the include path for ESP32 SDK crypto function headers to find their modified version in vendor codefirst.
2019-11-21 18:32:28 +01:00
Gunar Schorcht
ee349edf3b
cpu/esp32: add SDK crypto headers and rename
...
To resolve the conflicts between `wpa-supplicant` crypto functions (part of the ESP32 SDK) and RIOT's `crypto` and `hashes` modules, the crypto function headers from ESP32 SDK are added to vendor code and the crypto functions are renamed using the prefix `wpa_`.
2019-11-21 18:32:28 +01:00
c7825aa92e
Merge pull request #12508 from gschorcht/cpu/esp32/doc_adc2_and_wifi
...
cpu/esp32: note on using ADC2 and WiFi in documentation
2019-11-21 18:27:06 +01:00
178d0aace2
Merge pull request #12758 from gschorcht/cpu/esp32/fix_fs_tests
...
cpu/esp32: increase timeout for spiffs and littlefs tests
2019-11-21 17:10:16 +01:00
fe255a26d5
Merge pull request #12750 from gschorcht/cpu/esp32/esptools
...
cpu/esp32: use esptool.py from riot tools
2019-11-21 17:09:54 +01:00
Francisco Molina
4c0dd49603
cpu/sam3/periph/gpio.c: fix cpp.check shiftTooManyBitsSigned
2019-11-21 11:58:07 +01:00
Francisco Molina
061b494348
cpu/lpc1768/periph/gpio.c: fix cpp.check shiftTooManyBitsSigned
2019-11-21 11:58:07 +01:00
Francisco Molina
97dda76e7a
cpu/native/irq_cpu.c: fix cpp.check unitialized variable
2019-11-21 11:58:07 +01:00
Gunar Schorcht
fe165738e7
cpu/esp32: doc changes for esptool.py
2019-11-21 10:18:56 +01:00
Gunar Schorcht
9080893f06
cpu/esp32: use esptool.py from riot tools
...
Use esptool.py from riot tools instead from ESP-IDF SDK to avoid that the SDK has to be installed to flash an image.
2019-11-21 10:18:56 +01:00
Gunar Schorcht
47a4ff05c0
cpu/esp32: increase timeout for spiffs and littlefs tests
...
The time it takes to erase the entire flash memory of an esp32 card requires increasing the timeout for tests/pkg_spiffs and tests/pkg_littlefs.
2019-11-21 10:15:38 +01:00
6cdf656d62
Merge pull request #12753 from gschorcht/cpu/esp32/fix_sched_prio
...
cpu/esp32: fix of thread priorities levels
2019-11-21 09:28:58 +01:00
bef34d400e
Merge pull request #12757 from gschorcht/cpu/esp32/fix_xtimer_deps
...
cpu/esp32: fix xtimer dependency
2019-11-21 09:23:19 +01:00
Gunar Schorcht
7b1ef78054
cpu/esp32: fix of thread priorities levels
...
A number of tests insist that the number of thread priority levels is 16. However, when using the WiFi interface, a number of high priority threads are required to handle the WiFi hardware. In this case, the number of thread priority levels must be 32. Solves the problem of tests `tests/shell`.
2019-11-21 06:55:41 +01:00
Gunar Schorcht
9a1742074a
cpu/esp32: fix xtimer dependency
...
Removes the dependency of the module riot_freertos from module xtimer. This avoids that xtimer is used even if it is not really needed which in turn occupies the first timer device and tests/periph_timer fails.
2019-11-21 06:38:58 +01:00
Gunar Schorcht
3ab5e3ad66
cpu/esp32: fix heap command output
...
The heap command output has to have an output format that is compatible with the test.
2019-11-20 08:44:45 +01:00
Gunar Schorcht
327b9fd32e
cpu/esp32: introduce module esp_log_tagged
...
ESP32 log output was always tagged with additional information by default. The tag consists the type of the log message, the system time in ms, and the module or function in which the log message is generated. By introducing module `esp_log_tagged`, these additional information are disabled by default and can be enabled by using module `esp_log_tagged`.
2019-11-20 08:42:27 +01:00
Gunar Schorcht
a3058291b7
cpu/esp32: colored log output
...
Log module of ESP32 supports colored log outputs when module `esp_log_color` is enabled. The generation of colored log outputs is realized by a extending the bunch of macros with an additional letter indicating the type of log message,
2019-11-20 08:42:22 +01:00
Gunar Schorcht
f2f07252fe
cpu/esp32: bootloader versions with and w/o colors
...
For the implementation of the colored log output, two versions of the bootloader are introduced, one version with colored log output and one version without colors.
2019-11-20 08:42:14 +01:00
Marian Buschsieweke
8d0a9ead7b
cpu/atmega_common/periph: Fixed typo in gpio.c
2019-11-18 22:45:40 +01:00
MrKevinWeiss
5c085d711d
cpu/native: Suppress cpu specific spi_clk_t in doxygen
2019-11-18 11:44:13 +01:00
MrKevinWeiss
d218b77ff7
cpu/esp8266: Suppress cpu specific i2c_speed_t in doxygen
2019-11-18 11:43:45 +01:00
MrKevinWeiss
02bd107722
cpu/esp8266: Suppress cpu specific gpio_flank_t in doxygen
...
The enumeration takes both the cpu and the driver, it should only show the driver enum
2019-11-18 11:43:12 +01:00
Kevin "Tristate Tom" Weiss
be39169bd4
Merge pull request #11108 from gschorcht/cpu/esp8266/esp-idf/pr
...
cpu/esp8266: complete reimplementation based on ESP8266 RTOS SDK
2019-11-18 09:34:49 +01:00
7d3a6fecee
cpu/efm32: provide arch_efm32 features
2019-11-16 14:07:53 +01:00
Yegor Yefremov
f2127391c4
doxygen/UART: don't include overridden typedefs
...
Add missing #ifndefs to overridden UART typedefs.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:44:52 +01:00
Yegor Yefremov
df7e760588
doxygen/I2C: don't include overridden typedefs
...
Add missing #ifndefs to overridden I2C typedefs.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:33 +01:00
Yegor Yefremov
cf65070b06
doxygen/GPIO: don't include overridden typedefs
...
Add missing #ifndefs to overridden GPIO typedefs.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:33 +01:00
Yegor Yefremov
fa3b0ff04b
doxygen/SPI: don't include overridden typedefs
...
Add missing #ifndefs to overridden SPI typedefs.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:32 +01:00
Yegor Yefremov
5b0252b150
doxygen/ADC: don't include overridden typedefs
...
Add missing #ifndefs to overridden ADC resolution typedefs.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:32 +01:00
Francisco
1018a6fa67
Merge pull request #12679 from jue89/bugfix/stm32f103rc-ramlen
...
cpu/stm32_common: fix RAM_SIZE for stm32f103xc, stm32f105xx and stm32f107xx
2019-11-14 22:28:43 +01:00
Francisco
2adc5a23c2
Merge pull request #12361 from haukepetersen/add_nimble_autoconn
...
pkg/nimble: add simple BLE connection manager: autoconn
2019-11-14 14:02:24 +01:00
Gunar Schorcht
555a7040db
cpu/esp8266: reset tool to allow automatic tests
2019-11-14 13:58:48 +01:00
Gunar Schorcht
309eab9ae0
cpu/esp8266: enable colored output with log_color
2019-11-14 13:58:48 +01:00
Gunar Schorcht
fe028455e5
cpu/esp8266: esptool.py is provided as tool
...
The modified version esptool.py from RTOS SDK that is required for flashing an image, is now placed in `dist/tools/esptool.py` and used directly from there. The advantage is that `esptool.py` hasn't to be installed explicitly anymore. Having RIOT is enough. The documentation is adapted accordingly. The oly prerequisite is that python and the pyserial module are installed.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
62922769b3
cpu/esp8266: high-priority threads creation
...
High priority thread for the WiFi interface are only created at startup when the WiFi interface is used.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
405be02da4
cpu/esp8266: funcs must not be called in assert
...
In vendor startup code, initialization function were called as parameters of assert statement. With DEVELHELP, they are not called since the assert macro does nothing.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
2c7b9b4fb4
cpu/esp8266: toolchain renamed
...
To make the migration progress to the new RTOS SDK easier, the new toolchain was renamed to xtensa-esp8266-elf. This makes it possible to have the new and the old toolchain installed in parallel.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
b15d7df6dc
cpu/esp8266: ESP8266_SDK_DIR renamed
...
To make the migration progress to the new RTOS SDK easier, the ESP8266_SDK_DIR variable was renamed to ESP8266_RTOS_SDK_DIR.
2019-11-14 13:58:44 +01:00
Gunar Schorcht
9facce8c02
cpu/esp8266: use default number of priority levels
...
If the WiFi module is used, a number of high priority tasks is created. To void priority collisions with netdev drivers, the number of priorities SCHED_PRIO_LEVELS has to be increased to 32. But in other cases, the default number should be used, also to keep automatic tests working.
2019-11-14 13:58:25 +01:00
Gunar Schorcht
afa02044f2
cpu/esp8266: required bootloader binaries
2019-11-14 13:58:25 +01:00
Gunar Schorcht
4f4d882f68
cpu/esp32: changes for RTOS SDK
2019-11-14 13:58:25 +01:00
Gunar Schorcht
ddc91df4ca
cpu/esp8266: changes for RTOS SDK
2019-11-14 13:58:22 +01:00
Gunar Schorcht
a212228147
cpu/esp8266: files that are not needed any longer removed
2019-11-14 12:04:29 +01:00
Gunar Schorcht
28ea0a0914
cpu/esp8266: required vendor RTOS SDK components added
2019-11-14 12:04:21 +01:00
Kees Bakker
43670aee7b
Merge pull request #12615 from benpicco/samd21-1kHz_gclk
...
cpu/samd21: use dedicated 1kHz GCLK4 for RTC and WDT
2019-11-13 20:25:55 +01:00
Jue
b037bce7ab
cpu/stm32_common: fixed RAM_LEN for stm32f105__ and stm32f107__
2019-11-13 19:58:44 +01:00
Jue
ef9363a509
cpu/stm32_common: fixed RAM_LEN for stm32f103_c
2019-11-13 19:57:59 +01:00
Gunar Schorcht
f397a74948
cpu/esp8266: FreeRTOS adaption layer added for RTOS SDK
2019-11-13 19:00:39 +01:00
Hauke Petersen
4bf14822cb
nrf5x: move nimble_ble feat. to cpu
2019-11-13 13:43:55 +01:00
Hauke Petersen
d87228dab1
cpu/nrf52: add feature 'ble_nimble_netif'
2019-11-13 13:05:34 +01:00
Dylan Laduranty
0e736b8879
Merge pull request #12675 from benpicco/sam0-rtt-fix
...
cpu/sam0_common: rtt: enable COUNTSYNC in CTRLA
2019-11-13 10:12:07 +01:00
Bas Stottelaar
0c18ef4f23
Merge pull request #12278 from benemorius/pr/efm32-uart-rx_cb
...
cpu/efm32/uart: fix handling of RX when no RX callback is configured
2019-11-12 21:33:07 +01:00
Dylan Laduranty
6ec6aaf4b0
Merge pull request #12393 from benpicco/sam0-spi_reconfig
...
sam0/spi: Don't re-configure SPI device when not needed
2019-11-12 20:51:53 +01:00
Marian Buschsieweke
ba26aed107
cpu/atmega_common: Restructured code
...
Moved macros and static inline helper functions needed to access ATmega GPIOs
to cpu/atmega_common/include/atmega_gpio.h in order to reuse them for the
platform specific low level part of the Neopixel driver.
2019-11-12 20:15:59 +01:00
benpicco
f77e5a6c6a
Merge pull request #12673 from benpicco/purge-rtc_numof
...
boards: remove RTT_NUMOF/RTC_NUMOF
2019-11-12 11:33:16 +01:00
Benjamin Valentin
d21dc25cfe
sam0/spi: Don't re-configure SPI device when not needed
...
Currently, spi_acquire() will always re-configure the SPI bus.
If the configuration did not change, this is entirely uneccecary
and makes SPI operations take longer than needed.
Instead, compare the current configuration with the new configuration
and skip the initialisation if it didn't change since the last call.
2019-11-12 11:31:41 +01:00
Benjamin Valentin
db2fa33660
sam0_common: rtc: use GCLK4 on SAMD21
...
The RTC expects to be clocked from a 1kHz source.
Previously it would re-configure GCLK2 from 32kHz to 1kHz when used.
Since GCLK2 is also used by EIC, this would break external interrupts
in strange and unexpected ways.
Dedicate a 1kHz clock to it to avoid the damage.
2019-11-12 11:30:02 +01:00
Benjamin Valentin
5fa234e435
sam0_common: wdt: use GCLK4 on SAMD21
...
GCLK4 will always run at 1kHz on SAMD21, so use it directly.
2019-11-12 11:29:25 +01:00
Benjamin Valentin
d92c079a90
cpu/samd21: configure GCLK4 with 1024 Hz
...
Both WDT and RTC expect a 1 kHz clock.
Source it from the same generator as the 32 kHz GCLK2.
2019-11-12 11:29:17 +01:00
Benjamin Valentin
89b987494e
cpu/sam0_common: rtt: enable COUNTSYNC in CTRLA
...
From the data sheet:
> The COUNT register requires synchronization when reading.
> Disabling the synchronization will prevent reading valid
> values from the COUNT register.
Without this bit enabled, rtt_get_counter() will always return 0.
2019-11-12 11:28:08 +01:00
Benjamin Valentin
3ce6ddcdb2
cpu/atmega_common: cpuid: add a word of warning
...
The CPU ID only differs in byte 4 (RC calibration) between devices.
Add a word of warning to the documentation that this may not be very unique.
2019-11-11 18:07:09 +01:00
Benjamin Valentin
5b6d56efd5
atmega_common: provide CPU ID for every device
...
ATmega128RFA1/ATmega256RFR2 do not have a unique CPU ID.
Use the RC oscillator callibration byte as an impromptu CPU ID and rely
on bootlader constants present on all ATmega families for the remaining
bytes.
This way we can provide a faux CPU ID on all ATmega MCUs and typical hobbyists
with no access to JTAG adapters or high voltage programmer capable of writing
the user signature have a good chance that the CPU IDs of their device do not collide.
2019-11-08 16:58:03 +01:00
Benjamin Valentin
0ea2cbf1eb
boards: remove RTT_NUMOF/RTC_NUMOF
...
Those macros are defined but never used.
2019-11-08 14:20:33 +01:00
Marian Buschsieweke
72714aefea
cpu/lpc2387: Added MCU provided features
...
Added features provided by the LPC2387 MCU to cpu/lpc2387/Makefile.features
2019-11-08 14:02:35 +01:00
Gunar Schorcht
dca6d59b60
cpu/esp_common: vendor files changed for RTOS SDK
2019-11-08 13:22:50 +01:00
Gunar Schorcht
a6d01fc2de
cpu/esp8266: vendor files changed for RTOS SDK
2019-11-08 10:32:18 +01:00
Gunar Schorcht
464bb9f4c4
cpu/esp8266: vendor files that are no longer needed removed
2019-11-08 10:32:18 +01:00
Leandro Lanzieri
66d5e4d05f
Merge pull request #12637 from benpicco/lpc2387-uart
...
cpu/lpc2387: update the UART driver
2019-11-07 22:21:50 +01:00
Benjamin Valentin
9e68556393
boards/msba2: configure remaining UARTs
...
All UARTs on the MSBA2 are exposed through pin headers on the board.
Configure them according to the data sheet.
2019-11-07 21:55:25 +01:00
Benjamin Valentin
c544c41804
cpu/lpc2387: fix indent
2019-11-07 21:55:24 +01:00
Benjamin Valentin
d6a94d4e18
cpu/lpc2387: uart driver overhaul
...
This converts the hard-coded UART driver to the new ways.
- allow the board to configure the RX & TX pins
- allow for more than one UART
- allow setting the baudrate
- implement poweron()/poweroff() functions
2019-11-07 21:55:24 +01:00
7e42f6e4d5
Merge pull request #12659 from aabadie/pr/cpu/atmega_common_wdt
...
cpu/atmega_common: add implementation for watchdog
2019-11-07 12:32:46 +01:00
José Alamos
20ea18637f
Merge pull request #10485 from miri64/gnrc_netif/enh/default-init
...
gnrc_netif: assume `netif->ops->init()` to be set to at least a default
2019-11-07 11:41:05 +01:00
d22404b8b7
cpu/atmega_common: add implementation for watchdog
2019-11-07 11:35:29 +01:00
Martine Lenders
14a2f6bc18
gnrc: use gnrc_netif_default_init() for all implementations
2019-11-07 11:00:36 +01:00
Bas Stottelaar
d0ff9530d3
cpu/efm32: update vendor code
2019-11-06 23:25:53 +01:00
Benjamin Valentin
5ec9f62a0b
cpu/lpc2387: add UART register map
2019-11-04 01:21:08 +01:00
benpicco
926bdc9a9f
Merge pull request #12579 from bergzand/pr/stm32/lpclk_en_dis
...
stm32/cpu: Add functions for low power mode clock config
2019-11-01 23:16:37 +01:00
799823b630
stm32/cpu: Add functions for low power mode clock config
2019-11-01 20:19:41 +01:00
Anton Gerasimov
fa8c0578bf
cpu/cc26xx_cc13xx: switch to cortexm.ld linker script
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
9fad1e3b6d
cpu/cc26xx_cc13xx: define uart_conf_t
...
Replaces older macro-based configuration
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
6790e9e6ca
cpu/cc26xx_cc13xx: Fix codespell issues
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
1659a71ed0
cpu/cc13x2: Add support for cc13x2 MCUs
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
1442561c8e
cpu/cc26x0: Fix register map for WDT
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
f6a3f14d22
cpu/cc26x0: Factor out code common for cc26xx/cc13xx family
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Martine Lenders
ea4b78654f
Merge pull request #12285 from JulianHolzwarth/pr/posix/pthread/pthread_reaper_fix
...
sys/posix/pthread/pthread.c: fix pthread reaper
2019-10-29 18:56:36 +01:00
Marian Buschsieweke
d4adcfd92d
Merge pull request #12581 from benpicco/lpc2387-xtal_select
...
cpu/lpc2387: allow for more flexible clock selection
2019-10-28 12:32:11 +01:00
Benjamin Valentin
d6ca62576d
cpu/lpc2387: allow use of other XTALs
...
Currently the cpu/lpc2387 init code hard-codes a 16 MHz
external oscillator.
Instead, calculate the PLL multiplier based on the board define
and also allow to run without an external oscillator.
2019-10-28 11:11:40 +01:00
Leandro Lanzieri
073090b01e
Merge pull request #12580 from benpicco/lpc2387-fix_rtc
...
cpu/lpc2387: enable RTC on rtc_init()
2019-10-28 10:40:37 +01:00
Leandro Lanzieri
00926221fd
Merge pull request #12585 from aabadie/pr/cpu/stm32_common_fix_llvm_build
...
cpu/stm32_common: fix i2c_1 build with llvm toolchain
2019-10-28 10:03:48 +01:00
Marian Buschsieweke
4cf2151248
Merge pull request #12537 from benpicco/at86rfmega
...
drivers/at86rf2xx: add support for ATmegaRF MCUs
2019-10-28 09:22:02 +01:00
fd2d30c6e7
cpu/stm32_common: fix i2c_1 build with llvm toolchain
2019-10-27 15:44:07 +01:00
1c416185b6
cpu/sam0_common: fix potential undefined result with sercom_id
...
Scan-build detected that sercom_id could return -1 and the value of this function is affected to uint8_t variables. Since these variables are used for shitfing bit in registers, this could lead to undefined behavior
2019-10-27 12:02:47 +01:00
Benjamin Valentin
985fb53c9f
cpu/lpc2387: enable RTC on init
...
All other CPU implementations have the RTC running after
rtc_init() was called.
Fix this for lpc2387.
2019-10-27 01:33:13 +02:00
Benjamin Valentin
14a8a53eb5
cpu/atmega256rfr2: Hook up at86rfr2 radio
2019-10-26 23:10:18 +02:00
Benjamin Valentin
25e9b24bc4
cpu/atmega128rfa1: Hook up at86rfa1 radio
2019-10-26 23:10:18 +02:00
60748aee5d
Merge pull request #12571 from MrKevinWeiss/pr/fix/stm32/i2c/rreadbytes
...
stm32_common/i2c_2: Fix repeated read condition
2019-10-25 12:20:06 +02:00
Gunar Schorcht
e38d3e24ec
Merge pull request #12548 from maribu/c11_atomcis_cpp_compat
...
sys: Basic C++ compatibility with C11 atomcis
2019-10-25 11:48:58 +02:00
MrKevinWeiss
df19d33b77
stm32_common/i2c_2: Fix repeated read condition
...
Fix the condition to return -ENOPNOTSUPP when i2c repeated read attempted.
Currently the error occures even if a read after write is attempted.
This is the standard way to i2c_read_reg which should be supported.
The -EOPNOTSUPP requires the previous R/W state to be reading.
This means a `I2C_SR2_TRA` must be checked to be 0.
2019-10-25 10:35:48 +02:00
7761169964
Merge pull request #11657 from Yanok35/pr-stm32-spi-af
...
boards/stm32-based: allow SPI signals routed on multiple alternate functions
2019-10-25 09:47:49 +02:00
Yannick Gicquel
d37adee32d
boards/stm32-based: allow SPI signals routed on multiple alternate functions
...
There is no hardware limitation for custom boards based on STM32 to uses
SPI bus with signals coming from different PORT and alternate functions.
This patch allow alternate's function definition per pin basis, thus enable
the support of SPI bus signals routed on differents PORT.
Signed-off-by: Yannick Gicquel <ygicquel@gmail.com>
2019-10-25 06:27:41 +02:00
Marian Buschsieweke
314184adb5
cpu: Platform specific C11 atomics compat headers
...
Added headers to define platform specific sizes and types for the C11 atomics
compatibility module for C++.
2019-10-24 23:08:36 +02:00
Francois Berder
d210a16567
cpu: mips_pic32_common: Refactor GPIO peripheral
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-24 19:01:02 +01:00
Francisco Molina
1ae0873769
boards: change PORT used for flash/debug/reset to PROG_DEV
2019-10-24 12:58:12 +02:00
acdb010669
sam0_common/usb: fix typo in comment
2019-10-23 10:35:47 +02:00
Marian Buschsieweke
cd5cda21d4
Merge pull request #12538 from gschorcht/cpu/esp32/fix_cs_handling
...
cpu/esp32: fix CS handling in spi_transfer_bytes
2019-10-22 15:35:48 +02:00
Gunar Schorcht
db945bdd86
cpu/esp32: fix CS handling in spi_transfer_bytes
...
If `SPI_CS_UNDEF` is given as the `cs` parameter, CS pin must not be handled by the driver. Furthermore, if `cont` parameter is true, CS pin must not be disabled at the end of one transfer.
2019-10-22 08:14:49 +02:00
Benjamin Valentin
6db9421057
cpu/stm32f0: add STM32F030x4
2019-10-21 15:30:22 +02:00
benpicco
80c00339a4
Merge pull request #12477 from francois-berder/mips-refactor
...
cpu: mips*: Reorganize headers
2019-10-21 15:26:45 +02:00
benpicco
0aa63f84c7
Merge pull request #12515 from bergzand/pr/stmclk/fix_sai_shift
...
stmclk: Fix M-factor shift for SAI PLL
2019-10-21 11:37:07 +02:00
5578740fc4
Merge pull request #12397 from fjmolinas/pr_CPU_ARCH_FAM
...
makefiles/vars.inc.mk: move definition and export of CPU_FAM and CPU_ARCH to vars.inc.mk
2019-10-21 08:23:51 +02:00
5eedd9c629
stmclk: Fix M-factor shift for SAI PLL
2019-10-20 18:22:18 +02:00
Gunar Schorcht
1cf163833b
cpu/esp32: note on using ADC2 and WiFi in doc
...
The ADC2 controller of the ESP32 is used by the WiFi module. The GPIOs connected to the ADC2 controller cannot be used as ADC channels if the WiFi module is enabled. This is clarified by a note in the documentation.
2019-10-19 16:31:04 +02:00
Francois Berder
12c3a5472a
cpu: mips_pic32mx: Include vendor header in cpu_conf.h
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-18 18:57:42 +01:00
Francois Berder
89d43c3423
cpu: mips32r2_common: Remove useless includes
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-18 18:57:42 +01:00
Francois Berder
3a62b620bc
cpu: mips_pic32_common: Move cpu header to mips32r2_common
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-18 18:57:42 +01:00
benpicco
e9d6a61439
Merge pull request #12489 from aabadie/pr/cpu/atmega_cleanup_dep
...
cpu/atmega: cleanup dependencies handling
2019-10-18 15:04:07 +02:00
14567ea973
Merge pull request #12494 from fjmolinas/pr_remove_OS
...
Makefile/include: use ony one call to `uname`
2019-10-18 15:03:10 +02:00
629003d042
cpu/atmega: cleanup dependencies handling
2019-10-18 12:40:34 +02:00
benpicco
29e5c3af67
Merge pull request #12490 from aabadie/pr/boards/efm32_common_periph_gpio
...
boards/efm32: move provided gpio features at cpu level
2019-10-18 11:19:33 +02:00
benpicco
34ee36d9e4
Merge pull request #12491 from aabadie/pr/boards/atmega_common_periph_gpio
...
boards/atmega: move provided gpio features at cpu level
2019-10-18 11:19:15 +02:00
Francisco Molina
45c8eafd42
Makefile.include: remove repeated OS declaration
2019-10-18 10:36:43 +02:00
174bb3feee
cpu/ezr32wg: provide gpio feature at cpu level
2019-10-18 09:32:48 +02:00
c618d9821f
cpu/efm32: provide gpio feature at cpu level
2019-10-18 09:32:48 +02:00
Francisco Molina
347a0fc804
cpu/ boards/: remove exports for CPU_FAM
2019-10-18 08:55:33 +02:00
Francisco Molina
b4f9b74e1a
cpu/cc2*: remove immediate expansion of CPU_ARCH
2019-10-18 08:55:33 +02:00
Francisco Molina
5e9b92a326
cpu: remove CPU_ARCH exports
2019-10-18 08:55:33 +02:00
Francisco Molina
f3482de277
REMOVEME: add OS and OS_ARCH variable
2019-10-18 08:46:51 +02:00
cba293a9a9
cpu/cc2538: provide gpio feature at cpu level
2019-10-17 22:05:23 +02:00
9c442a3547
cpu/atmega_common: provide gpio feature at cpu level
2019-10-17 21:42:07 +02:00
Benjamin Valentin
6cf6dcb946
cpu/atmega256rfr2: small cleanup
...
GPIO_UNDEF is already defined in periph_cpu_common.h, so the
redefinition is never used.
2019-10-17 19:20:31 +02:00
Benjamin Valentin
b1ef68abf7
cpu/atmega_common: move periph/cpuid.c to common code
...
Both atmega128rfa1 and atmega256rfr2 implement it.
2019-10-17 19:20:31 +02:00
Benjamin Valentin
7d78e32b15
cpu/atmega128rfa1: ATmega128rfa1 MCU support
2019-10-17 19:20:31 +02:00
benpicco
bd0ba7f187
Merge pull request #12476 from basilfx/feature/efm32_uart_modes_cleanup
...
cpu/efm32: remove EFM32_UART_MODES
2019-10-17 18:22:37 +02:00
Sebastian Meiling
742a23c75b
Merge pull request #12007 from MrKevinWeiss/devfixi2cflag
...
cpu/stm32: Fix read bytes flag for i2c_2
2019-10-17 09:14:26 +02:00
Francois Berder
57377ded76
cpu: mips_pic32mz: Include vendor header in cpu_conf.h
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-16 21:17:14 +01:00
Bas Stottelaar
2a5010f779
cpu/efm32: remove EFM32_UART_MODES
2019-10-16 22:05:08 +02:00
Frank Hessel
51194b9c0d
cpu/native: Implement hardware SPI access (Linux)
2019-10-16 14:32:53 +02:00
Sebastian Meiling
ea0b5ff0dd
cpu: add missing arch features to fe310
...
Adds arch_32bit and arch_riscv to cpu/fe310 to allow for feature
requirements and blacklisting.
2019-10-14 17:40:23 +02:00
ebf43616b7
cpu: add arch_* features
2019-10-13 21:03:41 +02:00
Marian Buschsieweke
d749e2de5d
Merge pull request #12312 from kaspar030/cortexm_dont_disable_irq_in_cpu_jump_to_image
...
cpu/cortexm: don't disable IRQs in cpu_jump_to_image()
2019-10-08 11:20:06 +02:00
Dylan Laduranty
40b65c16e2
Merge pull request #12291 from keestux/sam0-refactor-adc0
...
boards/sam0: refactor ADC_0 into plain ADC
2019-10-07 09:20:38 +02:00
Thomas Stilwell
8d7dc4e503
cpu/efm32/uart: uart_init(): begin with TX pin at idle level
...
else TX will be asserted low for a few usec until the peripheral
is initialized and deasserts it
2019-10-06 22:12:37 -05:00
Thomas Stilwell
277459613b
cpu/efm32/uart: uart_write(): block until TX is complete
...
This avoids breaking the last character if something unclocks
the UART immediately after uart_write() returns.
2019-10-06 18:33:59 -05:00
Thomas Stilwell
5fb6801cca
cpu/efm32/uart: don't enable rx if no callback is configured
2019-10-06 18:33:57 -05:00
Thomas Stilwell
c8f34c705b
cpu/efm32/uart: move reusable code into uart_poweron/off()
2019-10-06 18:30:00 -05:00
Thomas Stilwell
3541666956
cpu/efm32/uart: fix crash on rx with no callback configured
2019-10-06 17:56:30 -05:00
825303cc04
Merge pull request #12372 from aabadie/pr/cpu/nrf52_multiple_i2c
...
cpu/nrf52: allow accessing multiple i2c peripherals
2019-10-04 15:58:30 +02:00
Kevin "Tristate Tom" Weiss
4b7c5915ec
Merge pull request #10953 from gschorcht/sys/shell/heap_cmd/pr
...
sys/shell: add heap command
2019-10-04 13:49:57 +02:00
c1b95733b6
cpu/nrf52: allow accessing multiple i2c peripherals
2019-10-04 08:42:35 +02:00
Kees Bakker
04c84ed158
cpu/sam0: refactor ADC_0 into plain ADC
...
This change is for all boards with a sam0 cpu. This cpu just has one ADC.
It is unnecessary to have defines with ADC_0_ prefix as if multiple ADCs
are possible.
Some defines were not used, such as ADC_0_EN, ADC_0_CHANNELS,
ADC_MAX_CHANNELS, ADC_0_CLK_SOURCE, ADC_0_CHANNELS
Change all ADC_0_ prefixes to ADC_
2019-10-03 20:45:44 +02:00
Gunar Schorcht
5521a6c39d
cpu/esp: fix conflicts after rebase
2019-10-02 14:21:35 +02:00
Gunar Schorcht
3c47cc571f
cpu/esp32: fix conflicts after rebase
2019-10-02 14:21:35 +02:00
f85edaf82a
Merge pull request #10941 from keestux/update-samr30-vendor
...
cpu/samr30: update vendor files using ASF 3.35.1
2019-10-02 13:35:06 +02:00
Kevin "Tristate Tom" Weiss
5bbfe92c11
Merge pull request #12336 from benpicco/cc2538-spi_fix
...
cpu/cc2538: fix spi_transfer_bytes()
2019-10-02 10:52:16 +02:00
Dylan Laduranty
aed628f08b
Merge pull request #11486 from benpicco/saml21-lpram
...
cpu/saml21: Make Low-Power SRAM available to programs
2019-10-01 21:02:42 +02:00
benpicco
c4fa0842a2
Merge pull request #11940 from basilfx/feature/efm32_riotboot
...
efm32: add support for riotboot
2019-10-01 20:20:17 +02:00
Gunar Schorcht
02d81b717e
Merge pull request #12063 from maribu/i2c_release
...
drivers/periph/i2c: Updated i2c_release() to return void
2019-10-01 19:50:38 +02:00
Benjamin Valentin
84a8a26dde
cpu/cortexm: pointer to .text should be const
...
A pointer to read-only ROM data should be const.
2019-10-01 18:42:56 +02:00
Benjamin Valentin
618449c7bd
cpu/samd5x: hook up backup RAM
2019-10-01 18:39:40 +02:00
Benjamin Valentin
01b3484ffb
cpu/saml21: add definitions for low power SRAM
...
SAML21 provides 2/4/8 kiB of Low Power SRAM that is retained
in backup mode.
This adds definitions to make that memory availiable to RIOT.
2019-10-01 18:39:40 +02:00
Benjamin Valentin
2c09d9bd5b
cpu/cortexm_common: Make Low-Power SRAM available to programs
...
Many MCUs contain some Backup or Low Power SRAM that is retained'even
in the deepest sleep modes.
In such sleep modes the MCU is essentually turned off with only the RTC
still running.
It can be woken by a GPIO or a RTC alarm. When this happens, a reset is
triggered and the normal startup routine is invoked.
This adds bss & data section for this memory in the linker script.
This allows for structures to be placed in it e.g.:
e.g.:
static uint8_t persistent_buffer[64] __attribute__((section(".backup.bss")));
static uint32_t persistent_counter __attribute__((section(".backup.data"))) = 1234;
2019-10-01 18:39:40 +02:00
Benjamin Valentin
c9b827e5d5
sam0_common: export flag that tells if the CPU woke from deep sleep
...
It is often useful to know whether the CPU was just powered on afresh
or if it was woken from a deep sleep state, e.g. by RTC or GPIO event.
2019-10-01 18:39:40 +02:00
Bas Stottelaar
962b0efaaf
boards+efm32: add support for riotboot
2019-10-01 18:08:27 +02:00
Bas Stottelaar
0b6435560e
efm32: optimize when building the bootloader
2019-10-01 18:05:20 +02:00
benpicco
a7cb0a4b77
Merge pull request #12323 from basilfx/feature/efm32_uart_modes
...
cpu/efm32: provide periph_uart_mode
2019-10-01 15:32:50 +02:00
benpicco
5f6065f567
Merge pull request #12338 from cladmi/pr/make/cortexm/do_not_set_cpu_model
...
makefiles/arch/cortexm.inc.mk: removing setting CPU_MODEL
2019-10-01 15:25:16 +02:00
Gaëtan Harter
e73b4d2d24
cpu/lpc1768: explictly define CPU_MODEL
...
Define CPU_MODEL as it required by cortexm.inc.mk
The default setting will be removed from cortexm.inc.mk.
2019-10-01 11:38:35 +02:00
Gunar Schorcht
5009959610
Merge pull request #12346 from benpicco/esp32-thin_archives
...
cpu/esp32: unconditionally disable thin archives
2019-10-01 10:34:04 +02:00
benpicco
52bf448a3b
Merge pull request #12035 from gschorcht/cpu/esp32/fix_periph_flash
...
cpu/esp32: fix and improve periph/flash
2019-10-01 10:22:06 +02:00
Benjamin Valentin
0ca2ce0214
cpu/esp32: unconditionally disable thin archives
...
Thin archives also cause a boot loop when using the flash module.
To prevent further surprises, disable thin archives unconditionally
until the cause for this behaviour is known.
2019-10-01 09:28:33 +02:00
benpicco
5105a2e54d
Merge pull request #12340 from cladmi/pr/makefiles/board_cpu_macros
...
makefiles: CFLAGS convert to the uppercase function instead of using the shell
2019-09-30 19:53:28 +02:00
Bas Stottelaar
4e6b46ca20
cpu/efm32: implement uart_mode
2019-09-30 18:12:15 +02:00
Gaëtan Harter
4b93f27d83
cpu: use makefiles/utils uppercase
...
Convert the variables to uppercase using the 'makefiles/utils' function.
2019-09-30 17:25:24 +02:00
Benjamin Valentin
bf1eca338f
cpu/cc2538: fix spi_transfer_bytes()
...
Always wait for RNE before reading DR.
Fixes always reading in the !out_buf case.
2019-09-30 13:11:11 +02:00
Bas Stottelaar
b2769c0857
cpu: efm32: move LOW_POWER_ENABLED to efm32-features.mk
2019-09-30 00:03:15 +02:00
benpicco
1543a8c438
Merge pull request #12276 from kenrabold/pr-fe310_intr_cleanup
...
cpu/fe310: interrupt handling cleanup
2019-09-28 19:14:07 +02:00
kenrabold
1d6e37a7f7
cpu/fe310: interrupt handling cleanup
...
Cleanup of FE310 interrupt handler code
Optimization of intr context frame
Reduce size of intr stack
Added unhandled trap output
Fix PR #12237
2019-09-27 13:32:43 -07:00
benpicco
3a3267916e
Merge pull request #12313 from haukepetersen/fix_nrfble_featuredecl
...
cpu/nrf5x: decelare radio_nrfble feat for all nrfs
2019-09-27 11:17:36 +02:00
benpicco
efa41ad094
Merge pull request #12222 from benpicco/samd5x-clock
...
cpu/samd5x: allow more flexible selection of CLOCK_CORECLOCK
2019-09-27 11:07:54 +02:00
benpicco
3e538c042d
Merge pull request #12292 from benpicco/esp_wifi-workaround
...
cpu/esp32: disable thin archives if esp_wifi is used
2019-09-27 10:50:35 +02:00
Benjamin Valentin
7e5aa7e775
cpu/sam0_common: uart: fix baud rate calculation
...
In fractional mode, 3 bits are used to store the fractional part.
Therefore we must multiply / divide by 8 instead of 10 in order to
get the correct values.
2019-09-27 10:49:43 +02:00
Benjamin Valentin
736e5e5a35
cpu/samd5x: allow more flexible selection of CLOCK_CORECLOCK
...
There are some constraints to the oscillators on the samd5x.
- DFLL is fixed to run at 48 MHz
- DPLL can run at 96 to 200 MHz
Always use DFLL for frequencies <= 48 MHz.
For frequencies >= 96 MHz, use DPLL directly.
For frequencies < 96 MHz, clock DPLL at twice the desired frequency
and use a divider.
2019-09-27 10:49:43 +02:00
Hauke Petersen
982d730adf
cpu/nrf5x: decelare radio_nrfble feat for all nrfs
2019-09-27 10:00:06 +02:00
a7f6508109
cpu/cortexm: don't disable IRQs in cpu_jump_to_image()
2019-09-26 23:38:43 +02:00
e1e01e2617
Merge pull request #11250 from dylad/pr/samr34_support
...
board: add support for SAMR34-XPRO
2019-09-26 11:27:22 +02:00
dylad
e189d085b0
cpu/sam0: add support for SAMR34 MCU
2019-09-26 10:48:03 +02:00
dylad
c9bd7deea0
cpu/sam0: add SAMR34 vendor files
2019-09-26 10:48:03 +02:00
Francois Berder
1673f890ec
cpu: mips32r2_common: Use stdio_uart to handle UHI write syscalls
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-09-25 21:36:10 +01:00
Martine Lenders
57edabce96
Merge pull request #12269 from bergzand/pr/nrfusb/fix_control_write
...
nrfusb: Fix data stage handling of control writes
2019-09-25 18:08:08 +02:00
Gaëtan Harter
1e561e9f63
cpu/lpc2387: increase 'pthread_reaper' stacksize
...
At the time of configuration, the pthread-reaper uses '164' bytes of
stack when 'idle' stack is only '160'. By having double it gives some
margin.
ps
pid | name | state Q | pri | stack ( used) | base addr | current
1 | idle | pending Q | 15 | 160 ( 128) | 0x4000007c | 0x4000009c
2 | main | running Q | 7 | 2560 ( 1232) | 0x4000011c | 0x4000095c
3 | pthread-reaper | bl rx _ | 0 | 320 ( 164) | 0x40000bac | 0x40000c48
| SUM | | | 3040 ( 1524)
2019-09-25 16:17:01 +02:00
Benjamin Valentin
111fe80eb9
cpu/esp: disable thin archives if esp_wifi is used
...
For a yet unknown reason, both esp8266 and esp32 get stuck in a
reboot loop when thin archives are used.
As a workaround, disable thin archives for now if esp_wifi is used.
fixes #12258
2019-09-25 07:48:07 +02:00
Martine Lenders
1598c8c6f8
Merge pull request #11950 from gschorcht/cpu/esp32/periph-gpio_read-fix
...
cpu/esp32: fix of gpio_read for output ports
2019-09-24 20:20:40 +02:00
Francisco
5ab2db71a4
Merge pull request #12282 from LordTy/esp32_build_fix
...
cpu/esp32: Use awk/printf instead of echo -n when flashing esp32
2019-09-24 18:38:35 +02:00
benpicco
3833e42426
Merge pull request #12092 from cladmi/pr/cpu_model/minor_changes_included
...
boards with side-effect: move CPU/CPU_MODEL definition to Makefile.features
2019-09-24 18:36:58 +02:00
Gaëtan Harter
8cebed6792
boards/common/esp: harmonize CPU/CPU_MODEL to other boards
...
* CPU files should already have 'CPU' defined by the board.
* Do not conditionally define CPU as it is not needed.
This is part of cleanup prior to moving the CPU/CPU_MODEL to
Makefile.features.
2019-09-24 17:29:37 +02:00
Thomas Stilwell
70084ab6aa
cpu/efm32/uart: enable pullup on RX pin
2019-09-24 16:44:15 +02:00
Tim Broenink
35aa642e8a
cpu/common/esp32: use 'awk/printf' instead of 'echo'
...
- replaces 'echo -n' and 'awk' with 'printf' and 'awk'
- replaces rest of 'echo' statements with printf
2019-09-24 15:34:54 +02:00
Vincent Dupont
1a44d327cb
Merge pull request #11989 from gschorcht/cpu/esp32/periph-can
...
cpu/esp32: reimplementation of module esp_can as module periph can
2019-09-23 16:52:05 +02:00
40619d18ca
cpu/nrf5x_common: implement periph_wdt driver
2019-09-20 20:45:42 +02:00
Gunar Schorcht
d5bf41dba1
cpu/esp32: doc update for periph_can
2019-09-20 19:39:23 +02:00
Gunar Schorcht
fc5692d67c
cpu/esp32: driver for ESP32 CAN as periph_can
2019-09-20 19:39:23 +02:00
Gunar Schorcht
c498ebd388
cpu/esp32: default device config for periph_can
2019-09-20 19:35:02 +02:00
Gunar Schorcht
49ecce9b81
cpu/esp32: periph_can device/conf type definitions
2019-09-20 19:35:02 +02:00
Gunar Schorcht
e0f1ab0a16
cpu/esp32: module esp_can removed
...
CAN controller driver for ESP32 is no longer realized as separate module.
2019-09-20 19:35:02 +02:00
Benjamin Valentin
c9f8ff1cf1
sam0_common: add Watchdog implementation
2019-09-20 19:04:41 +02:00
8bb98ba151
cpu/stm32f7: add support for stm32f723 cpu line
2019-09-20 13:41:12 +02:00
Francisco
bd5ceb58e7
Merge pull request #11984 from aabadie/pr/boards/p-l496g-cell02
...
boards/p-l496g-cell02: add support
2019-09-20 11:28:54 +02:00
711854562b
Merge pull request #12236 from twostairs/cpu_stm32_common_periph_gpip-pd
...
cpu/stm32_common/periph/gpio: Pull-down on gpio_init_af
2019-09-18 20:02:40 +02:00
07b3bc6918
nrfusb: Fix data stage handling of control writes
2019-09-18 08:11:44 +02:00
benpicco
d5c272ed86
Merge pull request #12199 from smlng/fix_timer_returns
...
periph/timer: Fix return codes of timer API
2019-09-17 23:04:46 +02:00
Martine Lenders
98482b67c0
Merge pull request #12263 from benpicco/esp_now-fix
...
esp_now: fix unused variable warning
2019-09-17 21:59:01 +02:00
Benjamin Valentin
9129ea7399
esp_now: fix unused variable warning
...
esp_now_pkt_hdr_t *hdr is only used if gnrc_sixlowpan is used,
so move it into the according #ifdef
fixes #12257
2019-09-17 19:02:47 +02:00
benpicco
e214dcbd2c
Merge pull request #11986 from kaspar030/mips_remove_nomips16
...
cpu/mips32r2: remove nomips16 attribute from _mips_handle_exception
2019-09-17 16:54:03 +02:00
b415588677
cpu/mips32r2: remove nomips16 attribute from _mips_handle_exception
...
A note says "The nomips16 attribute should not really be needed,
it works around a toolchain issue in 2016.05-03."
In fact, in 2018.09-03, the attribute leads to this error:
```cpu/mips32r2_common/thread_arch.c:191:1: error: ‘_mips_handle_exception’ redeclared with conflicting ‘nomips16’ attributes```
This this commit removes the attribute.
2019-09-17 15:59:10 +02:00
9b4755c3ba
Merge pull request #12196 from kenrabold/pr_thread_yield_higher
...
cpu/fe310: fixes for SW interrupt latency issues
2019-09-17 14:25:10 +02:00
benpicco
5a01a762c2
Merge pull request #12227 from maribu/mips32r2-early-stdio
...
cpu/mips32r2_common: Added call to stdio_init()
2019-09-17 10:46:10 +02:00
Marian Buschsieweke
8fa0c04e23
Merge pull request #12229 from benpicco/lpc238-cleanup
...
cpu/lpc2387: clean up the platform
2019-09-16 22:06:59 +02:00
benpicco
1d90617386
Merge pull request #12252 from cladmi/pr/esp8266/revert_uncompatible_option
...
Revert "cpu/esp8266: update deprecated flash_size argument"
2019-09-16 20:48:46 +02:00
kenrabold
547ebd1b27
cpu/fe310: use WFI to wait for SW interrupt
2019-09-16 09:32:27 -07:00
071c2b2c5f
Merge pull request #12109 from nmeum/pr/riscv_context_switch
...
cpu/fe310: don't call thread_yield when sched_active_thread is invalid
2019-09-16 16:51:39 +02:00
Gaëtan Harter
15ea073f64
Revert "cpu/esp8266: update deprecated flash_size argument"
...
This reverts commit 422644bd3a
.
The option is only supported after 2.6 which is currently not the
version given with 'esp' toolchain.
It was a bit too early to switch to the new version.
Version 2.7 also supports the old option with only a warning.
2019-09-16 16:08:35 +02:00
Benjamin Valentin
e3b0874305
cpu/lpc2387: clean up the platform
...
- move clock setup from boards/ to cpu/
- reduce code duplication
2019-09-16 13:08:56 +02:00
Marius
e87529b4e4
Pull-up on RX pin
2019-09-15 23:55:39 +02:00
Marian Buschsieweke
95a2081cfa
Merge pull request #12225 from maribu/esp8266-early-stdio
...
cpu/esp8266: Moved stdio_init before periph_init
2019-09-14 12:34:45 +02:00
Marian Buschsieweke
baf911bd7d
cpu/esp8266: Moved stdio_init before periph_init
...
- This guarantees that DEBUG() is available early in boot process
- Forgotten in https://github.com/RIOT-OS/RIOT/pull/11367 , this fixes broken stdio
2019-09-14 12:17:14 +02:00
Marian Buschsieweke
5fd6652865
cpu/mips32r2_common: Added call to stdio_init()
...
Fixed bug introduced in https://github.com/RIOT-OS/RIOT/pull/11367
2019-09-14 11:42:15 +02:00
Marian Buschsieweke
2750dc2000
cpu/esp32: Moved stdio_init() before periph_init()
...
- This guarantees that DEBUG() is available early in boot process
- Forgotten in https://github.com/RIOT-OS/RIOT/pull/11367 , fixes broken stdio
2019-09-14 11:12:32 +02:00
aed12b4853
Merge pull request #11252 from fjmolinas/pr_wdg_stm32
...
cpu/stm32_common: add watchdog for stm32
2019-09-13 09:16:18 +02:00
Dylan Laduranty
88fe7afe2b
Merge pull request #12121 from benpicco/sam0-fix_exti
...
cpu/sam0_common/gpio: don't hard-code number of ports
2019-09-12 20:17:11 +02:00
Francisco Molina
f54c2dbbda
cpu/stm32_common: add watchdog for stm32
2019-09-12 19:07:40 +02:00
Gunar Schorcht
4469dadb7f
cpu/esp32: _esp_wifi_dev exposed for lwIP
...
To be able to access the single esp_wifi network device from lwIP adaptation layer, static keyword was removed from esp_wifi_dev variable.
2019-09-12 18:39:46 +02:00
benpicco
e589cfbf6c
Merge pull request #10760 from gschorcht/esp32_esp_eth_link_opt
...
cpu/esp32: support of NETOPT_LINK_CONNECTED in esp_eth_netdev
2019-09-12 18:14:44 +02:00
Benjamin Valentin
b1724a7d1b
periph/rtc: normalize struct tm before usage
...
A naive implementation may set a RTC alarm in 30s by calling
struct tm now;
rtc_get_time(&now);
now.tm_sec += 30;
rtc_set_alarm(&now, _cb, NULL);
This works for RTC implementations that use a RTT internally and call
mktime() to convert the struct tm to a unix timestamp, as mktime() will
normalize the struct in the process.
Call rtc_tm_normalize() when the RTC uses separate registers for time / date
components to ensure it is normalized.
This also modifies tests/periph_rtc to exercise this case.
2019-09-12 11:32:31 +02:00
benpicco
729ba07e9a
Merge pull request #11229 from maribu/msp430_cleanup
...
cpu/msp430_common: Cleanup
2019-09-11 20:12:55 +02:00
benpicco
c12b88ef59
Merge pull request #12188 from jcarrano/sam0_rtt_fix_flags
...
cpu/sam0_common/../rtt: correcly clear flags.
2019-09-11 15:24:46 +02:00
Sebastian Meiling
ddd97001c1
cpu/lm4f120: fix uninit var in periph/timer
2019-09-11 14:15:51 +02:00
Sebastian Meiling
0629d076eb
cpu/sam3: adapt timer to return 0 on success
...
Adapt periph/timer implementation of sam3 based MCUs
to return 0 on success for all functions.
2019-09-11 13:53:04 +02:00
Sebastian Meiling
49acf98841
cpu/sam0: adapt timer to return 0 on success
...
Adapt periph/timer implementation of sam0 based MCUs
to return 0 on success for all functions.
2019-09-11 13:52:28 +02:00
Sebastian Meiling
af529531a4
cpu/nrf5x: adapt timer to return 0 on success
...
Adapt periph/timer implementation of nrf5x based MCUs
to return 0 on success for all functions.
2019-09-11 13:51:53 +02:00
Sebastian Meiling
935bb51e14
cpu/native: adapt timer to return 0 on success
...
Adapt periph/timer implementation of native based MCUs
to return 0 on success for all functions.
2019-09-11 13:51:02 +02:00
Sebastian Meiling
22f4ec81b0
cpu/mips32r2: adapt timer to return 0 on success
...
Adapt periph/timer implementation of mips32r2 based MCUs
to return 0 on success for all functions.
2019-09-11 13:48:12 +02:00
Sebastian Meiling
ddcbfce391
cpu/lpc1768: adapt timer to return 0 on success
...
Adapt periph/timer implementation of lpc1768 based MCUs
to return 0 on success for all functions.
2019-09-11 13:47:32 +02:00
Sebastian Meiling
fd900357fc
cpu/lm4f120: adapt timer to return 0 on success
...
Adapt periph/timer implementation of lm4f120 based MCUs
to return 0 on success for all functions.
2019-09-11 13:46:55 +02:00
Sebastian Meiling
84e6d1571a
cpu/kinetis: adapt timer to return 0 on success
...
Adapt periph/timer implementation of kinetis based MCUs
to return 0 on success for all functions.
2019-09-11 13:46:15 +02:00
Sebastian Meiling
c4fcb241b1
cpu/cc26x0: adapt timer to return 0 on success
...
Adapt periph/timer implementation of cc26x0 based MCUs
to return 0 on success for all functions.
2019-09-11 13:45:29 +02:00
Sebastian Meiling
cabaaebff4
cpu/cc2538: adapt timer to return 0 on success
...
Adapt periph/timer implementation of cc2538 based MCUs
to return 0 on success for all functions.
2019-09-11 13:44:46 +02:00
Sebastian Meiling
1d24709674
cpu/atmega_common: adapt timer to return 0 on success
...
Adapt periph/timer implementation of atmega based MCUs
to return 0 on success for all functions.
2019-09-11 13:41:44 +02:00
Juan Carrano
f7279c84bb
cpu/sam0_common: rtt: correcly clear flags.
...
The INTFLAGS register is cleared by writing a 1 to the corresponding interrupt
flag bit. From the samr21's manual:
> Writing a zero to this bit has no effect.
> Writing a one to this bit clears the Compare 0 interrupt flag.
This is a common pattern in flag registers.
This RTT driver is using or-equal to clear the flags, which means it can
possibly clear other interrupts. There's a small chance that one event is
missed if it happens very close to another event.
Credits to @benpicco, @dylad for pointing out missing fixes.
2019-09-11 12:55:10 +02:00
benpicco
b6fe0e25fe
Merge pull request #10020 from gebart/pr/kinetis-lptmr-reload
...
kinetis: lptmr reload instead of spinning
2019-09-11 10:12:58 +02:00
benpicco
6f63ef42a7
Merge pull request #11920 from maribu/lpc2387
...
cpu/lpc2387: Cleanup
2019-09-11 10:12:26 +02:00
benpicco
410e6edf58
Merge pull request #11882 from maribu/arm7_buildsystem
...
cpu/arm7_common: Moved compiler flags here
2019-09-11 10:12:14 +02:00
benpicco
85798e831b
Merge pull request #11887 from maribu/arm7_thread_yield_higher
...
cpu/arm7_common: Fix thread_yield_higher in ISR
2019-09-11 10:11:57 +02:00
Marian Buschsieweke
7092566f1f
cpu/arm7_common: Moved compiler flags here
...
- Moved compiler & linker flags from boards/common/msba2 to cpu/arm7_common
- Moved dependency to newlib nano to cpu/arm7_common
- Moved config to link in cpu/startup.o to cpu/arm7_common
2019-09-11 01:02:41 +02:00
Juan I Carrano
c50d8fada1
Merge pull request #11646 from cladmi/pr/esp/programmer_update
...
esp*: updates to the programmer configuration
2019-09-10 17:58:20 +02:00
Marian Buschsieweke
b87ab96d17
Merge pull request #10661 from miri64/gnrc_netif_hdr/enh/netif_setter
...
gnrc_netif_hdr: add setter for netif
2019-09-10 16:14:28 +02:00
Juan I Carrano
abc25f0715
Merge pull request #11452 from maribu/atmega_irq
...
cpu/atmega_common: Bugfixes in irq_arch.c
2019-09-10 13:39:53 +02:00
Martine Lenders
50a3238ee0
esp-now: use gnrc_netif_hdr_set_netif()
2019-09-10 12:37:32 +02:00
benpicco
3aa8bc0d70
Merge pull request #12150 from jcarrano/compress-debuginfo
...
toolchain/cflags: enable dwarf compression (save 50% HDD)
2019-09-10 10:31:45 +02:00
3d8c4d52d1
Merge pull request #12100 from OTAkeys/pr/fix_uart_poweroff
...
cpu/stm32_common/uart: fix rare uart failure
2019-09-10 10:25:46 +02:00
88e07c06d2
Merge pull request #11367 from maribu/arm_early_stdio
...
cpu: Moved stdio_init() prior to periph_init() for ARM targets
2019-09-09 16:52:30 +03:00
d08d6a409c
Merge pull request #12181 from fjmolinas/pr_stm32f7_lsi
...
cpu/stm32_common: fix STM32F7 LSI_CLOCK definition
2019-09-09 14:47:57 +02:00