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

17 Commits

Author SHA1 Message Date
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
Marian Buschsieweke
2f3961690e
cpu/atmega_common: Add feature PUF_SRAM
The feature is implemented in `cpu/atmega_common`, so we can just enable it for
all ATmega boards.
2020-05-15 11:31:23 +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
PeterKietzmann
8d11ca417f cpu/atmega_common: add mega2560 puf_sram feature 2018-11-20 09:45:32 +01:00
cladmi
b450141d4d
boards: unconditionally include CPU/Makefile.features
The file always exist so no need to do '-include'.

Replaced using:

    sed -i 's|-\(include $(RIOTCPU)/.*/Makefile.features\)|\1|' \
        $(git grep -l  '$(RIOTCPU)/.*/Makefile.features' boards)
2018-10-11 17:13:40 +02:00
Hauke Petersen
0f155db499 boards/arduino-atmega: move shared code to common/arduino-atmega 2017-11-30 10:26:35 +01:00
02e055fc81 make: include cpu Makefile.features from board Makefile.features 2017-09-14 13:15:52 +02:00
Anthony Merlino
3f7808add0 boards/arduino-mega2560: Alters board to depend on arduino-atmega-common 2017-02-02 14:12:02 -05:00
Hauke Petersen
85c1d6c086 boards/arduino-mega2560: added SPI configuration 2016-03-09 18:34:42 +01:00
Hauke Petersen
528e832c90 boards: cleaned up entries in Makefile.features 2015-10-21 16:45:21 +02:00
Hauke Petersen
8d89b95af5 boards: added missing periph_timer feature 2015-09-16 10:58:56 +02:00
René Herthel
d05151fdef cpu/mega2560: initial import of a gpio driver 2015-09-07 14:48:15 +02:00
Philipp Rosenkranz
02d0c88284 tests/travis: split buildtests into MCU groups. 2015-02-22 15:04:52 +01:00
Hauke Petersen
3db9935fa5 boards: added missing UART feature
added for:
- airfy-beacon
- arduino-mega2560
- cc2538dk
- msbiot
- openmote
- pca1000[0|5]
- spark-core
- stm32f4discovery
- yunjia-nrf51822
2014-12-08 18:15:46 +01:00
René Kijewski
765c88d08a make: allow drivers to implement features
This change allows drivers (or any module for that matter) to provide
features. This is e.g. useful if a board does not have a transceiver,
but your application uses `USEMODULE += some_driver`, which implements
the transceiver interface.

The line `FEATURES_PROVIDED += some_feature` should go to the guarded
block in `{sys,drivers}/Makefile.include`.
2014-10-26 23:54:10 +01:00
Ludwig Ortmann
a29a9ced27 boards + cpu: atmega2560: fix non-existent GPIO 2014-10-18 07:40:27 +02:00
Ludwig Ortmann
6262c4427e make: add gpio feature 2014-10-06 18:55:54 +02:00