1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/stm32/include/periph
Kyle Burk 986488db85
cpu/stm32/f1: prevent corrupting AFIO->MAPR
The `SWJ_CFG` field of the `AFIO_MAPR` register is write only and values
read are undefined (random). Hence, using `AFIO->MAPR |= mask;` to
enable flags can corrupt the state of the `SWJ_CFG` (configure it to
an unintended value).

Two helper functions have been introduced:
- `afio_mapr_read()` reads the value, but sanitizes the `SWJ_CFG` field
  to zero
- `afio_mapr_write()` writes the given value, but applies the `SWJ_CFG`
  configured by the board before writing.

Finally, the `nucleo-f103rb` and `bluepill*`/`blackpill*` boards have
been updated to no longer specify `STM32F1_DISABLE_JTAG`, as this
is handled by the `SWJ_CFG` setting (which defaults to disabling JTAG).
2023-11-20 20:28:52 +01:00
..
f0 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
f1 cpu/stm32/f1: prevent corrupting AFIO->MAPR 2023-11-20 20:28:52 +01:00
f2 cpu/stm32/f2: add ADC support for f207zg 2022-11-04 18:02:28 -04:00
f3 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
f4 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
f7 cpu/stm32/include/periph/f7: add missing ADC_DEVS 2022-04-12 22:39:17 +02:00
g0 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
g4 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
l0 cpu/stm32: define EEPROM size for stm32l011k4 2020-10-15 16:24:33 +02:00
l1 cpu/stm32: Add hardening changes to stm32 2021-11-11 15:58:52 -06:00
l4 cpu/stm32/periph_adc: determine number of ADC from CMSIS header 2023-05-10 12:19:19 +02:00
l5 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
u5 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
wb cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
wl cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
cpu_backup_ram.h cpu/{cortexm_common, stm32}: add support for backup RAM 2022-01-21 15:53:18 +01:00
cpu_common.h cpu/stm32: make bus arg consistent 2023-05-19 10:44:24 -04:00
cpu_dma.h cpu/stm32/periph/dma: fix dma_resume 2022-10-26 09:36:45 -04:00
cpu_eth.h cpu/stm32: group periph definitions by periph type 2022-01-02 20:07:51 +01:00
cpu_fmc.h cpu/stm32: add FMC support for LCD with parallel interface 2023-10-12 18:19:03 +02:00
cpu_gpio_ll.h cpu/stm32: Implement gpio_ll for STM32F1 2023-03-20 14:14:07 +01:00
cpu_gpio.h cpu/stm32: enable usbdev_fs for STM32F1 2022-10-13 12:00:22 +02:00
cpu_i2c.h cpu/stm32/periph/i2c_1: export PERIPH_I2C_MAX_BYTES_PER_FRAME 2023-02-14 17:39:42 +01:00
cpu_ltdc.h cpu/stm32: add support for LTDC periph 2022-01-07 14:32:24 +01:00
cpu_pm.h cpu: include IDLE in PM_NUM_MODES 2022-04-06 12:29:25 +02:00
cpu_pwm.h cpu/stm32/periph_pwm: add doc for complementary timer channels 2023-05-19 16:51:26 +02:00
cpu_qdec.h cpu/stm32/periph_qdec: support pin remap for F1 2022-10-27 14:28:06 +02:00
cpu_spi.h boards/stm32: replace GPIO_UNDEF with SPI_CS_UNDEF 2022-01-06 12:34:09 +01:00
cpu_timer.h cpu/stm32/periph_timer: Support timers with channels != 4 2023-05-30 12:55:29 +02:00
cpu_uart.h cpu/stm32: group periph definitions by periph type 2022-01-02 20:07:51 +01:00
cpu_usbdev.h cpu/stm32/periph/usbdev_fs: support GPIO for USB connect/disconnect 2022-10-05 09:15:29 +02:00
cpu_vbat.h cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
cpu_wdt.h cpu/stm32: group periph definitions by periph type 2022-01-02 20:07:51 +01:00