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

25 Commits

Author SHA1 Message Date
Marian Buschsieweke
aef5b65244
cpu/msp430/f2xx: clean up periph_uart,periph_spi
This cleans up the USCI based UART and SPI implementations and allows
multiple instances of either interface to be configured by the
boards. In addition, it allows sharing the USCI peripherals to provide
multiple serial interfaces with the same hardware (round-robin).
2024-03-27 18:54:07 +01:00
Marian Buschsieweke
b51ea4ca24
boards: clean up MSP430 board configuration
Move common configuration for MSP430 based boards to
`boards/common/msp430` and make use of that.
2023-12-10 09:11:24 +01:00
Marian Buschsieweke
7044699388
cpu/msp430: improve periph_timer
- add support for multiple timers
- add support for selecting clock source in the board's `periph_conf.h`
- add support for the prescaler
- implement `periph_timer_query_freqs`
- add a second timer to all MSP430 boards
    - the first timer is fast ticking, high-power
    - the second is slow ticking, low-power
2023-12-10 09:11:23 +01:00
Marian Buschsieweke
45b353c6ef
cpu/msp430: make use of vendor header files
The MSP430 vendor files already provide macros containing register
constants and symbols (provided via linker scripts) containing addresses
of peripheral registers. So lets make use of that rather than
maintaining a long list of constants.
2023-07-04 20:21:05 +02:00
Marian Buschsieweke
ff7f8ae2f0
cpu/msp430: reorganize code
RIOT supports two distinct families of the MSP430: The [MSP430 x1xx]
MCU family and the [MSP430 F2xx/G2xx] MCU family. For both incompatible
MCU families the code was located in the msp430fxyz folder, resulting
in case of the UART driver in particularly bizarre code looking roughly
like this:

    #ifndef UART_USE_USCI
    /* implementation of x1xx peripheral ... */
    #else
    /* implementation of F2xx/G2xx peripheral ... */
    #endif
    /* zero shared code between both variants */

This splits the peripheral drivers for USCI and USART serial IP blocks
into separate files and relocates everything in cpu/msp430, similar to
how cpu/stm32 is organized.

[MSP430 x1xx]: https://www.ti.com/lit/ug/slau049f/slau049f.pdf
[MSP430 F2xx/G2xx]: https://www.ti.com/lit/ug/slau144k/slau144k.pdf
2023-06-19 17:14:57 +02:00
Marian Buschsieweke
971dc880f6
boards/z1: fix broken clock configuration
df5c319978 from
https://github.com/RIOT-OS/RIOT/pull/19558 broke the clock
configuration of the Z1 by relying on the incorrect documentation of
what clock is actually used. Closely reading the convoluted clock
initialization code revealed that no XT2 crystal is present (as also
indicated by some comments in `board.c`), contradicting the
`#define MSP430_HAS_EXTERNAL_CRYSTAL 1` in the `board.h`.

This now should restore behavior (but with calibrated DCO than
hard coded magic numbers).
2023-06-07 15:45:44 +02:00
Marian Buschsieweke
df5c319978
cpu/msp430fxyz: clean up clock initialization
Provide a common clock initialization driver rather than leaving
clock initialization to the boards code. A declarative description of
the board's clock configuration using a struct does still allow to
fine-tune settings. In addition, a board is still allowed to just
provide a custom `void clock_init(void)` if there really is the need
to do crazy things.
2023-05-16 10:05:09 +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
MrKevinWeiss
cbf1f0b217 boards/z1: Remove unused UART_x_EN macro 2020-09-09 10:25:37 +02:00
882bcff048 boards: replace @brief with @name when necessary 2017-04-13 12:10:30 +02:00
Bas Stottelaar
3b14a584b8 boards: *: remove SPI_*_EN now rework is merged 2017-01-31 19:38:41 +01:00
ebc35a0613 boards: fix doxygen @brief in periph.conf 2017-01-27 10:31:56 +01:00
Hauke Petersen
d5e00e594a cpu/msp430fxyz+boards: adapted to new SPI API
- adapted the SPI driver
- adapted all boards using the CPU
2017-01-25 16:46:05 +01:00
Martine Lenders
dd0fe60789 Merge pull request #5210 from gtrpucp/BOARD_Z1_FIX_UART
Board z1: Fix UART pin assignment
2016-03-31 12:36:18 +02:00
Joel Palomino
28d0097e5b z1: Fix UART pin assignment 2016-03-30 11:59:38 -05:00
malo
f093d10409 msp430: spi/uart cleaned up USIC - USCI confusion
Signed-off-by: malo <malo@25cmsquare.io>
2016-03-24 09:42:59 +01:00
Hauke Petersen
ddb8765ee4 boards/z1: adjusted to UART changes 2015-10-27 14:59:39 +01:00
Hauke Petersen
e395dfd91e boards: s/GPIO(x,y)/GPIO_PIN(x,y)/ 2015-10-13 14:59:53 +02:00
Hauke Petersen
a3e11cad93 boards: s/TIMER_DEV/TIMER_BASE/ for msp430 boards 2015-09-17 13:57:58 +02:00
Hauke Petersen
ce6b1d390a boards/z1: added SPI configuration 2015-09-17 11:32:38 +02:00
Hauke Petersen
bb204add17 boards/z1: adapted to use periph UART driver 2015-09-03 12:00:33 +02:00
Hauke Petersen
2e9403d8fe board/z1: added (x)timer configuration 2015-09-02 17:10:28 +02:00
BigDaddyD
b6bd067863 boards: removed leading underscores from macros
* also added a trailing underscore to header guards for consistency

Commit for PR 2623, repairing header file include guards.
This PR is intended to fix the include guards in files under RIOT/boards

SQUASH ME: fix underscore removal overdos

SQUASH ME: consistent macro naming

SQUASH ME: missed that one

SQUASH ME: fixed overdo

SQUASH ME: consistency
2015-06-24 15:54:36 +02:00
Oleg Hahm
f7b197007d travis: make travis happy for empty header files 2014-12-16 17:02:44 +01:00
Oleg Hahm
ed54a5765a boards: created periph-conf.h for remaining boards 2014-12-16 17:02:44 +01:00