This commit updates the nRF 802.15.4 radio driver to feature
the latest changes.
sdk-nrf-802154 commit: b60ce8affe251110a8228caea9c8ba45f578b4a3
Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
This commit disables the array bounds warning (`-Warray-bounds`) for
the `nrf_clock_is_running` function because GCC 12 and above may report
a false positive due to the size of the write access to the memory
address pointed by the `p_clk_src` argument being variable depending on
the value of the `domain` argument.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Keep the line high during the custom instruction transfer. Otherwise,
its low level can be interpreted by the memory chip as an active
HOLD#/RESET# signal and in consequence the memory status can be read
incorrectly.
Add also related notes to descriptions of nrfx_qspi_cinstr_xfer() and
nrfx_qspi_lfm_start() to warn users that the default configuration
provided by NRFX_QSPI_DEFAULT_CINSTR() may not always be suitable.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This commit updates the nRF 802.15.4 radio driver to feature
the latest changes.
sdk-nrf-802154 commit: ab78d8e836875e61a3715388281727c1feb4a225
Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
Building documentation in .rst format causes warnings due to
missing `nrfx_atomic` which is not used in `hal_nordic`.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
This commit updates the nRF 802.15.4 radio driver to feature
the latest changes.
sdk-nrf-802154 commit: 7e896fbeca9a0dc5240e583e321c62393af705ea
Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
This commit updates the nRF 802.15.4 radio driver to feature
the latest changes.
sdk-nrf-802154 commit: 11986be74d191f6ea4de17d059cfb87ff7f86dd9
Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
Serialization on nrf5340 network core requested functions which are
removed from build by setting NRF_802154_DELAYED_TRX_ENABLED=0
Signed-off-by: Andrzej Kuros <andrzej.kuros@nordicsemi.no>
This commit updates the nRF 802.15.4 radio driver to feature
the latest changes.
sdk-nrf-802154 commit: 453044a0e97ec2c8fa2d6d0135a093cbc5362eb2
Signed-off-by: Andrzej Kuros <andrzej.kuros@nordicsemi.no>
This commit changes public API of `nrf_802154_irq_init` to allows
passing negative values of `prio` parameter. Negative values will
be used to encode ZLI priority.
Signed-off-by: Andrzej Kuros <andrzej.kuros@nordicsemi.no>
The whole pin configuration function in the driver should be skipped
when both GPIO and PSEL skip flags are set, but the code that checks
this condition, despite the comment correctly explaining its purpose,
contains an unwanted negation. This commit fixes this embarrassing
copy-paste mistake.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Removed a file which was intializing global variables with
mask of PPI resources used by the ieee802154 radio driver.
nrfx is using macro masks directly.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
Clear USBREG events on driver initialization and
prevent spurious USBPWRRDY event right after initialization.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
This is a temporary change in a file imported from the nrfx repository
and it is supposed to be overwritten by the next update of nrfx.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This is a temporary change in a file imported from the nrfx repository
and it is supposed to be overwritten by the next update of nrfx.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
This change adds the following:
- Thread link metric injection support
- key management API
- frame encryption and frame counter injection
- retransmission API
sdk-nrf-802154 commit: 6ed86a9af2a3b2c6d5a9ee5ae88497464f2a57d3
Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
Doxygen group nrfx_atomic does not exist in hal_nordic
but was referenced in RST docs.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
Depending on the implementation of NRFX_CRITICAL_SECTION_ENTER
the 'channel' variable could be undefined in logging function.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
(cherry picked from the nrfx repository)
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This commit updates the nRF 802.15.4 radio driver to feature
the latest changes.
sdk-nrf-802154 commit: 9307dc01053c7f4ddb3081984a72a6d454ec8681
Signed-off-by: Jedrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
This commit introduces new scheme for integrating nRF IEEE 802.15.4
radio driver with Zephyr project.
nrf_802154 commit: c89637d597d81ae2b2a5b5bf18f0ba9c51912380
Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
GPIOTE channels allocated outside of the context
of the driver are no longer implicitly deallocated
during driver initialization.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
The paths to nrf_802154_serialization could have previously
exceeded the Windows limit on the path name, causing the build
to fail.
The zephyr_library() autogenerate library names, which may result
in very long build paths. Naming the library manually works around
this problem.
Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
To ensure seamless integration of different variants of the 802.15.4
driver, this commit introduces a possibility to check for capabilities
in run-time. This way, the integration layer does not have to hardcode
them.
nrf_radio_802154: 3b8936c141e8d3af39b564803612f0416fc0d93e
nrf_802154_serialization: fc94a27d26abd79087d872518e21e4434ec4fb45
nrf_802154_sl_opensource: 2966ae8b4b3fcf2b64d8b987703cbf4ecc0dd60b
Signed-off-by: Jedrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
The key-value map module currently does not protect the memory it stores
the map in from concurrent accesses. That leads to multiple race
conditions where elements in the map are modified from different
contexts at the same time. This commit makes all API functions of the
kvmap module execute within a critical section, which prevents
preemptions.
nrf_802154_serialization: 7b5f15aafdb2078ab0a832aa09030b90eec42dc2
Signed-off-by: Jedrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
This commit updates the IEEE 802.15.4 subsystem to the
following commits:
nrf_radio_802154: 3f3f5cf974487e41c0433e807ea2e61a1b3374e6
nrf_802154_sl_opensource: 78a857f6ad696c7aa3d3112b3ae49d92db453b82
nrf_802154_serialization: 9baba9fd7ca18fe3cf204e8609308e36090754e9
Signed-off-by: Hubert Miś <hubert.mis@nordicsemi.no>
Provides bit masks which are intended for use in the nrfx_glue.h
to mark the (D)PPI channels used by the 802.15.4 driver as occupied
and thus unavailable for allocation through nrfx_ppi.
Verification if resources used by the 802.15.4 driver do not overlap
with those used by the mpsl (if mpsl enabled).
Signed-off-by: Adam Zelik <adam.zelik@nordicsemi.no>
RPMsg Service allows registering multipe endpoints. Using this
module as serialization backend enables new use cases and simplifies
maintenance of the serialization component.
Co-authored-by: Pawel Kwiek <pawel.kwiek@nordicsemi.no>
Signed-off-by: Hubert Miś <hubert.mis@nordicsemi.no>
To avoid it being named just "nordic" by default (after the last part
of the path modules/hal/nordic).
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Update definition of this module so that CMakeLists.txt and Kconfig
for it are taken from external module root (modules/nordic/ in Zephyr).
Move all nrfx related glue files to the modules/nordic/nrfx/ directory
in the main Zephyr repository.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This commit introduces file list variables providing an abstraction for
files required for IEEE 802.15.4 driver to be built.
Signed-off-by: Pawel Kwiek <pawel.kwiek@nordicsemi.no>
This commit introduces nrf_802154_custom_part_of_radio_init callout.
Application can override weak empty implementation to provide some additional
operations to be performed at the beginning of each new timeslot.
Signed-off-by: Adam Zelik <adam.zelik@nordicsemi.no>
Fix#1:
Transmission failure would cause to leave an allocated buffer resulting
in a serialization failure leading to an assert, which was seen as a
timeout error on APP core side.
Fix#2:
It is possible for nrf_802154_spinel_send function to be preempted
resulting in the static frame buffer being reused. The buffer size was
reduced accordingly to 802.15.4 frame size and possible additional data.
Fix#3:
Radio driver's API call using serialization can be preempted after
issuing a serialized call request to NET core, but before preparing
the notifier for an awaited property. This results in receiving a
property that no one waits for and dropping the property as an unwanted.
In current implementation the awaited property is prepared during the
notifier lock.
Re-fix #4:
The issue which manifests itself in disabled NVIC interrupts in SED
roles.
Signed-off-by: Pawel Kwiek <pawel.kwiek@nordicsemi.no>
PWM SW driver implementation allows now to use RTC instead of TIMER. RTC
uses 3 instead of 2 channels, so adjust PPI channel macros to match
that.
Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
This commit fixes naming issues introduced in the MPSL FEM API
implementation in the previous commits.
Signed-off-by: Jedrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
This commit replaces 802.15.4-specific FEM implementation with stubbed
MPSL FEM API implementation.
Signed-off-by: Jedrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
This commit replaces calls to 802.15.4-specific implementation of FEM
with calls to MPSL FEM API.
Signed-off-by: Jedrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
This PR fixes the issue which manifests itself in disabled
NVIC interrupts in SED roles.
Signed-off-by: Czeslaw Makarski <Czeslaw.Makarski@nordicsemi.no>