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

158 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
fc6e35fa54
boards/stm32f4discovery: update and clean up doc
Most importantly, this fixes outdated statements about stdio, which
now by default is over USB rather than UART.
2024-04-16 10:04:23 +02:00
MrKevinWeiss
e0fdc3c16c
*Kconfig*: Modify Kconfig to remove dep model 2024-03-27 10:28:12 +01:00
Marian Buschsieweke
043e8cc88e
boards,sys/arduino: major clean up
- Rename all `arduino_pinmap.h` to `arduino_iomap.h`
    - An empty `arduino_pinmap.h` that just includes `arduino_iomap.h`
      is provided for backward compatibility
    - Move all info from `arduino_board.h` into the new file as trivial
      macros, so that they can also be used outside of sketches
    - The new name reflects the fact not just pin mappings, but also
      other I/O features such as PWMs are mapped
- Drop all `arduino_board.h`
    - `arduino_board.h` and `arduino_iomap.h` now provide the exact
      same information, just in a different format
    - a generic `arduino_board.h` is provided instead that just
      uses the info in `arduinio_iomap.h` and provides them in the
      format the code in `sys/arduino` expects it
- Add fine grained features to indicate for mappings
    - availability of mappings for analog pins, DAC pins, PWM pins,
      UART devices, SPI/I2C buses to the corresponding RIOT
      identification can now be expressed:
        - `arduino_pins`: `ARDUINO_PIN_0` etc. are available
        - `arduino_analog`: `ARDUINO_A0` etc. are available
        - `arduino_pwm`: `ARDUINO_PIN_13_PWM_DEV` etc. are available
        - `arduino_dac`: `ARDUINO_DAC0` etc. are available
        - `arduino_uart`: `ARDUINO_UART_D0D1` or similar are available
        - `arduino_spi`: `ARDUINO_SPI_ISP` or similar are available
        - `arduino_i2c`: `ARDUINO_I2C_UNO` or similar are available
    - mechanical/electrical compatibility with specific form factors
      can now be expressed as features:
        - `aruino_shield_nano`: Arduino NANO compatible headers
        - `aruino_shield_uno`: Arduino UNO compatible headers
        - `aruino_shield_mega`: Arduino MEGA compatible headers
        - `aruino_shield_isp`: ISP header is available

