Francisco
b98e4bf0d1
Merge pull request #13658 from fjmolinas/pr_periph_timer_cc2538
...
cpu/cc2538: fix GPT3 IRQ definition
2020-03-20 14:31:05 +01:00
benpicco
829671d504
Merge pull request #13640 from gschorcht/cpu/esp8266/periph_rtt
...
cpu/esp8266: add RTT implementation
2020-03-19 17:42:20 +01:00
Gunar Schorcht
df19c6d1b4
Merge pull request #13519 from benpicco/rtt_rtc
...
drivers/rtt_rtc: add RTT based RTC implementation, enable it for cpu/cc2538, nrf5x_common
2020-03-19 17:18:43 +01:00
Francisco Molina
226e1b5daf
cpu/cc2538: fix GPT3 timer IRQ definition
2020-03-19 16:31:57 +01:00
Benjamin Valentin
f8d61edba0
cpu/nrf5x_common: use RTT based RTC implementation
2020-03-19 15:25:14 +01:00
Benjamin Valentin
f9346e1e2b
cpu/cc2538: use RTT based RTC implementation
2020-03-19 15:25:14 +01:00
Gunar Schorcht
4ac8f8df4c
Merge pull request #13646 from benpicco/BACKUP_RAM
...
cpu: add BACKUP_RAM attribute
2020-03-19 15:09:30 +01:00
Gunar Schorcht
464e3a8741
cpu/esp8266: add RTT implementation
2020-03-19 13:59:58 +01:00
Benjamin Valentin
69551d4a74
cpu/lpc2387: define BACKUP_RAM attribute
2020-03-19 13:38:50 +01:00
Benjamin Valentin
b8e18d521f
cpu/esp32: define BACKUP_RAM attribute
2020-03-19 13:37:58 +01:00
Benjamin Valentin
a11bcdcd5c
cpu/cortexm_common: define BACKUP_RAM attribute
2020-03-19 13:37:58 +01:00
Gunar Schorcht
920d54b226
cpu/esp32/esp_wifi: integrate WPA2 Enterprise mode
2020-03-17 17:51:29 +01:00
Gunar Schorcht
ae647ed95f
cpu/esp32/esp_wifi: Makefile integration for WPA2 Enterprise mode
2020-03-17 17:51:29 +01:00
Francisco
d77ecc1cde
Merge pull request #13598 from benpicco/cpu/cc2538-spi-fix
...
cpu/cc2538: fix spi_transfer_bytes()
2020-03-17 17:29:49 +01:00
Jean Pierre Dudey
f1af3ae043
cc26x0: add AON_RTC definitions
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-03-16 19:36:54 -05:00
Jean Pierre Dudey
1bb689ff45
cc26x2_cc13x2: add AON_RTC definitions
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-03-16 19:36:54 -05:00
Jean Pierre Dudey
20439cc3cc
cc26xx_cc13xx: add RFC_DBELL/RFC_PWR definitions
...
This definition is compatible with `cc26x0` and `cc26x2_cc13x2`.
The only difference is (cc26x0 -> cc26x2_cc13x2):
- IRQ13 -> FG_COMMAND_STARTED
- IRQ12 -> COMMAND_STARTED
Those IRQs aren't used on cc26x0 radio so it shouldn't affect anything.
2020-03-16 19:36:54 -05:00
Jean Pierre Dudey
ec4fccb3f7
cc26xx_cc13xx: add PERIPH_BASE_NONBUF
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-03-16 19:30:31 -05:00
7be303f12f
Merge pull request #7583 from haukepetersen/add_sam3_rtt
...
cpu/sam3: added RTT driver
2020-03-12 21:30:05 +01:00
Martine Lenders
5defa1ae34
Merge pull request #13466 from gschorcht/fix_compilation_with_ndebug
...
tests: fix compilation problems with NDEBUG
2020-03-12 19:34:33 +01:00
Gunar Schorcht
b7b244b6d9
cpu/stm32_common: fix NDEBUG compile problem
2020-03-12 18:04:42 +01:00
Gunar Schorcht
b2356d29c5
cpu/nrf51: fix NDEBUG compile problem
2020-03-12 18:04:42 +01:00
benpicco
d5c7d28b38
Merge pull request #10745 from kaspar030/make_idle_stacksize_configurable
...
cpu: make default idle/main stacksizes configurable on all archs
2020-03-12 14:38:32 +01:00
b0e7d6abd6
cpu/atmega32u4: make THREAD_STACKSIZE_IDLE configurable
2020-03-12 13:35:43 +01:00
c86ccfcf67
cpu: esp32: make THREAD_STACKSIZE_IDLE/DEFAULT configurable
2020-03-12 13:01:13 +01:00
84745365fd
cpu: atmega_common: make THREAD_STACKSIZE_IDLE configurable
2020-03-12 13:01:13 +01:00
14ed03074e
cpu: lpc2387: make THREAD_STACKSIZE_IDLE configurable
2020-03-12 13:01:13 +01:00
benpicco
5d038a24bf
Merge pull request #13510 from benpicco/cpu/cc2538-pm
...
cpu/cc2538: implement periph/pm
2020-03-12 12:18:18 +01:00
benpicco
52cc02c9a9
Merge pull request #13387 from nmeum/mpu_noexec_ram_ng
...
Add optional support for executable space protections
2020-03-11 20:00:44 +01:00
Hauke Petersen
ea2910e2f4
cpu/sam3: add periph_rtt driver implementation
2020-03-11 12:53:20 +01:00
Hauke Petersen
e5d940fce8
cpu/sam3: add opt to use external 32khz oscillator
2020-03-11 12:53:04 +01:00
79431878ac
Merge pull request #13051 from dylad/pr/uart_hw_fc
...
cpu/uart: create common uart hw fc module
2020-03-10 16:41:36 +01:00
Dylan Laduranty
0b15db3694
cpu/nrf5x: use generic hw fc module
2020-03-10 14:47:19 +01:00
Dylan Laduranty
3c47911189
cpu/stm32: use generic hw fc module
2020-03-10 14:34:11 +01:00
Dylan Laduranty
8e2227b18b
cpu/cc26xx_cc13xx: use generic hw fc module
2020-03-10 14:22:34 +01:00
Dylan Laduranty
077a15f254
cpu/cc2538: use generic hw fc module
2020-03-10 14:22:34 +01:00
Dylan Laduranty
7a095a80d7
cpu/sam0: use generic hw fc module
2020-03-10 14:22:34 +01:00
benpicco
741b9d3b2d
Merge pull request #13603 from ML-PA-Consulting-GmbH/samd21j17d_add
...
cpu/sam0_common: add samd21j17d
2020-03-10 12:00:25 +01:00
Sören Tempel
59676a1f5e
Make sure the mpu_noexec_ram regions has the lowest priority
...
From the ARMv7-M ARM section B3.5.3:
Where there is an overlap between two regions, the register with
the highest region number takes priority.
We want to make sure the mpu_noexec_ram region has the lowest
priority to allow the mpu_stack_guard region to overwrite the first N
bytes of it.
This change fixes using mpu_noexec_ram and mpu_stack_guard together.
2020-03-10 11:16:22 +01:00
Benjamin Valentin
5d8c00e302
cpu/cc2538: implement periph/pm
...
cc2538 implements 4 sleep modes.
In the lightest mode (3) any interrupt source can wake up the CPU.
In mode 2, only RTT, GPIO or USB may wake the CPU.
In mode 1 only RTT and GPIO can wake the CPU.
In mode 0 only GPIO can wake the CPU.
In mode 0 and 1 the lower 16k RAM are lost. This is a problem since those
are usually used by RIOT.
The linkerscripts in cc2538/ldscripts take different approaches towards that.
Some only use the upper 16k and leave the other half to be managed by the
application.
`cc2538sf53.ld` which is used by `openmote-b` uses the entire RAM starting
at the lower half, so it will not be able to wake up from those modes.
A quick fix to test those modes with `tests/periph_pm` would be
--- a/cpu/cc2538/ldscripts/cc2538sf53.ld
+++ b/cpu/cc2538/ldscripts/cc2538sf53.ld
@@ -21,7 +21,7 @@ MEMORY
{
rom (rx) : ORIGIN = 0x00200000, LENGTH = 512K - 44
cca : ORIGIN = 0x0027ffd4, LENGTH = 44
- ram (w!rx) : ORIGIN = 0x20000000, LENGTH = 32K
+ ram (w!rx) : ORIGIN = 0x20004000, LENGTH = 16K
}
2020-03-10 10:35:46 +01:00
Alexandre Moguilevski
648a5b9c58
cpu/sam0_common: add samd21j17d
2020-03-10 10:26:45 +01:00
Francisco
1b5f22ec2e
Merge pull request #8410 from OTAkeys/pr/fix_stm32f1_boards
...
boards: fix CLOCK_PLL_PREDIV on stm32f1-based boards
2020-03-10 09:35:48 +01:00
Benjamin Valentin
5c4c45fd3f
cpu/sam0_common: gpio: add gpio_disable_mux() function
...
Inverse to gpio_init_mux()
2020-03-09 19:23:33 +01:00
Vincent Dupont
21bbfbed1d
stm32_common/stmclk: check if CLOCK_PLL_PREDIV is valid
2020-03-09 18:00:47 +01:00
Benjamin Valentin
80392dc644
cpu/cc2538: spi: unify spi_transfer_bytes()
...
Use a common helper function to read/write the data register.
2020-03-09 16:37:07 +01:00
Benjamin Valentin
68b2c57d2d
cpu/cc2538: spi: fix spi_transfer_bytes() with in_buf = NULL
...
We have to read the DR for every byte that we write.
Just reading DR while SPI is busy in a loop can lead to bytes being
left in the fifo, corrupting subsequent reads.
2020-03-09 16:22:37 +01:00
Marian Buschsieweke
e326acfc78
cpu/{stm32r1,stm32_common}: Allow exposing JTAG pins as GPIOs
...
- cpu/stm32f1: Removed previous code in gpio_init() to provide PB4 on the
Nucleo-F103RB only
- cpu/stm32_common: Introduced STM32F1_DISABLE_JTAG which, if defined in
board.h, exposes the JTAG only pins as GPIOs. This keeps the SWD pins, so that
SWD debugging remains possible
2020-03-08 13:05:35 +01:00
64f04e4da9
nrf5x: Add built-in DC/DC converter enable function
...
The internal DC/DC converter is more efficient compared to the LDO
regulator. The downside of the DC/DC converter is that it requires an
external inductor to be present on the board. Enabling the DC/DC
converter is guarded with NRF5X_ENABLE_DCDC, this macro must be defined
if the DC/DC converter is to be enabled.
2020-03-07 17:37:40 +01:00
Sören Tempel
2c1a627118
Add mpu_noexec_ram pseudomodule
2020-03-07 13:09:55 +01:00
benpicco
7396d05605
Merge pull request #13575 from fjmolinas/pr_cc2538_rf_deps
...
cpu/cc2538: handle cc2538_rf deps in Makefile.dep
2020-03-06 18:00:51 +01:00
Francisco Molina
ff6f6618fb
cpu/cc2538: handle cc2538_rf deps in Makefile.dep
2020-03-06 14:17:19 +01:00
Jose Alamos
3ad574a822
drivers/netdev: use netdev_trigger_event_isr function
2020-03-06 14:03:43 +01:00
Yegor Yefremov
41db161162
doxygen/I2C: don't include overridden typedefs
...
Add missing #ifndefs to overridden I2C typedefs for lpc2387 CPU.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2020-03-05 15:31:06 +01:00
benpicco
681678e3f3
Merge pull request #13537 from jue89/feature/sam0-spi-frequency
...
cpu/sam0_common: mitigate rounding errors of SPI baud rate calculation
2020-03-04 16:50:46 +01:00
Koos
67dfb9d39e
cpu/esp8266: Fixed small typo in code example
2020-03-04 09:54:36 +01:00
68ec8b2c2b
Merge pull request #13391 from kaspar030/mpu_feature
...
cpu/cortex-m: turn MPU support into a feature
2020-03-04 07:09:40 +01:00
benpicco
8e8cfbfe9c
Merge pull request #13516 from gschorcht/cpu/esp/fix_common_cpu_conf
...
cpu/esp_common: fixes common CPU configurations
2020-03-04 00:26:36 +01:00
a3c527fdbc
cpu/*: add cortex_mpu to known-to-support CPU families
2020-03-03 22:59:41 +01:00
Martine Lenders
e4f27b415e
Merge pull request #13394 from benpicco/atmega-rtc
...
cpu/atmega_common: implement emulated RTC support
2020-03-03 19:03:47 +01:00
benpicco
17659018bf
Merge pull request #13520 from benpicco/rtc_mktime-convert
...
cpu/stm32f1: make RTC Y2038 safe
2020-03-03 17:23:04 +01:00
Benjamin Valentin
93d2068a9e
cpu/atmega_common: Implement RTC based on TIM2
...
This implements a basic Real Time Clock based on TIM2.
As the timer is too fast and wraps around after just 8 bits, it is
not used directly. Instead TIM2 is responsible for providing a 1 Hz
tick by generating an alarm every second.
The current time data is kept in the `.noinit` section, so it will survive
a reboot, but the clock will not be updated while the bootloader runs, so
expect inaccuracies.
2020-03-03 16:26:26 +01:00
Gunar Schorcht
9e372104f0
Merge pull request #13284 from benpicco/rtc_mktime
...
periph_common/rtc: add rtc_mktime() & rtc_localtime() helper functions for RTC implementations
2020-03-03 14:12:50 +01:00
Francisco
3f062a78b2
Merge pull request #13045 from aabadie/pr/boards/remote_factorize
...
boards/remote*: cleanup and factorize code in peripheral configuration headers
2020-03-03 13:21:04 +01:00
Juergen Fitschen
0032d35fe8
cpu/sam0_common: mitigate rounding errors of baud rate calculation
...
Instead of always rounding up, the driver now rounds to the nearest integer. This reduces the absolut rounding error when setting SPI baud rates.
2020-03-03 12:32:42 +01:00
benpicco
c6d5cd8872
Merge pull request #13521 from gschorcht/cpu/esp32/add_noinit_section
...
cpu/esp32: add .noinit section in linker script
2020-03-03 11:38:55 +01:00
Benjamin Valentin
1ca26adde8
cpu/esp32: rtc: use rtc_mktime() for Y2038k
...
By using a custom EPOCH for the RTC implementation, we can extend the
range of the 32 bit counter based RTC by 118 years.
It also reduces the code size compared to the stdlib based POSIX functions.
2020-03-03 11:01:02 +01:00
Thomas Stilwell
048fca998b
cpu/kinetis: add mkw41z256vht4 to no-hwrng list
2020-03-01 16:56:34 +01:00
Gunar Schorcht
8b61c40fc8
cpu/esp32: add .noinit section to linker script
2020-03-01 11:04:18 +01:00
Gunar Schorcht
b89b4e2259
cpu/esp32: place libc functions in IRAM
2020-03-01 10:55:52 +01:00
Gunar Schorcht
085eb3f40c
cpu/esp32: place common CPU functions to IRAM
2020-03-01 10:55:52 +01:00
Gunar Schorcht
0d451969c3
cpu/esp32: place newlib syscalls in IRAM
2020-03-01 10:01:34 +01:00
Benjamin Valentin
33d03e7b3f
cpu/stm32f1: make RTC Y2038 safe
...
Use rtc_* functions with custom EPOCH.
This buys us about 118 years.
2020-02-29 17:45:16 +01:00
Gunar Schorcht
33fd259115
cpu/esp: platform heap_stats only used with esp_idf_heap
2020-02-29 12:21:09 +01:00
Gunar Schorcht
ef248b392d
cpu/esp_comomon: rename cpu_conf.h to cpu_conf_common.h
...
To be able to define common configurations for all ESP CPUs, the CPU specific configuration cpu_conf.h has to include a common configuration. For that purpose cpu_conf.h in cpu/esp_common is renamed to cpu_conf_common.h and included in CPU specific configurations.
2020-02-29 12:07:12 +01:00
Benjamin Valentin
51fa5afef7
cpu/samd21: default 1kHz clock to same source as 32kHz clock
...
The split between GEN2_ULP32K and GEN3_ULP32K was introduced to fix
a failure in tests/periph_wdt when the external oscillator was used.
By not running the external oscillator on demand, the failure can no
longer be observed, so default GEN3_ULP32K to GEN2_ULP32K.
2020-02-27 16:01:44 +01:00
Benjamin Valentin
2d7bc9e467
cpu/samd21: don't run XOSC32K on demand
...
This significantly reduces start-up time.
The XOSC32K is only configured when needed anyway.
2020-02-27 15:59:10 +01:00
Benjamin Valentin
937c954d92
cpu/lpc2387: implement periph/i2c
...
The lpc23xx MCU has up to three I2C interfaces.
This adds a driver for it.
The peripheral works in interrupt mode, each change of the state machine
will generate an interrupt.
The response to the states are laid out in the data sheet.
This replaces the old driver that was removed in c560e28eb6
2020-02-26 23:41:38 +01:00
Peter Kietzmann
c78962a594
Merge pull request #13487 from JannesVolkens/stm32_eth_mac_filter_fix
...
cpu/stm32_common/periph: Fix multicast filtering
2020-02-26 17:16:08 +01:00
Jannes
1848b0a5c2
cpu/stm32_common/periph: Fix multicast filtering
2020-02-26 15:57:59 +01:00
benpicco
98405fe151
Merge pull request #12380 from benemorius/pr/efm32-uart-init-tx-idle
...
cpu/efm32/uart: uart_init(): begin with TX pin at idle level
2020-02-26 10:23:12 +01:00
benpicco
0edfd13df0
Merge pull request #13310 from benpicco/sam0-exti-common
...
cpu/sam0_common: use generic exti_config
2020-02-26 08:40:49 +01:00
benpicco
99f3f67e67
Merge pull request #13317 from benpicco/arm7-event_thread
...
tests/event_threads: remove arch_arm7 from blacklist
2020-02-26 08:39:00 +01:00
Benjamin Valentin
a0ac2384ac
cpu/sam0_common: samr30: add integer literal macros
...
All the more recent vendor files have them, so include them for samr30 too.
It is expected for this to become obsolete with the next vendor file update.
2020-02-25 21:52:24 +01:00
Gunar Schorcht
f688f84a15
Merge pull request #12928 from benpicco/newlib-multiheap
...
sys/newlib: enable multiple heaps in _sbrk_r()
2020-02-25 19:16:42 +01:00
Peter Kietzmann
00d4d365ce
Merge pull request #13383 from JannesVolkens/stm32_eth_mac_filter_fix
...
cpu/stm32_common/periph: Fix addr filtering
2020-02-25 18:03:19 +01:00
benpicco
2b4a8e694a
Merge pull request #13465 from gschorcht/cpu/atmega_common/fix_ndebug_problem
...
cpu/atmega_common: fix of compilation problem with NDEBUG
2020-02-25 11:56:58 +01:00
ed101a6b92
cpu: remove useless export of TARGET_ARCH
2020-02-25 09:42:11 +01:00
Gunar Schorcht
da244ffcaa
cpu/atmega_common: fix compile problem with NDEBUG
2020-02-25 09:41:24 +01:00
92f2b820cd
cpu: remove exports of UNDEF vars
2020-02-25 09:40:34 +01:00
Benjamin Valentin
442ddc1346
cpu/samd21: Switch EIC clock to slow speed on STANDBY mode
2020-02-24 12:02:27 +01:00
Juergen Fitschen
43ff72ad56
cpu/sam0*: Switch EIC clock to slow speed on STANDBY mode
2020-02-24 12:02:25 +01:00
Juergen Fitschen
1265efc785
cpu/sam0*: Wrap cortexm_sleep call
2020-02-24 11:48:13 +01:00
Juergen Fitschen
ac8a81b8f3
cpu/saml21: disable fast clock if it is not requested
2020-02-24 11:48:13 +01:00
58450c6c59
Merge pull request #13342 from wosym/pr/socketcanfix
...
cpu/native/can/candev_linux: add check for real can
2020-02-24 09:39:12 +01:00
Gunar Schorcht
817446ae54
cpu/esp32/esp_wifi: enable crypto functions for WPA2 Enterprise
2020-02-23 10:09:48 +01:00
Gunar Schorcht
3d1a895c5b
cpu/esp32/esp_wifi: wpa_supplicant files for WPA2 Enterprise mode
...
Add all files of wpa_supplicant from ESP32 SDK that are required for WPA2 Enterprise mode.
2020-02-23 10:09:48 +01:00
Gunar Schorcht
202758f400
cpu/esp32/esp_wifi: changes for wpa_supplicant in WPA2 Enterprise mode
...
`nvs_flash` functions have to be set to 0 if module `esp_idf_nvs_flash` is not enabled. Otherwise wpa_supplicant will crash in WPA2 Enterprise mode.
2020-02-23 10:09:48 +01:00
Benjamin Valentin
aac2855c7c
esp-wifi: allow connecting to open networks
...
Allow connecting to unecnrypted WiFis if `ESP_WIFI_PASS` is not set.
2020-02-22 13:45:15 +01:00
benpicco
ce947b4824
Merge pull request #12955 from gschorcht/cpu/esp/deduplicate_and_cleanup
...
cpu/esp*: code deduplication and cleanup
2020-02-22 13:03:18 +01:00
Gunar Schorcht
5b4389cf46
cpu/esp32: update of ld script for littlefs*
...
During the write access to the SPI flash, the IROM cache is not available and only code from the IRAM can be executed. Therefore, the code of file system implementations which access the SPI flash must reside in IRAM.
2020-02-22 01:35:07 +01:00