fc6b586919
Merge pull request #13586 from bergzand/pr/nrf/dcdc
...
nrf5x: Add and enable configuration for the built-in DC/DC converter
2020-03-24 11:56:40 +01:00
Gunar Schorcht
c8a2ff2406
Merge pull request #13685 from leandrolanzieri/pr/esp/cleanup_makefile_dep_include
...
cpu/esp[32, 8266, _common]: Move dependency resolutions to Makefile.dep
2020-03-24 11:22:08 +01:00
Leandro Lanzieri
58320c943e
cpu/esp8266: Move common modules fo Makefile.dep
2020-03-24 09:27:40 +01:00
Leandro Lanzieri
afc0ad4d57
cpu/esp_common: Set RIOT_TEST_TIMEOUT with conditional expansion
2020-03-24 09:27:40 +01:00
Leandro Lanzieri
56972af3b4
cpu/esp_common: Don't increase GNRC_NETIF_NUMOF on Makefile
2020-03-24 09:27:30 +01:00
Leandro Lanzieri
939a10813b
cpu/esp_common: Check for esp_spi_ram with conditional expansion
2020-03-24 09:21:23 +01:00
Leandro Lanzieri
fcfc15e199
cpu/esp: Move dependency resolution of esp_log_startup to Makefile.dep
2020-03-24 09:21:21 +01:00
Leandro Lanzieri
e61532efbe
cpu/esp: Move dependency resolution of esp_log_colored to Makefile.dep
2020-03-24 09:21:21 +01:00
Leandro Lanzieri
f918b97ec3
cpu/esp: Move dependency resolution of esp_gdb to Makefile.dep
2020-03-24 09:21:20 +01:00
Leandro Lanzieri
7a30795a8c
cpu/esp: Move esp_[wifi/now] dependency resolution to Makefile.dep
2020-03-24 09:21:20 +01:00
Leandro Lanzieri
ab1f88c69a
cpu/esp: Evaluate esp_[wifi/now] modules with conditional expansion
2020-03-24 09:21:20 +01:00
Leandro Lanzieri
48a62dcc8f
cpu/esp: Move common dependencies to Makefile.dep
2020-03-24 09:21:19 +01:00
Leandro Lanzieri
ea12a6b493
cpu/esp8266/Makefile.include: Check modules in conditional expansion
2020-03-24 09:21:18 +01:00
Leandro Lanzieri
881d245932
cpu/esp32: Evaluate esp_[now/wifi] modules with conditional expansion
2020-03-24 09:21:18 +01:00
Leandro Lanzieri
2f158d7d19
cpu/esp32: Evaluate cpp FEATURE with conditional expansion
2020-03-24 09:21:17 +01:00
benpicco
457c5245ce
Merge pull request #13507 from benpicco/cpu/cc2538-gpio-cycles
...
cpu/cc2538: gpio: save a few cycles in handle_isr()
2020-03-23 20:53:52 +01:00
Leandro Lanzieri
05c37edd42
cpu/esp32: Move default modules to Makefile.dep
2020-03-23 15:49:30 +01:00
Leandro Lanzieri
2b8976d935
cpu/esp32: Use periph_adc_ctrl as feature
2020-03-23 15:47:26 +01:00
Leandro Lanzieri
584d03aae0
cpu/esp32: Remove special module dependency resolution
2020-03-23 15:46:27 +01:00
Leandro Lanzieri
fa419ecf8e
cpu/esp32: Use cpp FEATURE in Makefile.include
2020-03-23 15:46:27 +01:00
Jean Pierre Dudey
ffa5005021
cc26xx_cc13xx: add API to manage peripheral clocks
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-03-23 09:33:53 -05:00
Jean Pierre Dudey
c6e4768997
cc26xx_cc13xx: add PRCM_NONBUF register bank
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-03-23 09:33:23 -05:00
Jean Pierre Dudey
7ac28c82b1
cc26x0: enable serial domain only once
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-03-23 09:33:23 -05:00
Jean Pierre Dudey
4643ed5733
cc26xx_cc13xx: add power abstraction
...
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-03-23 09:33:22 -05:00
benpicco
45b635f4c5
Merge pull request #13416 from gschorcht/cpu/esp32/pm_layered
...
cpu/esp32: support for light/deep sleep and pm_layered
2020-03-23 14:11:05 +01:00
benpicco
08afe95572
Merge pull request #13647 from btcven/2020_03_16-new-definitions
...
cc26xx_cc13xx: add RF related registers definitions
2020-03-23 12:48:38 +01:00
Gunar Schorcht
4f977316fe
cpu/esp_common: stop WiFi interface before sleep/reboot
...
The WiFi interface should be stopped before reboot or sleep. But stopping the WiFi interface disconnects an existing connection. Usually, esp_wifi_netdev tries to reconnect on an disconnect event. However, trying reconnect with a stopped WiFi interface may lead to a crash. Therefore, the stop event has to be handled.
2020-03-23 12:38:36 +01:00
Gunar Schorcht
09899e4b8d
cpu/esp32/periph_gpio: funcs for enter/exit sleep
2020-03-23 12:38:36 +01:00
Gunar Schorcht
f4aa253645
cpu/esp32/periph_rtc: funcs for enter/exit sleep
2020-03-23 12:38:36 +01:00
Gunar Schorcht
dff74a3278
cpu/esp32: add pm_layered support
2020-03-23 12:38:36 +01:00
Gunar Schorcht
5ec4113893
cpu/esp32: several small doc fixes
2020-03-23 12:25:47 +01:00
Gunar Schorcht
a7652df499
cpu/esp32: function to set gpio drive strength
2020-03-23 12:25:47 +01:00
Gunar Schorcht
15ea6feeaf
cpu/esp32: use hibernate mode for pm_off
...
Now, where the vendor files for light/deep sleep mode are added, function `pm_off` does not need to implement this mode by itself. Instead the existing deep sleep with disabled wakeup sources is used for pm_off.
2020-03-23 12:25:47 +01:00
Gunar Schorcht
3faf99a894
cpu/esp32: add vendor files for light/deep sleep
2020-03-23 12:25:47 +01:00
Francisco Molina
0cc6a51ea8
cpu/cc2538/periph/timer: cleanup styling
2020-03-23 10:59:53 +01:00
Francisco Molina
7e913fe0d9
cpu/cc2538/periph/timer: set pending timer_set_absolute
...
GPT timer needs to be gated to write to TnMATCHR register. If set
when timer is stopped save values and set on next timer_start()
2020-03-23 10:59:30 +01:00
Francisco Molina
ce696c6caa
cpu/cc2538/timer: enable GPT clock in active, sleep and PM0
2020-03-23 10:58:56 +01:00
Benjamin Valentin
345827ce7b
cpu/cc2538: gpio: save a few cycles in handle_isr()
...
If only one it is set in state (one GPIO pin caused an interrupt),
don't loop over all 8 bits.
Use clz to get the position of the first interrupt bit and clear it,
looping only as many times as there are actual interrupts.
2020-03-23 09:21:14 +01:00
Francisco
5ef0cb9c18
Merge pull request #13534 from Ciusss89/stm32l4_can_dev_MASTER
...
Add CAN support for nucleo-l476rg
2020-03-23 09:10:56 +01:00
Gunar Schorcht
2cbf90d9fe
cpu/esp32: small fix of rtc_init for light sleep
...
`rtc_init` is used after light sleep to update the system time from RTC timer. The fix corrects a small difference of about 230 ms which would sum up with each wakeup from light sleep.
2020-03-22 23:53:02 +01:00
Gunar Schorcht
825b01e8e1
cpu/esp32: remove gpio_config_sleep_mode func
...
The function were used to set the GPIO pads in sleep mode. This function isn't required for deep or light sleep.
2020-03-22 23:53:02 +01:00
benpicco
921a6a663e
Merge pull request #12024 from gschorcht/cpu/esp32/esp_wifi/wpa2_enterprise
...
cpu/esp32/esp wifi: add WPA2 enterprise mode with IEEE 802.1x/EAP authentication
2020-03-22 17:10:31 +01:00
Giuseppe Tipaldi
7e6ce086b8
cpu: stm32_common: add CAN support for nucleo-l476rg
...
STM32L4 CAN implementation:
- STM32L47x/L48x has single CAN
- STM32L49x/4Ax has dual CAN
2020-03-22 16:53:48 +01:00
Gunar Schorcht
c1e6e70015
cpu/esp32/esp_wifi: doc for WPA2 Enterprise mode
2020-03-22 15:47:06 +01:00
benpicco
1e38a3da63
Merge pull request #13673 from fjmolinas/pr_cc2538_cleanups
...
cpu/cc2538: clock cleanups
2020-03-21 22:24:48 +01:00
Francisco Molina
9a2190cd24
cpu/cc2538/periph/pm: unset OSC_PD when running on 32Mhz
...
Setting OSC_PD before WFI allows for faster wakeup from sleep.
Wait for cc2538_sys_ctrl_clk_sta and not cc2538_sys_ctrl_clk_ctrl
to be set.
2020-03-21 19:32:24 +01:00
Francisco Molina
8c35335668
cpu/cc2538/cpu: cleanup clock intialization
2020-03-21 19:32:22 +01:00
benpicco
5aff374f3d
Merge pull request #13670 from gschorcht/cpu/esp8266/add_rtt_based_rtc
...
cpu/esp8266: add RTT based RTC
2020-03-21 13:29:48 +01:00
Gunar Schorcht
b7781c77d6
cpu/esp8266: add RTT based RTC
...
fixup! cpu/esp8266: add RTT based RTC
2020-03-21 08:49:51 +01:00
Marius
aae86e860f
cpu/stm32l4: add support for STM32L412KB
2020-03-20 18:48:31 +01:00
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