1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

42 Commits

Author SHA1 Message Date
Marian Buschsieweke
97b91b4f8f
boards/stm32: use GPIO LL for LEDs
This fixes a race in `LED<NUM>_TOGGLE`, which is a read-copy-write
operation. Any access to a GPIO pin on the same GPIO port that
happens concurrently could result in data corruption. Using the
GPIO LL API, which is thread-safe, fixes the issue.

Note: The used GPIO LL functions will work even in when the GPIO LL
      module is not used.
2024-08-02 09:55:24 +02:00
Marian Buschsieweke
1fd9913293
boards/common/stm32: clean up LED definitions
Let boards only define the port and pin number of each LEDs. The common
definitions in `stm32_leds.h` will provide `LED<x>_ON`, `LED<x>_OFF`,
`LED<x>_TOGGLE`, `LED<x>_PIN`, `LED<x>_MASK` and `LED<x>_PORT`.

In addition to code de-duplication, this also makes it easier to use
LEDs in GPIO LL, which can be beneficial for super low overhead
debugging output - e.g. when a bug is timing sensitive and `DEBUG()`
would spent to much time for stdio to reproduce a bug.
2022-08-08 23:35:06 +02:00
Benjamin Valentin
5d111e71aa boards: drop board_init() from board.h 2022-02-25 15:08:58 +01:00
796e127df9
boards/stm32: replace GPIO_UNDEF with SPI_CS_UNDEF 2022-01-06 12:34:09 +01:00
39e06babf5
boards/stm32: use generic clk_conf.h header 2020-10-27 08:44:56 +01:00
5e886a76c9
boards/stm32l0/l1: merge default clock configuration headers 2020-09-22 22:30:19 +02:00
8f39a4a310
boards/stm32l1: use shared clock configuration header 2020-08-28 16:55:32 +02:00
f0f0ac86eb
limifrog-v1: remove obsolete spi_divtable 2020-08-18 16:55:02 +02:00
Yannick Gicquel
d37adee32d boards/stm32-based: allow SPI signals routed on multiple alternate functions
There is no hardware limitation for custom boards based on STM32 to uses
SPI bus with signals coming from different PORT and alternate functions.

This patch allow alternate's function definition per pin basis, thus enable
the support of SPI bus signals routed on differents PORT.

Signed-off-by: Yannick Gicquel <ygicquel@gmail.com>
2019-10-25 06:27:41 +02:00
Benjamin Valentin
8af04cd939 boards: make use of ARRAY_SIZE macro 2019-08-06 19:43:54 +02:00
Kevin Weiss
8468fe1c94
Merge pull request #8516 from jia200x/wiki_dox_convertion
doc: move wiki to Doxygen documentation (second attempt)
2018-08-07 13:27:04 +02:00
Jose Alamos
7b28fbf110 boards: fix Doxygen group directives 2018-08-01 15:24:55 +02:00
dylad
8964f3accc board/limifrog-v1: add missing I2C changes in periph_conf 2018-07-25 12:01:40 +02:00
b78c96ffc7 boards/*: make brief description consistent 2018-01-24 08:30:56 +01:00
d7154dc258 boards/limifrog-v1: load lis3mdl module when SAUL is 2017-12-14 18:18:40 +01:00
smlng
25378c7dd5 boards: add missing XTIMER_WIDTH 2017-10-13 10:53:11 +02:00
Hauke Petersen
73ede74cd8 cpu/stm32: unified and cleaned up DAC driver
- removed neccessity to define empty `DAC_NUMOF 0` for each STM
  base board
- adapted all board configs to this
- joined stm32f2 to use common DAC driver
- improved code of DAC driver
2017-06-29 13:03:12 +02:00
882bcff048 boards: replace @brief with @name when necessary 2017-04-13 12:10:30 +02:00
Vincent Dupont
bb52575d45 boards: fix I2C_APBCLK value in stm32-based boards 2017-03-17 12:56:54 +01:00
Vincent Dupont
c302b7601d boards: fix stm32-based boards with new gpio driver 2017-03-13 15:09:31 +01:00
ebc35a0613 boards: fix doxygen @brief in periph.conf 2017-01-27 10:31:56 +01:00
Hauke Petersen
0edef2a0e1 cpu/stm32*+boards: adapted to new SPI API
- adapted the SPI driver
- adapted all boards using the CPU
2017-01-25 16:46:45 +01:00
Oleg Hahm
7ee7801c10 *: remove trailing underscores from header guards 2017-01-19 18:30:53 +01:00
Peter Kietzmann
d21ede60ce Merge pull request #6256 from haukepetersen/fix_stm32f1_timerconfigs
boards/stm32f1-based: fixed timer configuration
2017-01-10 09:27:59 +01:00
Hauke Petersen
55c6c4582b boards/stm32-based: adapted UART configuration 2017-01-05 11:00:18 +01:00
Hauke Petersen
6b4f224d7f boards/limifrog-v1: fixed timer configuration 2016-12-21 14:47:27 +01:00
Pieter Willemsen
a0835ccb1d stm32: use periph_clk_en/dis functions for clock changes 2016-12-16 15:01:56 +01:00
Hauke Petersen
1bc1dd94ba boards/stm32-based: added missing CLOCK_APBx defines 2016-12-09 12:20:02 +01:00
DipSwitch
bd9b3a269c cpu/stm32/perip/dac: Move DAC implementation to stm32_common/periph since all STM32 DAC's have the same basics 2016-03-29 22:25:50 +02:00
Hauke Petersen
59f48773b4 boards/limifrog-v1: adapted I2C config 2016-03-17 16:10:13 +01:00
Hauke Petersen
c0a881c5f8 boards/limifrog-v1: unified LED defines 2016-03-15 16:24:49 +01:00
René Herthel
4a4b3f620c stm32l1/i2c: initial update for the new interface 2016-02-10 16:40:33 +01:00
Hauke Petersen
b436219674 boards: removed F_CPU define from board.h 2016-01-27 09:52:44 +01:00
Hauke Petersen
db25206a58 boards: use default values for STDIO defines 2016-01-05 12:08:31 +01:00
PeterKietzmann
7ff9467970 Revert "stm32l1/i2c.c: adapt for new periph driver interface"
This reverts commit e9215a6cc1.
2015-12-07 17:21:34 +01:00
René Herthel
e9215a6cc1 stm32l1/i2c.c: adapt for new periph driver interface 2015-12-03 19:50:06 +01:00
PeterKietzmann
c85e417b5c boards/limifrog-v1: fix uart configuration in periph_conf 2015-12-02 08:23:47 +01:00
Hauke Petersen
e395dfd91e boards: s/GPIO(x,y)/GPIO_PIN(x,y)/ 2015-10-13 14:59:53 +02:00
Hauke Petersen
92ee5d9562 boards/limifrog-v1: adjusted timer configuration 2015-09-22 12:30:41 +02:00
Hauke Petersen
18e364ae17 boards: removed deprecated HW_TIMER defines 2015-09-17 11:22:03 +02:00
DipSwitch
148acc684b cpu: Add clock source selection based on CLOCK_HSE or CLOCK_HSI for STM32L1 family 2015-08-25 10:12:48 +02:00
Katja Kirstein
bda86cfcd3 boards: limifrog-v1 initial commit 2015-08-13 14:14:18 +02:00