Benjamin Valentin
c544c41804
cpu/lpc2387: fix indent
2019-11-07 21:55:24 +01:00
Benjamin Valentin
d6a94d4e18
cpu/lpc2387: uart driver overhaul
...
This converts the hard-coded UART driver to the new ways.
- allow the board to configure the RX & TX pins
- allow for more than one UART
- allow setting the baudrate
- implement poweron()/poweroff() functions
2019-11-07 21:55:24 +01:00
7e42f6e4d5
Merge pull request #12659 from aabadie/pr/cpu/atmega_common_wdt
...
cpu/atmega_common: add implementation for watchdog
2019-11-07 12:32:46 +01:00
José Alamos
20ea18637f
Merge pull request #10485 from miri64/gnrc_netif/enh/default-init
...
gnrc_netif: assume `netif->ops->init()` to be set to at least a default
2019-11-07 11:41:05 +01:00
d22404b8b7
cpu/atmega_common: add implementation for watchdog
2019-11-07 11:35:29 +01:00
Martine Lenders
14a2f6bc18
gnrc: use gnrc_netif_default_init() for all implementations
2019-11-07 11:00:36 +01:00
Bas Stottelaar
d0ff9530d3
cpu/efm32: update vendor code
2019-11-06 23:25:53 +01:00
Benjamin Valentin
5ec9f62a0b
cpu/lpc2387: add UART register map
2019-11-04 01:21:08 +01:00
benpicco
926bdc9a9f
Merge pull request #12579 from bergzand/pr/stm32/lpclk_en_dis
...
stm32/cpu: Add functions for low power mode clock config
2019-11-01 23:16:37 +01:00
799823b630
stm32/cpu: Add functions for low power mode clock config
2019-11-01 20:19:41 +01:00
Anton Gerasimov
fa8c0578bf
cpu/cc26xx_cc13xx: switch to cortexm.ld linker script
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
9fad1e3b6d
cpu/cc26xx_cc13xx: define uart_conf_t
...
Replaces older macro-based configuration
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
6790e9e6ca
cpu/cc26xx_cc13xx: Fix codespell issues
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
1659a71ed0
cpu/cc13x2: Add support for cc13x2 MCUs
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
1442561c8e
cpu/cc26x0: Fix register map for WDT
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
f6a3f14d22
cpu/cc26x0: Factor out code common for cc26xx/cc13xx family
...
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Martine Lenders
ea4b78654f
Merge pull request #12285 from JulianHolzwarth/pr/posix/pthread/pthread_reaper_fix
...
sys/posix/pthread/pthread.c: fix pthread reaper
2019-10-29 18:56:36 +01:00
Marian Buschsieweke
d4adcfd92d
Merge pull request #12581 from benpicco/lpc2387-xtal_select
...
cpu/lpc2387: allow for more flexible clock selection
2019-10-28 12:32:11 +01:00
Benjamin Valentin
d6ca62576d
cpu/lpc2387: allow use of other XTALs
...
Currently the cpu/lpc2387 init code hard-codes a 16 MHz
external oscillator.
Instead, calculate the PLL multiplier based on the board define
and also allow to run without an external oscillator.
2019-10-28 11:11:40 +01:00
Leandro Lanzieri
073090b01e
Merge pull request #12580 from benpicco/lpc2387-fix_rtc
...
cpu/lpc2387: enable RTC on rtc_init()
2019-10-28 10:40:37 +01:00
Leandro Lanzieri
00926221fd
Merge pull request #12585 from aabadie/pr/cpu/stm32_common_fix_llvm_build
...
cpu/stm32_common: fix i2c_1 build with llvm toolchain
2019-10-28 10:03:48 +01:00
Marian Buschsieweke
4cf2151248
Merge pull request #12537 from benpicco/at86rfmega
...
drivers/at86rf2xx: add support for ATmegaRF MCUs
2019-10-28 09:22:02 +01:00
fd2d30c6e7
cpu/stm32_common: fix i2c_1 build with llvm toolchain
2019-10-27 15:44:07 +01:00
1c416185b6
cpu/sam0_common: fix potential undefined result with sercom_id
...
Scan-build detected that sercom_id could return -1 and the value of this function is affected to uint8_t variables. Since these variables are used for shitfing bit in registers, this could lead to undefined behavior
2019-10-27 12:02:47 +01:00
Benjamin Valentin
985fb53c9f
cpu/lpc2387: enable RTC on init
...
All other CPU implementations have the RTC running after
rtc_init() was called.
Fix this for lpc2387.
2019-10-27 01:33:13 +02:00
Benjamin Valentin
14a8a53eb5
cpu/atmega256rfr2: Hook up at86rfr2 radio
2019-10-26 23:10:18 +02:00
Benjamin Valentin
25e9b24bc4
cpu/atmega128rfa1: Hook up at86rfa1 radio
2019-10-26 23:10:18 +02:00
60748aee5d
Merge pull request #12571 from MrKevinWeiss/pr/fix/stm32/i2c/rreadbytes
...
stm32_common/i2c_2: Fix repeated read condition
2019-10-25 12:20:06 +02:00
Gunar Schorcht
e38d3e24ec
Merge pull request #12548 from maribu/c11_atomcis_cpp_compat
...
sys: Basic C++ compatibility with C11 atomcis
2019-10-25 11:48:58 +02:00
MrKevinWeiss
df19d33b77
stm32_common/i2c_2: Fix repeated read condition
...
Fix the condition to return -ENOPNOTSUPP when i2c repeated read attempted.
Currently the error occures even if a read after write is attempted.
This is the standard way to i2c_read_reg which should be supported.
The -EOPNOTSUPP requires the previous R/W state to be reading.
This means a `I2C_SR2_TRA` must be checked to be 0.
2019-10-25 10:35:48 +02:00
7761169964
Merge pull request #11657 from Yanok35/pr-stm32-spi-af
...
boards/stm32-based: allow SPI signals routed on multiple alternate functions
2019-10-25 09:47:49 +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
Marian Buschsieweke
314184adb5
cpu: Platform specific C11 atomics compat headers
...
Added headers to define platform specific sizes and types for the C11 atomics
compatibility module for C++.
2019-10-24 23:08:36 +02:00
Francisco Molina
1ae0873769
boards: change PORT used for flash/debug/reset to PROG_DEV
2019-10-24 12:58:12 +02:00
acdb010669
sam0_common/usb: fix typo in comment
2019-10-23 10:35:47 +02:00
Marian Buschsieweke
cd5cda21d4
Merge pull request #12538 from gschorcht/cpu/esp32/fix_cs_handling
...
cpu/esp32: fix CS handling in spi_transfer_bytes
2019-10-22 15:35:48 +02:00
Gunar Schorcht
db945bdd86
cpu/esp32: fix CS handling in spi_transfer_bytes
...
If `SPI_CS_UNDEF` is given as the `cs` parameter, CS pin must not be handled by the driver. Furthermore, if `cont` parameter is true, CS pin must not be disabled at the end of one transfer.
2019-10-22 08:14:49 +02:00
Benjamin Valentin
6db9421057
cpu/stm32f0: add STM32F030x4
2019-10-21 15:30:22 +02:00
benpicco
80c00339a4
Merge pull request #12477 from francois-berder/mips-refactor
...
cpu: mips*: Reorganize headers
2019-10-21 15:26:45 +02:00
benpicco
0aa63f84c7
Merge pull request #12515 from bergzand/pr/stmclk/fix_sai_shift
...
stmclk: Fix M-factor shift for SAI PLL
2019-10-21 11:37:07 +02:00
5578740fc4
Merge pull request #12397 from fjmolinas/pr_CPU_ARCH_FAM
...
makefiles/vars.inc.mk: move definition and export of CPU_FAM and CPU_ARCH to vars.inc.mk
2019-10-21 08:23:51 +02:00
5eedd9c629
stmclk: Fix M-factor shift for SAI PLL
2019-10-20 18:22:18 +02:00
Francois Berder
12c3a5472a
cpu: mips_pic32mx: Include vendor header in cpu_conf.h
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-18 18:57:42 +01:00
Francois Berder
89d43c3423
cpu: mips32r2_common: Remove useless includes
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-18 18:57:42 +01:00
Francois Berder
3a62b620bc
cpu: mips_pic32_common: Move cpu header to mips32r2_common
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-18 18:57:42 +01:00
benpicco
e9d6a61439
Merge pull request #12489 from aabadie/pr/cpu/atmega_cleanup_dep
...
cpu/atmega: cleanup dependencies handling
2019-10-18 15:04:07 +02:00
14567ea973
Merge pull request #12494 from fjmolinas/pr_remove_OS
...
Makefile/include: use ony one call to `uname`
2019-10-18 15:03:10 +02:00
629003d042
cpu/atmega: cleanup dependencies handling
2019-10-18 12:40:34 +02:00
benpicco
29e5c3af67
Merge pull request #12490 from aabadie/pr/boards/efm32_common_periph_gpio
...
boards/efm32: move provided gpio features at cpu level
2019-10-18 11:19:33 +02:00
benpicco
34ee36d9e4
Merge pull request #12491 from aabadie/pr/boards/atmega_common_periph_gpio
...
boards/atmega: move provided gpio features at cpu level
2019-10-18 11:19:15 +02:00
Francisco Molina
45c8eafd42
Makefile.include: remove repeated OS declaration
2019-10-18 10:36:43 +02:00
174bb3feee
cpu/ezr32wg: provide gpio feature at cpu level
2019-10-18 09:32:48 +02:00
c618d9821f
cpu/efm32: provide gpio feature at cpu level
2019-10-18 09:32:48 +02:00
Francisco Molina
347a0fc804
cpu/ boards/: remove exports for CPU_FAM
2019-10-18 08:55:33 +02:00
Francisco Molina
b4f9b74e1a
cpu/cc2*: remove immediate expansion of CPU_ARCH
2019-10-18 08:55:33 +02:00
Francisco Molina
5e9b92a326
cpu: remove CPU_ARCH exports
2019-10-18 08:55:33 +02:00
Francisco Molina
f3482de277
REMOVEME: add OS and OS_ARCH variable
2019-10-18 08:46:51 +02:00
cba293a9a9
cpu/cc2538: provide gpio feature at cpu level
2019-10-17 22:05:23 +02:00
9c442a3547
cpu/atmega_common: provide gpio feature at cpu level
2019-10-17 21:42:07 +02:00
Benjamin Valentin
6cf6dcb946
cpu/atmega256rfr2: small cleanup
...
GPIO_UNDEF is already defined in periph_cpu_common.h, so the
redefinition is never used.
2019-10-17 19:20:31 +02:00
Benjamin Valentin
b1ef68abf7
cpu/atmega_common: move periph/cpuid.c to common code
...
Both atmega128rfa1 and atmega256rfr2 implement it.
2019-10-17 19:20:31 +02:00
Benjamin Valentin
7d78e32b15
cpu/atmega128rfa1: ATmega128rfa1 MCU support
2019-10-17 19:20:31 +02:00
benpicco
bd0ba7f187
Merge pull request #12476 from basilfx/feature/efm32_uart_modes_cleanup
...
cpu/efm32: remove EFM32_UART_MODES
2019-10-17 18:22:37 +02:00
Sebastian Meiling
742a23c75b
Merge pull request #12007 from MrKevinWeiss/devfixi2cflag
...
cpu/stm32: Fix read bytes flag for i2c_2
2019-10-17 09:14:26 +02:00
Francois Berder
57377ded76
cpu: mips_pic32mz: Include vendor header in cpu_conf.h
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-10-16 21:17:14 +01:00
Bas Stottelaar
2a5010f779
cpu/efm32: remove EFM32_UART_MODES
2019-10-16 22:05:08 +02:00
Frank Hessel
51194b9c0d
cpu/native: Implement hardware SPI access (Linux)
2019-10-16 14:32:53 +02:00
Sebastian Meiling
ea0b5ff0dd
cpu: add missing arch features to fe310
...
Adds arch_32bit and arch_riscv to cpu/fe310 to allow for feature
requirements and blacklisting.
2019-10-14 17:40:23 +02:00
ebf43616b7
cpu: add arch_* features
2019-10-13 21:03:41 +02:00
Marian Buschsieweke
d749e2de5d
Merge pull request #12312 from kaspar030/cortexm_dont_disable_irq_in_cpu_jump_to_image
...
cpu/cortexm: don't disable IRQs in cpu_jump_to_image()
2019-10-08 11:20:06 +02:00
Dylan Laduranty
40b65c16e2
Merge pull request #12291 from keestux/sam0-refactor-adc0
...
boards/sam0: refactor ADC_0 into plain ADC
2019-10-07 09:20:38 +02:00
Thomas Stilwell
277459613b
cpu/efm32/uart: uart_write(): block until TX is complete
...
This avoids breaking the last character if something unclocks
the UART immediately after uart_write() returns.
2019-10-06 18:33:59 -05:00
Thomas Stilwell
5fb6801cca
cpu/efm32/uart: don't enable rx if no callback is configured
2019-10-06 18:33:57 -05:00
Thomas Stilwell
c8f34c705b
cpu/efm32/uart: move reusable code into uart_poweron/off()
2019-10-06 18:30:00 -05:00
Thomas Stilwell
3541666956
cpu/efm32/uart: fix crash on rx with no callback configured
2019-10-06 17:56:30 -05:00
825303cc04
Merge pull request #12372 from aabadie/pr/cpu/nrf52_multiple_i2c
...
cpu/nrf52: allow accessing multiple i2c peripherals
2019-10-04 15:58:30 +02:00
Kevin "Tristate Tom" Weiss
4b7c5915ec
Merge pull request #10953 from gschorcht/sys/shell/heap_cmd/pr
...
sys/shell: add heap command
2019-10-04 13:49:57 +02:00
c1b95733b6
cpu/nrf52: allow accessing multiple i2c peripherals
2019-10-04 08:42:35 +02:00
Kees Bakker
04c84ed158
cpu/sam0: refactor ADC_0 into plain ADC
...
This change is for all boards with a sam0 cpu. This cpu just has one ADC.
It is unnecessary to have defines with ADC_0_ prefix as if multiple ADCs
are possible.
Some defines were not used, such as ADC_0_EN, ADC_0_CHANNELS,
ADC_MAX_CHANNELS, ADC_0_CLK_SOURCE, ADC_0_CHANNELS
Change all ADC_0_ prefixes to ADC_
2019-10-03 20:45:44 +02:00
Gunar Schorcht
5521a6c39d
cpu/esp: fix conflicts after rebase
2019-10-02 14:21:35 +02:00
Gunar Schorcht
3c47cc571f
cpu/esp32: fix conflicts after rebase
2019-10-02 14:21:35 +02:00
f85edaf82a
Merge pull request #10941 from keestux/update-samr30-vendor
...
cpu/samr30: update vendor files using ASF 3.35.1
2019-10-02 13:35:06 +02:00
Kevin "Tristate Tom" Weiss
5bbfe92c11
Merge pull request #12336 from benpicco/cc2538-spi_fix
...
cpu/cc2538: fix spi_transfer_bytes()
2019-10-02 10:52:16 +02:00
Dylan Laduranty
aed628f08b
Merge pull request #11486 from benpicco/saml21-lpram
...
cpu/saml21: Make Low-Power SRAM available to programs
2019-10-01 21:02:42 +02:00
benpicco
c4fa0842a2
Merge pull request #11940 from basilfx/feature/efm32_riotboot
...
efm32: add support for riotboot
2019-10-01 20:20:17 +02:00
Gunar Schorcht
02d81b717e
Merge pull request #12063 from maribu/i2c_release
...
drivers/periph/i2c: Updated i2c_release() to return void
2019-10-01 19:50:38 +02:00
Benjamin Valentin
84a8a26dde
cpu/cortexm: pointer to .text should be const
...
A pointer to read-only ROM data should be const.
2019-10-01 18:42:56 +02:00
Benjamin Valentin
618449c7bd
cpu/samd5x: hook up backup RAM
2019-10-01 18:39:40 +02:00
Benjamin Valentin
01b3484ffb
cpu/saml21: add definitions for low power SRAM
...
SAML21 provides 2/4/8 kiB of Low Power SRAM that is retained
in backup mode.
This adds definitions to make that memory availiable to RIOT.
2019-10-01 18:39:40 +02:00
Benjamin Valentin
2c09d9bd5b
cpu/cortexm_common: Make Low-Power SRAM available to programs
...
Many MCUs contain some Backup or Low Power SRAM that is retained'even
in the deepest sleep modes.
In such sleep modes the MCU is essentually turned off with only the RTC
still running.
It can be woken by a GPIO or a RTC alarm. When this happens, a reset is
triggered and the normal startup routine is invoked.
This adds bss & data section for this memory in the linker script.
This allows for structures to be placed in it e.g.:
e.g.:
static uint8_t persistent_buffer[64] __attribute__((section(".backup.bss")));
static uint32_t persistent_counter __attribute__((section(".backup.data"))) = 1234;
2019-10-01 18:39:40 +02:00
Benjamin Valentin
c9b827e5d5
sam0_common: export flag that tells if the CPU woke from deep sleep
...
It is often useful to know whether the CPU was just powered on afresh
or if it was woken from a deep sleep state, e.g. by RTC or GPIO event.
2019-10-01 18:39:40 +02:00
Bas Stottelaar
962b0efaaf
boards+efm32: add support for riotboot
2019-10-01 18:08:27 +02:00
Bas Stottelaar
0b6435560e
efm32: optimize when building the bootloader
2019-10-01 18:05:20 +02:00
benpicco
a7cb0a4b77
Merge pull request #12323 from basilfx/feature/efm32_uart_modes
...
cpu/efm32: provide periph_uart_mode
2019-10-01 15:32:50 +02:00
benpicco
5f6065f567
Merge pull request #12338 from cladmi/pr/make/cortexm/do_not_set_cpu_model
...
makefiles/arch/cortexm.inc.mk: removing setting CPU_MODEL
2019-10-01 15:25:16 +02:00
Gaëtan Harter
e73b4d2d24
cpu/lpc1768: explictly define CPU_MODEL
...
Define CPU_MODEL as it required by cortexm.inc.mk
The default setting will be removed from cortexm.inc.mk.
2019-10-01 11:38:35 +02:00
Gunar Schorcht
5009959610
Merge pull request #12346 from benpicco/esp32-thin_archives
...
cpu/esp32: unconditionally disable thin archives
2019-10-01 10:34:04 +02:00
benpicco
52bf448a3b
Merge pull request #12035 from gschorcht/cpu/esp32/fix_periph_flash
...
cpu/esp32: fix and improve periph/flash
2019-10-01 10:22:06 +02:00
Benjamin Valentin
0ca2ce0214
cpu/esp32: unconditionally disable thin archives
...
Thin archives also cause a boot loop when using the flash module.
To prevent further surprises, disable thin archives unconditionally
until the cause for this behaviour is known.
2019-10-01 09:28:33 +02:00
benpicco
5105a2e54d
Merge pull request #12340 from cladmi/pr/makefiles/board_cpu_macros
...
makefiles: CFLAGS convert to the uppercase function instead of using the shell
2019-09-30 19:53:28 +02:00