1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/stm32/periph
Marian Buschsieweke 7c0a4b8390
cpu/stm32/periph_timer: Support timers with channels != 4
The assumption that all STM32 timers have exactly four channels no
longer holds. E.g. the STM32L4 has the following general purpose timers:

- TIM2: 32 bit, 4 channels
- TIM15: 16 bit, 2 channels
- TIM16: 16 bit, 1 channel

Hence, a new field is added to the timer configuration to also contain
the number of timer channels. Due to alignment the `struct` previously
was padded by 16 bit, so adding another 8 bit field doesn't increase
its size.

For backward compatibility, a value of `0` is considered as alias for
`TIMER_CHANNEL_NUMOF` (or 4), so that the number of timer channels
only needs to be set when the timer is different from the typical 4
channel timer. This helps backward compatibility.
2023-05-30 12:55:29 +02:00
..
adc_f0_g0.c cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
adc_f1.c cpu/stm32/periph/adc: fix setting ADC clock 2023-05-19 12:02:34 -04:00
adc_f2.c cpu/stm32/periph/adc: fix setting ADC clock 2023-05-19 12:02:34 -04:00
adc_f3.c cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
adc_f4_f7.c cpu/stm32/periph/adc: fix setting ADC clock 2023-05-19 12:02:34 -04:00
adc_l0.c cpu/stm32/periph/adc_l0: removes ADC configuration loading 2020-08-27 03:58:33 +02:00
adc_l1.c cpu/stm32/periph/adc_l1: removes ADC configuration loading 2020-08-27 03:56:26 +02:00
adc_l4.c cpu/stm32/periph_adc: support V_REFINT as ADC channel on L4 2023-05-15 14:24:53 +02:00
adc_wl.c cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
can.c cpu/stm32/periph_can: use container_of() 2021-12-03 10:12:35 +01:00
dac.c cpu/stm32/periph_dac: support of DAC mode register 2023-05-10 12:12:53 +02:00
dma.c cpu/stm32/periph/dma: make dma_prepare() generic 2022-10-26 09:36:45 -04:00
doc.txt cpu/stm32: Add stm32_eth_auto for auto-negotiation 2020-10-22 12:37:23 +02:00
eeprom.c cpu/*: realign ENABLE_DEBUG 2020-10-23 00:46:26 +02:00
eth_common.c cpu/stm32/periph_eth: add stm32_eth_tracing 2022-09-14 14:00:27 +02:00
eth.c core/lib: Add macros/utils.h header 2023-01-07 09:47:44 +01:00
flash_common.c cpu/stm32: add initial support for stm32u5 family 2021-12-23 11:04:41 +01:00
flashpage.c cpu/stm32: add initial support for stm32u5 family 2021-12-23 11:04:41 +01:00
gpio_all.c cpu/stm32/periph_gpio: reset PU/PD for ADC channels 2023-05-10 12:11:14 +02:00
gpio_f1.c treewide: fix typos 2022-09-15 12:12:23 +02:00
gpio_ll_irq.c cpu/stm32/periph_gpio_ll: Fix misleading comments 2023-04-06 08:31:48 +02:00
gpio_ll.c cpu/stm32/periph_gpio_ll: Fix misleading comments 2023-04-06 08:31:48 +02:00
hwrng.c cpu/stm32: add initial support for stm32u5 family 2021-12-23 11:04:41 +01:00
i2c_1.c cpu/stm32: cpu/sam0_common: rename internal i2c _start function 2023-05-14 21:08:26 +02:00
i2c_2.c cpu/stm32: cpu/sam0_common: rename internal i2c _start function 2023-05-14 21:08:26 +02:00
Kconfig cpu/stm32: improvement of USB driver selection 2022-11-03 13:52:01 +01:00
Kconfig.eth cpu/{sam0_common, stm32}: select netdev_legacy_api in KConfig 2022-08-17 23:37:05 +02:00
ltdc.c cpu/stm32: adapt ltdc periph disp_dev interface 2022-04-13 12:49:58 +02:00
Makefile cpu/stm32: fix periph_usb modeling for STM32F1 2022-10-14 16:20:04 +02:00
pm.c cpu/{cortexm_common, stm32}: add support for backup RAM 2022-01-21 15:53:18 +01:00
ptp.c stm32/ptp: avoid creating a new rounding rule 2021-03-29 16:27:27 +02:00
pwm.c cpu/stm32/periph_pwm: allow to use complementary timer channels 2023-05-19 16:51:26 +02:00
qdec.c cpu/stm32/periph_qdec: support pin remap for F1 2022-10-27 14:28:06 +02:00
rtc_all.c cpu/stm32: add rtc_mem 2021-09-07 10:06:31 +02:00
rtc_f1.c cpu/*: realign ENABLE_DEBUG 2020-10-23 00:46:26 +02:00
rtc_mem.c cpu/stm32: add rtc_mem 2021-09-07 10:06:31 +02:00
rtt_all.c boards/stm32g031-disco,examples,tests: Added STM32G031-DISCO board 2021-10-13 12:14:45 -04:00
rtt_f1.c cpu/*: realign ENABLE_DEBUG 2020-10-23 00:46:26 +02:00
spi.c cpu/stm32: Fix periph_spi operation in non-DMA mode 2023-03-30 10:36:20 +02:00
timer.c cpu/stm32/periph_timer: Support timers with channels != 4 2023-05-30 12:55:29 +02:00
uart.c treewide/stm32: Make CLOCK_HS* configurable 2022-11-03 11:37:28 +01:00
usbdev_fs.c cpu/stm32/usbdev_fs: fix EP_REG(x) assignment for toggleable bits 2023-04-07 22:35:45 +02:00
vbat.c cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
wdt.c cpu/*: remove unneeded ENABLE_DEBUG 2020-10-23 11:29:57 +02:00