This provides the groundwork to implement shield support as modules
that can rely on the I/O mappings, rather than having to provide a
configuration per board.
2023-06-26 17:24:07 +02:00
MrKevinWeiss
92794c0eca
boards/*: Model usb and stdio in Kconfig 2023-05-31 13:04:42 +02:00
b6628dddd6
boards/stm32f4discovery: use default port to access stdio via cdc acm 2023-03-10 11:51:00 +01:00
Benjamin Valentin
3e1f5edb8f boards/stm32f4discovery: default to stdio via CDC ACM 2023-02-10 10:12:18 +01:00
Gunar Schorcht
990feeec39 boards: enable feature tinyusb_device for STM32 boards 2022-09-30 19:05:51 +02:00
Karl Fessel
05f114d0af doc: fix unbalaced grouping
- most were trivial
    - missing group close or open
    - extra space
    - no doxygen comment
- name commad might open an implicit group
    this hould also be implicit cosed but does not happen somtimes
- crazy: internal declared groups have to be closed internal
2022-09-14 15:05:25 +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
Teufelchen1
1231807bab Documentation: Renaming OS X to macOS 2022-06-23 17:25:48 +02:00
Benjamin Valentin
5d111e71aa boards: drop board_init() from board.h 2022-02-25 15:08:58 +01:00
Francisco Molina
464d941a3e boards: drop empty custom board_init & empty board.c 2022-02-22 18:27:37 +01:00
Fabian Hüßler
9163d78910 boards: add VBAT for stm32 based boards with ADC 2022-02-21 10:49:43 +01:00
Benjamin Valentin
468ea89953 boards: drop LED init
This is handled by periph_init_leds now
2022-02-18 14:35:43 +01:00
MrKevinWeiss
deda2cfb97
boards: Fix stm32 based boards kconfig models 2021-12-15 09:31:45 +01:00
Benjamin Valentin
fc88c4c4e5 boards: drop cpu_init() 2021-10-13 23:36:41 +02:00
Jan Romann
4384795cb9
treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
b53d750029
boards/stm32: set openocd as only supported programmer 2021-02-24 13:29:16 +01:00
603186f913
make: namespace openocd DEBUG_ADAPTER variable 2021-02-23 21:22:52 +01:00
96b79c21f0
boards/stm32f4*: add Kconfig clock configuration 2021-01-19 22:09:16 +01:00
f5616e406f
boards/stm32f4discovery: update documentation 2021-01-11 21:31:49 +01:00
46b92f487a
boards/stm32f4discovery: use custom renode sysbus for uart 2021-01-11 21:31:49 +01:00
MrKevinWeiss
67ef7e25e6 boards/stm32f4discovery: Add initial renode support 2021-01-05 17:09:58 +01:00
4c290e1f92
boards: remove include of serial.inc.mk 2020-12-02 09:20:57 +01:00
c6ad85a7b0
boards: don't include programmer logic at board level 2020-11-25 22:31:13 +01:00
39e06babf5
boards/stm32: use generic clk_conf.h header 2020-10-27 08:44:56 +01:00
benpicco
d98f93513f
Merge pull request #15043 from aabadie/pr/boards/stm32f2f4f7_remove_96_180
boards/stm32f4: remove default clock configuration for 96MHz and 168MHz CPUs
2020-10-19 19:42:52 +02:00
Leandro Lanzieri
fe6d66d92a
kconfig: add ERROR symbol for conflicting modules 2020-10-09 18:04:17 +02:00
95fb362a5c
boards/stm32f4xx: use 180MHz default clock header 2020-10-06 22:07:19 +02:00
721625011e
boards/stm32f4*: use new clock configuration scheme 2020-10-06 16:10:05 +02:00
hugues
110c9bb8c1 boards/stm32f4discovery: declare adc_config[] directly in periph_conf.h 2020-08-27 03:56:26 +02:00
dc890c4505
stm32f4discovery: remove obsolete spi_divtable 2020-08-18 16:55:10 +02:00
be33f63cae
boards/stm32*disco: model features in Kconfig 2020-07-16 11:34:03 +02:00
Leandro Lanzieri
8e60c8b5e3
Merge pull request #10445 from MrKevinWeiss/pr/fix/i2cpinout/stmdisco
boards/stm32f4discovery: Change sda pin
2020-06-24 17:34:08 +02:00
97f98dcace
boards/stm32: remove useless ifdef around DMA config 2020-05-25 13:23:20 +02:00
dc6bb50021
Merge pull request #14093 from bergzand/pr/boards_stm32f4/add_spi_dma
boards/stm32f4: Add DMA config for SPI
2020-05-25 13:17:22 +02:00
859f0d9c03
stm32f4discovery: Add DMA config for SPI 2020-05-25 11:42:12 +02:00
facb626b02
boards/stm32*: adapt for new stm32 cpu organization 2020-05-20 13:39:10 +02:00
28f00f731f
boards/stm32: remove obsolete UART DMA ISR defines 2020-05-20 08:49:22 +02:00
d8ec0b292f
boards/stm32f4: Set DMA_STREAM_UNDEF for UART DMA
This PR sets the DMA configuration for the UART peripherals on the
stm32f4 boards to the undef value to disable the DMA. This to prevent
from accidentally configuring the DMA to stream 0 channel 0 when
enabling DMA.
2020-05-20 08:49:22 +02:00
Gunar Schorcht
cf033205f0 boards/stm32f4discovery: fix broken links 2020-03-24 10:39:49 +01:00
d9837182a0
stm32f4discovery: add usbdev feature 2020-02-11 15:50:21 +01:00
Hyungsin
6eed5b9d43 remove XTIMER_OVERHEAD 2020-01-10 13:22:11 -08: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
5dfe80d24c
boards/stm32: initialize board gpios after cpu 2019-10-04 17:05:40 +02:00
Gaëtan Harter
636285ebe4
boards: move CPU/CPU_MODEL definition to Makefile.features
cpu/$(CPU)/Makefile.features and cpu/$(CPU)/Makefile.dep are
automatically included

Part of moving CPU/CPU_MODEL definition to Makefile.features to have it
available before Makefile.include.
2019-08-20 16:11:50 +02:00
Benjamin Valentin
8af04cd939 boards: make use of ARRAY_SIZE macro 2019-08-06 19:43:54 +02:00
a68f78bb10
boards/*: remove unused FEATURES_MCU_GROUP variable 2019-06-14 11:32:15 +02:00
414c304f2b
boards/*: remove useless export when setting DEBUG_ADAPTER 2019-06-03 10:32:08 +02:00