Marian Buschsieweke
16f859dafd
drivers/saul: use const qualifier for data to write
...
This makes life easier when calling e.g. `saul_reg_write()` with data
stored in flash.
As now the signatures for reading and writing differ (in that `const`
qualifier only), `saul_notsup()` is split into `saul_write_notsup()`
and `saul_read_notsup()`. However, one is implemented as a symbol alias
of the other, so that ROM consumption remains unchanged.
2022-05-23 08:35:27 +02:00
Marian Buschsieweke
bae91c1660
Merge pull request #17723 from benpicco/periph_timer_periodic-set_stopped
...
drivers/periph/timer: add TIM_FLAG_SET_STOPPED flag
2022-05-03 12:06:37 +02:00
Benjamin Valentin
191ff4079b
cpu/nrf5x_common: timer: implement TIM_FLAG_SET_STOPPED
2022-04-28 13:27:59 +02:00
Marian Buschsieweke
f0586dbf8f
cpu/nrf5x_common: implement periph/gpio_ll{,_irq}
...
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2022-04-23 19:47:00 +02:00
chrysn
facb5e633f
Merge pull request #17436 from Ollrogge/reserve_flash
...
cpu: add flash_writable section to linker script
2022-03-17 21:44:32 +01:00
Ollrogge
41f961a197
periph/flashpage: Add _in_address_space feature
2022-03-17 19:45:54 +01:00
Francisco Molina
4906353cfe
cpu/nrf52-9160: add periph_spi_init_gpio
2022-02-08 09:17:48 +01:00
Marian Buschsieweke
8ee657f0e5
cpu/nrf5x_common/periph_temperature: Increase resolution
...
Modify the periph_temperature implementation to expose the full
resolution of the temperature sensor. The accuracy of the sensor will
likely be less than 0.25 °C, but typically temperature sensors have
a precision in the order of their resolution. Exposing the full
resolution can therefore be useful to monitor relative temperature
changes.
2021-12-15 16:14:08 +01:00
Hauke Petersen
00393e8214
kconfig: add ble_phy_x feature and mapping
2021-12-02 23:31:32 +01:00
Gunar Schorcht
007e29ebb5
cpu/periph/i2c: update implementations to new I2C API
...
Make all `spi_acquire` implementations return `void` and add assertions to check for valid device identifier where missing.
2021-11-29 06:35:25 +01:00
benpicco
09e0692a85
Merge pull request #17201 from bergzand/pr/nrf5x/periph_qdec
...
nrf5x_common: Add qdec peripheral implementation
2021-11-18 22:30:58 +01:00
benpicco
2ffbcecbe1
Merge pull request #17225 from dylad/pr/cpu/nrf91/add_periph_flashpage_support
...
cpu/nrf9160: add periph_flashpage support
2021-11-18 22:10:18 +01:00
Benjamin Valentin
eabc9a8042
cpu/nrf5x_common: fix cast to periph type
2021-11-18 10:14:51 +01:00
Dylan Laduranty
cc440bc296
cpu/nrf9160: add flashpage configuration
2021-11-17 14:06:04 +01:00
Dylan Laduranty
b734622944
cpu/nrf5x_common: update periph_flashpage for nRF9160 support
2021-11-17 14:05:51 +01:00
3b1bdd6b3c
nrf5x_common: Add qdec peripheral implementation
2021-11-16 15:21:51 +01:00
5e52a0ea4c
cpu/nrf5x_common: nrfx.h: add missing "kernel_defines.h" include
2021-10-20 11:36:55 +02:00
Francisco Molina
6b276af790
cpu/nrf52: initial kconfig modeling
2021-09-29 10:17:47 +02:00
dylad
1beda0f1e4
cpu/nrf9160: add TWI and SPI support
2021-09-06 20:15:18 +02:00
Jan Romann
4384795cb9
treewide: Remove excessive newlines
2021-08-13 19:50:38 +02:00
dylad
5b85a5750e
cpu/nrf9160: add initial support
2021-07-28 20:11:26 +02:00
Jose Alamos
3f62db6042
nrfmin: avoid explicit cast to netdev
2021-07-09 11:35:21 +02:00
Benjamin Valentin
d47a880915
cpu: add periph_rtt_overflow feature
...
The RTT overflow callback is not available on all RTT implementations.
This means it is either a no-op or `rtt_set_overflow_cb()` is a no-op
or it will overwrite the alarm set with `rtt_set_alarm()`.
This adds a feature to indicate that proper overflow reporting is available.
2021-04-30 11:58:00 +02:00
Hauke Petersen
e28ec7907b
Merge pull request #15806 from haukepetersen/opt_nrf5x_nrfblehfxo
...
cpu/nrf/radio/nrfble: request HFXO only on demand
2021-04-12 11:04:12 +02:00
chrysn
2b09d3162a
cpu/nrf52: Expose more timers
2021-03-30 16:34:44 +02:00
Marian Buschsieweke
1a1a16eb7e
cpu/nrf5x_common: drop bogus rtt_set_counter()
...
rtt_set_counter() is implemented as noop for nRF5x. This drops this bogus
implementation and the corresponding feature.
2021-03-08 17:34:30 +01:00
benpicco
2614831c86
Merge pull request #16137 from maribu/stm32_rtt
...
drivers/periph_rtt: add periph_rtt_set_counter feautre
2021-03-08 16:53:57 +01:00
Marian Buschsieweke
ab89234040
drivers/periph/rtt: add periph_rtt_set_counter feature
...
Some periph_rtt implementations do not provide `rtt_set_counter()`. This
adds `periph_rtt_set_counter` as feature to allow testing for its
availability. The feature is provided at CPU level if periph_rtt is
provided by the board for all CPUs implementing `rtt_set_counter()`.
2021-03-08 14:16:46 +01:00
Marian Buschsieweke
b9cb75fedf
drivers/periph/rtt: add periph_rtt_set_counter feature
...
Some periph_rtt implementations do not provide `rtt_set_counter()`. This
adds `periph_rtt_set_counter` as feature to allow testing for its
availability. The feature is provided at CPU level if periph_rtt is
provided by the board for all CPUs implementing `rtt_set_counter()`.
2021-03-04 18:05:06 +01:00
Francisco Molina
e2570f4d56
cpu/nrf52: add periph_uart_non_blocking to nrf52840
2021-03-03 08:12:12 +01:00
Francisco Molina
91443cb0f9
cpu/nrf5x_common/uart: power on correct UARTE
2021-02-25 14:26:12 +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
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
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
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
Hauke Petersen
9d7a37a571
cpu/nrf5x: also enable DCDC for REG0 if used
2021-02-12 10:37:43 +01:00
Hauke Petersen
905fb34408
cpu/nrf5x/nrfble: let driver requeset HFXO
2021-02-12 10:16:50 +01:00
36ca3845c2
cpu/nrf5x_common: fix pin support for nrf52833xxaa model
2021-02-10 13:39:51 +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
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
9d1692c45a
cpu/nrf5x: allow to request/release HFXO clk src
2021-01-29 11:10:15 +01:00
Marian Buschsieweke
e2c5467d09
cpu/nrf5x_common/radio/nrfmin: drop duplicated code
...
`gnrc_netif_hdr_build()` calls internally `gnrc_netif_hdr_init()`, which does
initialize `gnrc_netif_hdr_t::rssi` and `gnrc_netif_hdr_t::lqi`. So no need to
do this twice.
2021-01-13 08:53:17 +01:00
chrysn
e3e89fe513
cpu/nrf5x: implement periph_timer_periodic
2020-12-04 19:03:44 +01:00
e176649266
nrf5x: Adapt to flashpage/flashpage_pagewise API
2020-11-11 23:16:40 +01:00
Marian Buschsieweke
125c892c03
drivers/periph/timer: Use uint32_t for frequency
...
For all currently supported platforms `unsigned long` is 32 bit in width. But
better use `uint32_t` to be safe.
2020-10-30 22:02:12 +01:00
fd6f6e248c
cpu/nrf52: remove specific handling of softdevice
2020-10-29 09:02:12 +01:00
Bas Stottelaar
22243aec7a
cpu/*: realign ENABLE_DEBUG
2020-10-23 00:46:26 +02:00
Bas Stottelaar
ab6188cea3
cpu/*: add missing include of assert.h
2020-10-22 11:13:08 +02:00
Marian Buschsieweke
c38ca6d718
Merge pull request #15212 from miri64/gnrc_pkt/enh/pkt-list-ops
...
gnrc_pkt: introduce packet list operations
2020-10-15 12:13:03 +02:00
Martine Lenders
45144fb4a4
treewide: use new gnrc_pkt API functions instead of utlist.h macros
2020-10-13 13:32:53 +02:00
Benjamin Valentin
a863a43207
kconfigs: replace BOOTLOADER_% feature with HIGHLEVEL_STDIO
2020-10-13 10:30:22 +02:00
benpicco
add0814cd0
Merge pull request #15117 from chrysn-pull-requests/nrf52-pwm-fixes
...
cpu/nrf52: PWM fixes
2020-09-30 15:51:16 +02:00
Benjamin Valentin
33f49183d9
cpu/nrf5x_common: UART: add support for 1 MBaud
...
`UART_BAUDRATE_BAUDRATE_Baud1M` is defined in the vendor files, so
make it available to the user.
2020-09-30 13:42:59 +02:00
chrysn
2053a1785a
cpu/nrf52: Ensure that uninitialized PWM outputs are disabled
2020-09-30 13:16:59 +02:00
Benjamin Valentin
d9116684e5
cpu/cortexm_common: advertise puf_sram feature
...
`puf_sram` is a feature of the linker script, it does not need vendor
specific hardware support.
2020-09-11 16:30:45 +02:00
Benjamin Valentin
ca2b7e1952
cpu/nrf5x_common: UART: capture whole nrf52 lineup
2020-08-09 21:46:06 +02:00
Benjamin Valentin
1713dca711
cpu/nrf52: gpio: fix build for nrf52811
...
We can use a more general conditional here.
2020-08-09 21:46:06 +02:00
f013be5507
Merge pull request #14497 from aabadie/pr/drivers/makefile_dep_cleanup
...
drivers/Makefile.dep: remove inappropriate use of FEATURES_PROVIDED for rtt_rtc
2020-07-20 13:04:59 +02:00
Leandro Lanzieri
31b288443a
cpu/nrfx_common: Add Kconfig symbols
2020-07-16 10:23:48 +02:00
988638715f
cpu/nrf5x_common: remove inappropriate rtc dependency resolution
2020-07-10 21:58:03 +02:00
Martine S. Lenders
78fc1e7654
nrfmin: remove NETOPT_IPV6_IID support
...
This option is handled in the `gnrc_netif`-layer without any access to
the driver's option since 7ae90564d9
.
2020-06-25 10:51:05 +02:00
16ff94b4fe
nrf5x: remove common nrf5x spi peripheral driver
2020-05-18 19:18:28 +02:00
99a59c5dbd
nrf5x: Extend gpio with exti channel retrieval
2020-05-18 19:17:29 +02:00
Philipp Blum
35dcf637f2
cpu/nrf52: add support for nrf52811
2020-05-10 17:10:33 +02:00
5773db93f8
Merge pull request #14025 from fjmolinas/pr_nrf5x_rtt_conf
...
boards/common/nrf5x: add configurable RTT_FREQUENCY
2020-05-05 17:46:05 +02:00
Francisco Molina
409185c5ce
boards/common/nrf5x: add configurable RTT_FREQUENCY
...
Adds: RTT_MAX_FREQUENCY, RTT_MIN_FREQUENCY & RTT_CLOCK_FREQUENCY
2020-05-05 14:52:55 +02:00
PeterKietzmann
dd2d6b174e
cpu/nrf5x_common: enable bias correction in hwrng
2020-05-01 17:04:36 +02:00
Jose Alamos
67ed9defbe
gnrc_netif_xxx_create: use external netif allocation
2020-03-26 11:12:23 +01:00
fc6b586919
Merge pull request #13586 from bergzand/pr/nrf/dcdc
...
nrf5x: Add and enable configuration for the built-in DC/DC converter
2020-03-24 11:56:40 +01:00
Benjamin Valentin
f8d61edba0
cpu/nrf5x_common: use RTT based RTC implementation
2020-03-19 15:25:14 +01:00
Dylan Laduranty
0b15db3694
cpu/nrf5x: use generic hw fc module
2020-03-10 14:47:19 +01:00
64f04e4da9
nrf5x: Add built-in DC/DC converter enable function
...
The internal DC/DC converter is more efficient compared to the LDO
regulator. The downside of the DC/DC converter is that it requires an
external inductor to be present on the board. Enabling the DC/DC
converter is guarded with NRF5X_ENABLE_DCDC, this macro must be defined
if the DC/DC converter is to be enabled.
2020-03-07 17:37:40 +01:00
Jose Alamos
3ad574a822
drivers/netdev: use netdev_trigger_event_isr function
2020-03-06 14:03:43 +01:00
9cebd757a2
cpu/nrf5x: update GPIO_UNDEF value
...
The gpio_t value is uint8_t so use UINT8_MAX for GPIO_UNDEF
2020-02-19 19:16:58 +01:00
f568162f9b
cpu/nrf5x: provide specific gpio_t definition
2020-02-19 19:16:58 +01:00
66d903c209
cpu/nrf5x: move dependencies to Makefile.dep
2020-01-28 13:18:39 +01:00
3222621423
cpu/nrf5x_common: fix typos
2019-11-23 22:39:36 +01:00
Francois Berder
4a31f94cfc
many typo fixes
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
Yegor Yefremov
fa3b0ff04b
doxygen/SPI: don't include overridden typedefs
...
Add missing #ifndefs to overridden SPI typedefs.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:32 +01:00
Hauke Petersen
4bf14822cb
nrf5x: move nimble_ble feat. to cpu
2019-11-13 13:43:55 +01:00
Martine Lenders
14a2f6bc18
gnrc: use gnrc_netif_default_init() for all implementations
2019-11-07 11:00:36 +01:00
Gaëtan Harter
4b93f27d83
cpu: use makefiles/utils uppercase
...
Convert the variables to uppercase using the 'makefiles/utils' function.
2019-09-30 17:25:24 +02:00
Hauke Petersen
982d730adf
cpu/nrf5x: decelare radio_nrfble feat for all nrfs
2019-09-27 10:00:06 +02:00
40619d18ca
cpu/nrf5x_common: implement periph_wdt driver
2019-09-20 20:45:42 +02:00
Sebastian Meiling
af529531a4
cpu/nrf5x: adapt timer to return 0 on success
...
Adapt periph/timer implementation of nrf5x based MCUs
to return 0 on success for all functions.
2019-09-11 13:51:53 +02:00
Marian Buschsieweke
b87ab96d17
Merge pull request #10661 from miri64/gnrc_netif_hdr/enh/netif_setter
...
gnrc_netif_hdr: add setter for netif
2019-09-10 16:14:28 +02:00
benpicco
1ffe2e5e30
Merge pull request #11512 from skullbox305/cpu-nrf5x
...
cpu/nrf52: i2c bugfix
2019-09-03 18:43:38 +02:00
Martine Lenders
92a8e5d0ee
nrfmin_gnrc: use gnrc_netif_hdr_set_netif()
2019-08-29 14:51:44 +02:00
Gaëtan Harter
1be5b7b10b
cpu: do not locally export compilation variables
...
These are already exported by `makefiles/vars.inc.mk`.
It is a prerequisite to allow handling compilation without global exports.
2019-08-29 10:35:53 +02:00
Hauke Petersen
cc5f2cae20
cpu/nrf5x: fix bitrate doc for nrfmin driver
2019-08-14 11:15:08 +02:00
fjmolinas
254934dfa6
cpu/nrf5x_common: add flashpage_raw_support
2019-08-05 17:45:14 +02:00
PeterKietzmann
7ee9905fa6
cpu/nrf5x_common: map hwrng to SoC library if SoftDevice is present
2019-07-04 12:12:28 +02:00
81df812c5b
nrf5x: Add UART modecfg feature implementation
2019-06-28 09:56:40 +02:00
smlng
2de4b3011b
periph_common: add as dependency to periph drivers
...
Rational: the periph_common module is required by (most) other periph drivers
and also during startup of the CPU/MCU to run periph_init. The latter is only
required if other periph drivers are used, hence periph_common should be a
depency of periph_* modules and *not* of the CPU/MCU. This PR fixes that
by making periph_common a depency of periph_* and removing the explicit
include in the CPU/MCU implementation.
2019-06-03 13:44:10 +02:00
Semjon Kerner
65b709aaa7
cpu/nrf5x/radio/nrfmin: apply errata workaround
2019-05-15 14:49:42 +02:00
Semjon Kerner
22b5f8a41a
cpu/nrf5x/radio/nrfmin: wait for state transition
2019-05-15 14:49:42 +02:00
Semjon Kerner
1954807309
cpu/nrf5x/radio/nrfmin: explicit test for power mode
2019-05-15 12:32:14 +02:00