Francisco Molina
91443cb0f9
cpu/nrf5x_common/uart: power on correct UARTE
2021-02-25 14:26:12 +01:00
b5794c2a22
cpu/esp: set esptool as supported programmer
2021-02-24 13:29:56 +01:00
4dc8895093
cpu/cortexm_common: always add jlink as supported programmer
2021-02-24 13:27:04 +01:00
Erik Ekman
95196fb7e4
esp32/eth: Don't overwrite queued event with RX packet
...
If there is an event to be handled by _esp_eth_isr(), don't
overwrite it if a new packet has been received.
In my testing, all SYSTEM_EVENT_ETH_CONNECTED events except the first
are immediately followed by at least one SYSTEM_EVENT_ETH_RX_DONE event.
This causes the SYSTEM_EVENT_ETH_CONNECTED to not get handled, and the
IP stack will not be notified of the new link state.
Protect the other events by dropping the packet instead. If an earlier
unhandled SYSTEM_EVENT_ETH_RX_DONE event exists, overwrite it with the
newer packet.
I only saw this happen with lwIP and not with GNRC - I am not sure why.
But it still is a race waiting to happen. The nice long term solution
is probably to have a queue of unhandled events, allowing them all to
be processed once there is time.
2021-02-24 01:20:43 +01:00
Francisco
c91499997e
Merge pull request #16030 from benpicco/drivers/mtd_flashpage-fix_native
...
drivers/mtd_flashpage: fixes for native (and stm32l0, stm32l4)
2021-02-23 15:12:06 +01:00
Francisco
f85628cdb4
Merge pull request #16071 from benpicco/cpu/native/timer-periodic
...
cpu/native: timer: implement timer_set_periodic()
2021-02-23 13:26:53 +01:00
Benjamin Valentin
65093a47a3
cpu/native: timer: fix style issue
2021-02-23 09:52:05 +01:00
Benjamin Valentin
7eb159c2a2
cpu/native: timer: implement timer_set_periodic()
...
The native timer is not free running, so we can't honor it's flags.
But setitimer() already provides an interval option, we only have to enable it.
2021-02-23 09:51:53 +01:00
benpicco
d014f5e6d0
Merge pull request #14911 from OTAkeys/pr/can_stm32_deepsleep_opt
...
stm32/can: add option to enable deep-sleep per device
2021-02-22 22:52:46 +01:00
Dylan Laduranty
dc8b96f7a6
Merge pull request #16060 from benpicco/cpu/sam0_common/periph/adc-errata
...
sam0/adc: work around ADC errata on SAM D5x/E5x
2021-02-22 21:30:26 +01:00
Benjamin Valentin
a17686b551
Revert "cpu/sam0_common: SPI: only mux MISO on spi_acquire()"
...
This reverts commit 31bf0c5257
.
2021-02-22 19:46:10 +01:00
Benjamin Valentin
56654478d4
sam0/adc: work around ADC errata on SAM D5x/E5x
...
The ADC SYNCBUSY.SWTRIG gets stuck to '1' after wake-up from Standby Sleep mode.
Ignore the ADC `SYNCBUSY.SWTRIG` status bit, this functionality is not used by
the driver anyway.
2021-02-22 12:39:32 +01:00
430770886b
make/esptool: fix FFLAGS inclusion order for qemu
2021-02-22 10:35:38 +01:00
Martine Lenders
de4ee0f934
Merge pull request #15562 from benpicco/socket_zep_register
...
socket_zep: register with netdev, provide EUI-64 as command line parameter
2021-02-20 20:32:01 +01:00
Hauke Petersen
72db395963
cpu/nrf5x/kconfig: add VDD_LC_FILTER_REGx features
2021-02-19 17:19:45 +01:00
Hauke Petersen
cc2df0c508
cpu/nrf5x: use IS_ACTIVE to enable the DCDC conv
2021-02-19 17:19:28 +01:00
benpicco
8a498cb9fd
Merge pull request #16041 from jeandudey/2021_02_17-ccdocs
...
cpu/cc26xx_cc13xx: add CPU documentation
2021-02-18 18:10:23 +01:00
15124e4769
Merge pull request #15002 from kaspar030/pr/xfa_v3
...
core: introduce crossfile arrays (xfa) v3
2021-02-18 14:49:22 +01:00
Benjamin Valentin
2bdc5cf6d7
cpu/stm32: fix FLASHPAGE_ERASE_STATE for stm32l4
2021-02-18 14:22:11 +01:00
Benjamin Valentin
033c0110d0
cpu/native: flashpage: sector-slign the flashpage area
2021-02-18 14:22:11 +01:00
Jean Pierre Dudey
5a17e1335f
cpu/cc26xx_cc13xx: add CPU documentation
...
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-18 11:28:06 +01:00
61d9f34748
cpu/lpc23xx: add XFA support
2021-02-18 10:46:08 +01:00
b3b04faadb
cpu/fe310: add XFA support
2021-02-18 10:46:08 +01:00
858b5ca6ed
xfa: remove obsolete empty xfa.ld
2021-02-18 10:46:08 +01:00
ee9d6c879a
cpu/native: add XFA support
2021-02-18 10:46:08 +01:00
f411fd4814
cpu/msp430_common: add XFA support
2021-02-18 10:46:08 +01:00
06ec602782
cpu/esp8266: add XFA support
2021-02-18 10:46:08 +01:00
91b987acd6
cpu/esp8266: add ld/ to linker search path, use it
2021-02-18 10:46:08 +01:00
2474fa7af5
cpu/esp32: add XFA support
2021-02-18 10:46:08 +01:00
d8d34e033c
cpu/cortexm_common: add XFA handling to linkerscript
...
The global core/ldscripts/xfa.ld doesn't match our cortexm_base.ld.
This commit directly adds the two XFA lines to cortexm_base.ld.
In addition to that, a dummy (empty) xfa.ld is added, which the linker will pick
instead of core/ldscripts/xfa.ld, effectingly not using it.
2021-02-18 10:46:08 +01:00
José Alamos
093272c562
Merge pull request #16000 from jeandudey/2021_02_12-ieee802154-bitcaps
...
net/ieee802154/radio: use bitflags for capabilities
2021-02-17 16:56:25 +01:00
benpicco
77035d6df3
Merge pull request #15900 from benpicco/cpu/stm32f1-gpio_test_and_clear
...
cpu/stm32: GPIO/f1: use bitarithm_test_and_clear()
2021-02-17 15:32:39 +01:00
Jean Pierre Dudey
243de6e501
net/ieee802154/radio: use bitflags for capabilities
...
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-17 10:56:28 +01:00
Benjamin Valentin
17199dbb1c
socket_zep: allow to specify MAC address of ZEP device
...
Add a command-line parameter for setting the EUI-64 of a ZEP device.
This allows a native node to use a persistent ZEP address across reboots.
2021-02-16 18:57:27 +01:00
bcb23da368
Merge pull request #16005 from benpicco/cpu/nrf52_gpio_count
...
cpu/nrf5x_common: make GPIO_PIN macro model independent
2021-02-16 16:18:29 +01:00
Joakim Nohlgård
a23b29d42e
pic32_common: Add CPU specific xfa.ld variant
2021-02-16 14:55:26 +01:00
Joakim Nohlgård
6adeec09e9
atmega_common: add arch specific XFA ldscript to properly place .roxfa
2021-02-16 14:55:26 +01:00
Benjamin Valentin
eb89482a75
cpu/nrf5x_common: make GPIO_PIN macro model independent
...
We can use the `GPIO_COUNT` vendor macro to check if there is more than
one GPIO port on nRF52.
This is the case for nRF52840 and nRF52833.
2021-02-14 00:30:25 +01:00
Benjamin Valentin
5a11fd2c66
cpu/nrf51: define GPIO_COUNT
...
GPIO_COUNT is not defined in the vendor headers, but it's always one
for this family (one GPIO port).
2021-02-14 00:29:47 +01:00
Benjamin Valentin
a8fcc7b238
cpu/nrf5x: only enable DCDC for REG0 if REG0 exists
...
nRF52833 has POWER_MAINREGSTATUS_MAINREGSTATUS_High, but no POWER->DCDCEN0
register.
This breaks all builds on this MCU.
Fix the ifdef to fix the build.
2021-02-14 00:06:34 +01:00
benpicco
3e3c4d06fb
Merge pull request #15955 from aabadie/pr/boards/microbit-v2
...
boards: add support for microbit v2
2021-02-13 23:48:43 +01:00
benpicco
84e21e97f1
Merge pull request #15991 from haukepetersen/opt_nrf52_dcdc
...
cpu/nrf5x: enable DC/DC also for REG0 if VDDH is used
2021-02-13 23:09:12 +01:00
Hauke Petersen
9d7a37a571
cpu/nrf5x: also enable DCDC for REG0 if used
2021-02-12 10:37:43 +01:00
4dc7f33b2b
cpu/fe310: set newlib as default libc
2021-02-11 21:49:43 +01:00
Marian Buschsieweke
efb2adf27a
Merge pull request #15977 from maribu/ptp-api-fix-adjust
...
drivers/periph_ptp: fix clock adjustment API
2021-02-11 17:28:02 +01:00
Hauke Petersen
63c23598b3
cpu/nrf52: add VDDHDIV5 as ADC input
2021-02-11 10:40:11 +01:00
41a89a31a9
boards: cpu: nfr52: fix typo in nrf52833 cpu model name
2021-02-10 13:39:51 +01:00
36ca3845c2
cpu/nrf5x_common: fix pin support for nrf52833xxaa model
2021-02-10 13:39:51 +01:00
Marian Buschsieweke
dbd241ef26
cpu/stm32/periph_ptp: update to new API
2021-02-10 10:09:26 +01:00
benpicco
a69da13d56
Merge pull request #15948 from jeandudey/2021_02_08-cc1350-launchpad
...
boards: add cc1350 launchpad
2021-02-09 23:34:58 +01:00
Jean Pierre Dudey
b289c698b8
cpu/cc26xx_cc13xx: define GPIO_PIN macro
...
This allows using the macro inside the periph_conf.h board files since the
periph/gpio.h header can't be included on the peripheral configuration.
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-09 23:04:24 +01:00
benpicco
6929577c76
Merge pull request #15845 from benpicco/boards/adafruit-itsybitsy-m4
...
boards: add adafruit-itsybitsy-m4
2021-02-09 19:41:43 +01:00
Benjamin Valentin
73f58bfa04
cpu/samd5x: Kconfig: don't provide periph_eth on CPU level
...
It's up to the board to expose it.
2021-02-09 16:15:33 +01:00
benpicco
5fba2c8387
Merge pull request #14448 from benpicco/l2-peerstats-rebased
...
net/netstats: L1/L2 per neighbor statistics
2021-02-09 14:54:53 +01:00
benpicco
bd79f573c7
Merge pull request #15935 from benpicco/cpu/native-flashpage
...
cpu/native: add periph/flashpage implementation
2021-02-09 14:54:08 +01:00
Benjamin Valentin
cc9c58aae3
nrfmin: depend on gnrc_netif instead of gnrc_netdev_default
...
`gnrc_netdev_default` is a pseudomodule, what this driver really wants
is gnrc_netif.
2021-02-09 12:27:58 +01:00
Francisco Molina
85caf7cbc7
drivers/flashpage: add FLASHPAGE_ERASE_STATE definition
2021-02-09 11:11:46 +01:00
benpicco
64779b6f98
Merge pull request #15944 from jeandudey/2021_02_08-cc26x0-cc13x0
...
cpu/cc26x0: rename to cc26x0_cc13x0
2021-02-08 21:10:06 +01:00
Jean Pierre Dudey
aec0edbcb9
cpu/cc26x0_cc13x0: use SetupTrimDevice only on cc26x0
...
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-08 17:25:42 +01:00
Jean Pierre Dudey
7db791476e
cpu/cc26x0: rename to cc26x0_cc13x0
...
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-08 17:25:42 +01:00
0b2810a856
riscv_common: make thread_yield_higher IRQ compatible
2021-02-08 11:04:18 +01:00
50cf93c719
Merge pull request #15718 from bergzand/pr/rv32i/fe310_rv32i_refactor
...
riscv_common: Refactor common fe310 code to riscv_common
2021-02-08 10:27:41 +01:00
Benjamin Valentin
1acbd6e560
cpu/native: add periph/flashpage implementation
...
Add a simple RAM-backed flashpage implementation for native, to
allow for easier testing of flashpage based applications / features.
2021-02-05 23:31:46 +01:00
2692957c0e
riscv_common: Refactor common fe310 code to riscv_common
2021-02-05 09:32:19 +01:00
b666b78602
Merge pull request #15914 from fjmolinas/pr_stm32_flashpage_fix_per
...
cpu/stm32/flashpage: reset PER after erase
2021-02-03 10:21:04 +01:00
Francisco
3b2a55a923
Merge pull request #15865 from benpicco/pm_layered-default
...
cpu: make pm_layered a DEFAULT_MODULE
2021-02-03 08:17:29 +01:00
Vincent Dupont
2edf37ed5b
cpu/stm32/can: use en_deep_sleep_wake_up by default
...
Add en_deep_sleep_wake_up = true in default candev_conf in can_params.h
2021-02-02 15:39:27 +01:00
Vincent Dupont
eb0f6582c7
stm32/can: add option to enable deep-sleep per device
...
Deep-sleep was based on using rx pin as external interrupt to be able to
wake up from stop mode. If rx pin cannot be used as interrupt or user
does not need to wake up from stop from the CAN, an option is now
present. If en_deep_sleep_wake_up is set to false, setting the device to
sleep simply unblock stop mode. Otherwise the behavior is unchanged.
2021-02-02 15:32:25 +01:00
Francisco Molina
3d68406c5b
cpu/stm32/flashpage: reset PER after erase
2021-02-02 11:42:09 +01:00
Benjamin Valentin
4095eac9f2
cpu: mips32r2_common: set BITARITHM_HAS_CLZ
...
The MIPS ISA implements CLZ:
https://ti.tuwien.ac.at/cps/teaching/courses/cavo/files/MIPS32-IS.pdf
For `tests/periph_gpio` this shaves off 20 bytes on `6lowpan-clicker`.
2021-02-02 11:14:38 +01:00
Benjamin Valentin
c788fe130f
cpu/mips_pic32_common: GPIO: use bitarithm_test_and_clear()
2021-02-02 11:14:37 +01:00
benpicco
837b55fc17
Merge pull request #15420 from bergzand/pr/stm32f4/flashpage_support
...
stm32f{2,4,7}: Initial flashpage support
2021-02-01 19:23:51 +01:00
b6e80bf487
stm32f4: Initial flashpage support
2021-02-01 18:23:05 +01:00
benpicco
efd8afd3ab
Merge pull request #15899 from OTAkeys/pr/stm32-fix-exti
...
cpu/stm32/gpio: fix EXTI flag clearing
2021-02-01 18:22:25 +01:00
Leandro Lanzieri
fcafb89671
Merge pull request #15893 from benpicco/cpu/kinetis-float
...
cpu/kinetis: enable floating point support
2021-02-01 15:48:35 +01:00
Francisco
b9ebeccff2
Merge pull request #15895 from bergzand/pr/stm32/expose_ram
...
stm32: Resolve RAM size to bytes
2021-02-01 14:09:24 +01:00
Benjamin Valentin
a5c222d830
cpu/stm32: GPIO/f1: use bitarithm_test_and_clear()
2021-02-01 13:47:41 +01:00
Vincent Dupont
3e8e109e8b
cpu/stm32/gpio: fix EXTI flag clearing
...
In case a non-gpio EXTI (>= 16) is pending, the isr_exti() used to clear
the flag and try to call a callback, which was out-of-bouds, thus
generating a hard fault.
This fixes it by masking the pending_isr variables with 0xFFFF.
2021-02-01 13:30:48 +01:00
Benjamin Valentin
2ffd7b4261
cpu/kinetis: enable floating point support
...
I think this CPU was added before RIOT had support for the FPU on
Cortex-M4F, this should now have been long fixed.
Advertise the FPU on these CPUs.
2021-02-01 12:18:13 +01:00
118643ab2d
stm32: Resolve RAM size to bytes
...
The ram size is exposed as macro value and available for use in code.
For the stm32 it has a value in kilobytes suffixed with 'k'. This is
less than optimal for usage in arithmetic. This commit modifies the
value to bytes so that it can be used in preprocessor magic
2021-02-01 10:53:40 +01:00
benpicco
e87874ae54
Merge pull request #15689 from iosabi/qn908x_spi
...
cpu/qn908x: Implement blocking SPI support
2021-01-31 18:35:13 +01:00
iosabi
dfdd076125
cpu/qn908x: Implement blocking SPI support.
...
This patch implements the basic support the last of the FLEXCOMM modes,
Serial Peripheral Interface, in a simple blocking mode with busy wait,
which is enough to test all the SPI functionality end-to-end.
Tested reading and writing registers on a SPI peripheral, and checked
with the oscilloscope that the frequencies were as expected.
Results from `tests/periph_spi`:
```
> init 0 0 2 -1 0
SPI_DEV(0) initialized: mode: 0, clk: 2, cs_port: -1, cs_pin: 0
> bench
1 - write 1000 times 1 byte: 16002 16009
2 - write 1000 times 2 byte: 18001 18008
3 - write 1000 times 100 byte: 802000 802007
4 - write 1000 times 1 byte to register: 24003 24010
5 - write 1000 times 2 byte to register: 26001 26008
6 - write 1000 times 100 byte to register: 810001 810008
7 - read 1000 times 2 byte: 23003 23009
8 - read 1000 times 100 byte: 807002 807009
9 - read 1000 times 2 byte from register: 32002 32009
10 - read 1000 times 100 byte from register: 816002 816009
11 - transfer 1000 times 2 byte: 23003 23009
12 - transfer 1000 times 100 byte: 807003 807010
13 - transfer 1000 times 2 byte to register: 32003 32009
14 - transfer 1000 times 100 byte to register:816002 816009
15 - acquire/release 1000 times: 7222 7228
-- - SUM: 5059250 5059351
```
2021-01-31 16:27:20 +00:00
iosabi
e085232da4
cpu/qn908x: Fix BOARD_HAS_ADC_PA06_CAP usage.
...
The macro was moved from Kconfig to the periph_cpu.h which means that
the macro name needed to be updated to BOARD_HAS_ADC_PA06_CAP instead
of CONFIG_BOARD_HAS_ADC_PA06_CAP.
2021-01-30 23:30:43 +00:00
iosabi
965ebaa15b
cpu/qn908x: Implement ADC support
...
The ADC in the QN908x cpu offers multiple options for ADC conversion
using up to 8 external pins, one external reference pin and some
internal signals like a 1.2V reference, Vss, Vcc and an internal
temperature monitor.
This patch implements support for sampling ADC values from the ADC lines
defined in the board configuration. Some configurations are really
always present and don't require a board configuration, like the Vcc or
internal temperature monitor but to coexist with other board ADC line
options they are only set as part of the board configuration.
2021-01-30 17:25:09 +00:00
Hauke Petersen
deafa9074a
cpu/nrf/radio/nrfble: request HFXO clock source
2021-01-29 11:10:15 +01:00
Hauke Petersen
11a914ed8a
cpu/nrf/radio/nrfmin: request HFXO clock source
2021-01-29 11:10:15 +01:00
Hauke Petersen
cea6d8dd2d
cpu/nrf/radio/nrf802154: request HFXO clock source
2021-01-29 11:10:15 +01:00
Hauke Petersen
9d1692c45a
cpu/nrf5x: allow to request/release HFXO clk src
2021-01-29 11:10:15 +01:00
Dylan Laduranty
1d0dbb4626
Merge pull request #15846 from benpicco/cpu/sam0_common-spi_fixes
...
cpu/sam0_common: SPI: MOSI only operation & fix for adafruit-itsybitsy-m4
2021-01-28 09:26:28 +01:00
Benjamin Valentin
f12a82e4f9
cpu/stm32: use common pm_off() function
...
The code is identical to the one found in sys/pm_layered/pm.c
2021-01-27 14:07:22 +01:00
Benjamin Valentin
9c1455d55f
cpu: make pm_layered a DEFAULT_MODULE
...
Allow to disable pm_layered in the bootloader to save some ROM.
2021-01-27 13:21:20 +01:00
ce97e9d8ce
Merge pull request #15859 from fjmolinas/pr_newlib_feature
...
treewide: model newlib as a FEATURE
2021-01-27 10:06:08 +01:00
Francisco Molina
63a2a6ce1b
treewide: model newlib as a FEATURE
2021-01-27 09:24:25 +01:00
Benjamin Valentin
31bf0c5257
cpu/sam0_common: SPI: only mux MISO on spi_acquire()
2021-01-26 21:42:06 +01:00
Benjamin Valentin
b894b280f4
cpu/samd21: update doc.txt with supported MCUs
...
SAMD10, SAMD20, SAMD21, SAMR21 all belong to the same family/generation
of Atmel MCUs, they are all supported by `cpu/samd21`.
2021-01-26 19:23:52 +01:00
benpicco
98726ded6d
Merge pull request #14662 from benpicco/cpu/samd20
...
cpu/samd21: add support for SAMD20 & SAM D20 Xplained Pro board
2021-01-26 19:14:36 +01:00
b3ffb690b1
Merge pull request #15857 from bergzand/pr/fe310/remove_nanostubs
...
cpu/fe310: Use newlib_syscalls_default stub implementations
2021-01-26 14:50:24 +01:00
128423edc6
cpu/fe310: Use newlib_syscalls_default stub implementations
...
This switches the fe310 to use the common newlib_syscalls_default
implementation.
2021-01-26 13:42:52 +01:00
Marian Buschsieweke
38188017a8
Merge pull request #15610 from maribu/stm32-ethernet-rx-timestamp
...
drivers/stm32_eth: add RX timestamps
2021-01-26 13:32:19 +01:00
Marian Buschsieweke
62aa3d103f
cpu/stm32/periph_eth: RX Timestamps
2021-01-26 10:44:04 +01:00