Marian Buschsieweke
fbd7b77331
cpu/nrf5x_common/periph_timer: fix spurious IRQs
2022-11-24 22:36:42 +01:00
Marian Buschsieweke
20fc71dd65
cpu/stm32/periph_timer: fix spurious IRQs
2022-11-24 22:34:10 +01:00
Marian Buschsieweke
93c5755649
cpu/stm32/periph_timer: fix race conditions
...
Allow two threads to share the same timer - provided they use distinct
sets of timer channels - without occasionally corrupting registers or
state flags.
2022-11-24 22:34:03 +01:00
Benjamin Valentin
59a3e613fe
cpu/cortexm_common: measure time spent with IRQ disabled
2022-11-24 21:27:20 +01:00
Marian Buschsieweke
020c6ff69c
Merge pull request #18954 from jue89/fix/nrf5x-uart-lowpower
...
cpu/nrf5x/uart: run STOPTX task after finished tx
2022-11-24 14:20:58 +01:00
Juergen Fitschen
a6ff838a4b
Merge pull request #18933 from jue89/feature/cpu_efm32_series_2_adc
...
cpu/efm32: add periph_adc support for Gecko Series 2
2022-11-24 11:32:56 +01:00
benpicco
86d72c7b85
Merge pull request #18940 from krzysztof-cabaj/nucleo-l496zg-ADC
...
boards/nucleo-l496zg: add ADC support
2022-11-23 20:34:08 +01:00
Marian Buschsieweke
cefef8fd1e
Merge pull request #18953 from jue89/fix/nrf5x-timer-lowpower
...
cpu/nrf5x/timer: fix high current consumption in powered off state
2022-11-23 17:03:33 +01:00
Marian Buschsieweke
232c70ba53
Merge pull request #18948 from maribu/boards/common/nrf52
...
boards/common/nrf52: fix timer config
2022-11-23 10:47:26 +01:00
Jue
3da1faca90
cpu/nrf5x/uart: run STOPTX task after finished tx
...
This reduces power consumption for UARTs that are configured in tx-only mode.
2022-11-22 21:33:14 +01:00
Jue
a7e2182bb0
cpu/nrf5x/timer: run task SHUTDOWN instead of STOP
...
This is a workaround for errata 78 that causes increased current consumption even in the stopped state.
2022-11-22 19:15:31 +01:00
Juergen Fitschen
97bc8252d9
Merge pull request #18920 from jue89/fix/sam0_rtt_rtc
...
sam0/rtc_rtt: optimizations to get around the painful long syncwaits
2022-11-22 18:12:06 +01:00
Juergen Fitschen
18e9167c73
cpu/efm32/adc: add support for Gecko Series 2
...
Series 2 features IADCs instead of ADCs.
2022-11-22 14:44:56 +01:00
Marian Buschsieweke
b533fcf543
cpu/nrf5x_common: improve doc on timer_conf_t::channels
2022-11-22 13:43:05 +01:00
Jue
2a81a2ab5c
cpu/efm32: provide periph_uart_modecfg feature for every board
2022-11-21 23:20:19 +01:00
Jue
80b491d7dd
cpu/efm32/uart: add modecfg support for Gecko Series 2
2022-11-21 23:17:52 +01:00
krzysztof-cabaj
afbb568306
cpu/stm32/l4: add ADC support for l496zg
2022-11-21 05:52:02 -05:00
Marian Buschsieweke
6b759c2a7d
Merge pull request #18935 from benpicco/makefiles/gnu-version
...
makefiles/gnu.inc.mk: set flags based on compiler version
2022-11-20 08:11:57 +01:00
Benjamin Valentin
b30efeeb65
makefiles/gnu.inc.mk: set flags based on compiler version
2022-11-19 23:14:54 +01:00
Benjamin Valentin
dd5c876034
cpu/native: replace RIOT_FILE_RELATIVE with __FILE__
2022-11-19 01:48:42 +01:00
Benjamin Valentin
8777584ac8
cpu/lpc23xx: core: replace RIOT_FILE_RELATIVE with __FILE__
2022-11-19 01:48:42 +01:00
benpicco
e1aa925c35
Merge pull request #18913 from benpicco/macro-prefix-map
...
makefiles/cflags.inc.mk: don't include absolute path in __FILE__ macro
2022-11-18 16:43:35 +01:00
benpicco
2f122769c3
Merge pull request #18921 from benpicco/cpu/stm32-bkup_heap
...
cpu/stm32: add unused backup RAM as extra heap
2022-11-18 15:48:36 +01:00
Benjamin Valentin
6f05daceb3
cpu/stm32: add unused backup RAM as extra heap
2022-11-18 12:19:10 +01:00
Gunar Schorcht
4b7578b2eb
pkg/tinyusb: fix USB speed selection for STM32
2022-11-17 14:07:38 +01:00
Juergen Fitschen
268bdfec29
sam0/rtc_rtt: don't block until set_alarm has been propagated to periph
...
rtc_set_alarm() / rtt_set_alarm() are heavily used by ztimer during ISR. This will reduce time spent during ISR drastically. We trust that the peripheral is able to propagate the alarm asynchronously.
2022-11-16 17:02:19 +01:00
Juergen Fitschen
9c6f07f80a
sam0/rtc_rtt: optimize pm_unblock/pm_block ping-pong during set alarm
2022-11-16 16:54:29 +01:00
benpicco
b33688dec4
Merge pull request #18919 from gschorcht/cpu/stm32/fix_ram_len_stm32f4{2,3}{7,9}
...
cpu/stm32: fix RAM_LEN for F427, F429, F437, F439 models
2022-11-16 11:32:13 +01:00
Gunar Schorcht
7b99a5152f
cpu/stm32: fix RAM_LEN for F427, F429, F437, F439 models
...
These models have 256 kByte RAM, but the upper 64 kByte are used as CCM data RAM accessible at 0x1000:0000. The access to 0x2003:xxxx leads to a hard fault.
2022-11-15 22:29:34 +01:00
Benjamin Valentin
5b359108f7
cpu/esp8266: blacklist -fmacro-prefix-map
...
This requires at least GCC 8
2022-11-15 20:39:49 +01:00
Marian Buschsieweke
35149bd1c2
Merge pull request #18797 from MrKevinWeiss/pr/fixstmclk
...
cpu/stm32: Fix stm clock configuration
2022-11-15 11:39:25 +01:00
Benjamin Valentin
0bd67d98d9
cpu: always rely on stdio.inc.mk for default stdio selection
2022-11-09 10:42:47 +01:00
benpicco
8559472179
Merge pull request #18821 from jue89/feature/saml21_pheriph_pm
...
cpu/saml21: add interaction with pm_layered for peripheral drivers
2022-11-07 19:53:57 +01:00
benpicco
384e3ca534
Merge pull request #18847 from krzysztof-cabaj/nucleo-f207zg-ADC
...
boards/nucleo-f207zg: support for ADC
2022-11-05 01:55:30 +01:00
krzysztof-cabaj
aa426bd3aa
cpu/stm32/f2: add ADC support for f207zg
2022-11-04 18:02:28 -04:00
Jue
73e6886b2c
cpu/saml21: define required power modes
...
We can get rid initially blocked pm modes \o/
2022-11-03 14:53:45 +01:00
Jue
24461b43f8
cpu/sam0/spi: generalize pm_layered interaction
...
In DMA mode SPI transfers are carried out by HW. We need to block certain pm modes during transfer.
2022-11-03 14:53:44 +01:00
Jue
db9263eeca
cpu/sam0/rtc_rtt: integrate pm_layered
2022-11-03 14:53:43 +01:00
Jue
cc4e880aa8
cpu/sam0/rtc: remove overflow IRQ
...
Due to the RIOT_EPOCH of 2020 this overflow will happen in year 2084. It would be scary if IoT devices are still around then.
We can save RAM and ROM. Furthermore, this overflow handling should block BACKUP power mode in order to keep track of the reference year.
2022-11-03 14:52:38 +01:00
Jue
5866262122
cpu/sam0/usbdev: generalize pm_layered interaction
...
periph_cpu.h should define the required pm modes.
Additionally, some CPUs require a certain pm mode in USB IDLE mode.
2022-11-03 14:27:47 +01:00
Jue
220be1da7e
cpu/sam0/gpio: integrate pm_layered
2022-11-03 14:27:47 +01:00
Jue
ae9190da30
cpu/sam0/uart: integrate pm_layered
2022-11-03 14:27:47 +01:00
Jue
aa5ad12f37
cpu/sam0/uart: skip uart_write() if uart isn't active
...
Otherwise we get stuck in an endless loop ...
2022-11-03 14:27:47 +01:00
Jue
cf5e207d62
cpu/sam0/uart: enable peripheral clock before accessing regs
2022-11-03 14:27:47 +01:00
Jue
4f25c1017d
cpu/sam0/timer: integrate pm_layered
2022-11-03 14:27:47 +01:00
Gunar Schorcht
31efa61eda
cpu/stm32: improvement of USB driver selection
...
There are STM32 families where all models use only the Synopsys DWC2 USB OTG core while others completely use only the USB Device FS core. For these families then either the driver `drivers/usbdev_synopsys_dwc2` or the driver `cpu/stm32/periph/usbdev` is used depending on the respective family. However, the STM32 families F1 and L4 use both cores. The correct driver must therefore be selected depending on the CPU line or CPU model.
2022-11-03 13:52:01 +01:00
MrKevinWeiss
28aed3cb97
cpu/stm32/kconfig: rework clock tree
...
This splits up the clock configs.
It allows CPU_FAM based file sourcing and also common CPU_FAMs.
The dependancies are also included in wildcards would be used for the CPU_FAM macro.
This should be much more readable.
This also takes into account the HSE speeds in order to match the make/header resolution.
Some hidden symbols were added to make sorting many CPU_SERIES dependencies easier.
2022-11-03 11:37:33 +01:00
MrKevinWeiss
ba4843b5f4
cpu/stm32/Kconfig: Fix help indent
2022-11-03 11:37:32 +01:00
MrKevinWeiss
641d539092
cpu/stm: Fix clock settings F303*
2022-11-03 11:37:31 +01:00
MrKevinWeiss
17cce015d4
treewide/stm32: Make CLOCK_HS* configurable
2022-11-03 11:37:28 +01:00