From 93c8e10cb83f7b523e6373d55fb5cd04f10ae7d2 Mon Sep 17 00:00:00 2001 From: Andrzej Kuros Date: Tue, 3 Sep 2024 09:10:49 +0300 Subject: [PATCH] nrf_802154: rev 77cac0c8c707305f946b5b6cb008158fe81f47b8 This commit updates revision of the nrf_802154 component. Signed-off-by: Andrzej Kuros --- nrf_802154/common/include/nrf_802154_config.h | 56 +++++++++ nrf_802154/doc/CHANGELOG.rst | 11 +- nrf_802154/driver/CMakeLists.txt | 22 ++-- .../src/nrf_802154_notification_direct.c | 4 + .../driver/src/nrf_802154_notification_swi.c | 14 ++- .../driver/src/nrf_802154_peripherals.h | 107 ++++++++++++++++++ .../driver/src/nrf_802154_peripherals_nrf52.h | 48 +------- .../driver/src/nrf_802154_peripherals_nrf53.h | 29 +---- .../src/nrf_802154_peripherals_nrf54h.h | 28 +---- .../src/nrf_802154_peripherals_nrf54l.h | 28 +---- .../driver/src/nrf_802154_request_direct.c | 4 + .../driver/src/nrf_802154_request_swi.c | 11 +- nrf_802154/driver/src/nrf_802154_trx.c | 6 +- nrf_802154/driver/src/nrf_802154_trx_ppi.c | 4 +- nrf_802154/sl/sl/CMakeLists.txt | 2 + .../{ => sl}/include/nrf_802154_sl_periphs.h | 78 ++++++------- .../nrf52833/hard-float/libnrf-802154-sl.a | Bin 54050 -> 54042 bytes .../nrf52833/soft-float/libnrf-802154-sl.a | Bin 53982 -> 53934 bytes .../nrf52833/softfp-float/libnrf-802154-sl.a | Bin 54042 -> 53994 bytes .../nrf52840/hard-float/libnrf-802154-sl.a | Bin 54050 -> 54042 bytes .../nrf52840/soft-float/libnrf-802154-sl.a | Bin 53982 -> 53934 bytes .../nrf52840/softfp-float/libnrf-802154-sl.a | Bin 54042 -> 53994 bytes .../soft-float/libnrf-802154-sl.a | Bin 46398 -> 46354 bytes .../hard-float/libnrf-802154-sl.a | Bin 43530 -> 43486 bytes .../soft-float/libnrf-802154-sl.a | Bin 43530 -> 43486 bytes .../softfp-float/libnrf-802154-sl.a | Bin 43530 -> 43486 bytes .../hard-float/libnrf-802154-sl.a | Bin 43598 -> 43586 bytes .../soft-float/libnrf-802154-sl.a | Bin 43530 -> 43486 bytes .../softfp-float/libnrf-802154-sl.a | Bin 43586 -> 43542 bytes .../hard-float/libnrf-802154-sl.a | Bin 43598 -> 43586 bytes .../soft-float/libnrf-802154-sl.a | Bin 43530 -> 43486 bytes .../softfp-float/libnrf-802154-sl.a | Bin 43586 -> 43542 bytes .../include/nrf_802154_sl_periphs.h | 25 ++++ 33 files changed, 284 insertions(+), 193 deletions(-) rename nrf_802154/sl/{ => sl}/include/nrf_802154_sl_periphs.h (70%) create mode 100644 nrf_802154/sl/sl_opensource/include/nrf_802154_sl_periphs.h diff --git a/nrf_802154/common/include/nrf_802154_config.h b/nrf_802154/common/include/nrf_802154_config.h index 65215df1f5..51143346cd 100644 --- a/nrf_802154/common/include/nrf_802154_config.h +++ b/nrf_802154/common/include/nrf_802154_config.h @@ -538,6 +538,62 @@ extern "C" { #define NRF_802154_CARRIER_FUNCTIONS_ENABLED 1 #endif +/** + * @def NRF_802154_NOTIFICATION_IMPL_DIRECT + * + * Use nrf_802154_notification_direct.c implementation. + * See @ref NRF_802154_NOTIFICATION_IMPL. + */ +#define NRF_802154_NOTIFICATION_IMPL_DIRECT 0 + +/** + * @def NRF_802154_NOTIFICATION_IMPL_SWI + * + * Use nrf_802154_notification_swi.c implementation. + * See @ref NRF_802154_NOTIFICATION_IMPL. + */ +#define NRF_802154_NOTIFICATION_IMPL_SWI 1 + +/** + * @def NRF_802154_NOTIFICATION_IMPL + * + * Selects implementation of internal "notification" module. + * Possible values: + * @ref NRF_802154_NOTIFICATION_IMPL_DIRECT, + * @ref NRF_802154_NOTIFICATION_IMPL_SWI + */ +#ifndef NRF_802154_NOTIFICATION_IMPL +#define NRF_802154_NOTIFICATION_IMPL NRF_802154_NOTIFICATION_IMPL_SWI +#endif + +/** + * @def NRF_802154_REQUEST_IMPL_DIRECT + * + * Use nrf_802154_request_direct.c implementation. + * See @ref NRF_802154_NOTIFICATION_IMPL. + */ +#define NRF_802154_REQUEST_IMPL_DIRECT 0 + +/** + * @def NRF_802154_REQUEST_IMPL_DIRECT + * + * Use nrf_802154_request_swi.c implementation. + * See @ref NRF_802154_REQUEST_IMPL. + */ +#define NRF_802154_REQUEST_IMPL_SWI 1 + +/** + * @def NRF_802154_REQUEST_IMPL + * + * Selects implementation of internal "request" module. + * Possible values: + * @ref NRF_802154_REQUEST_IMPL_DIRECT, + * @ref NRF_802154_REQUEST_IMPL_SWI + */ +#ifndef NRF_802154_REQUEST_IMPL +#define NRF_802154_REQUEST_IMPL NRF_802154_REQUEST_IMPL_SWI +#endif + /** *@} **/ diff --git a/nrf_802154/doc/CHANGELOG.rst b/nrf_802154/doc/CHANGELOG.rst index 3071718e1f..4a4a1f5272 100644 --- a/nrf_802154/doc/CHANGELOG.rst +++ b/nrf_802154/doc/CHANGELOG.rst @@ -16,11 +16,18 @@ Main branch - nRF 802.15.4 Radio Driver Notable changes =============== -* If a time slot ends while waiting for or receiving an ACK frame, the transmission terminates with the :c:macro:NRF_802154_TX_ERROR_NO_ACK error code. +* If a time slot ends while waiting for or receiving an ACK frame, the transmission terminates with the :c:macro:`NRF_802154_TX_ERROR_NO_ACK` error code. This behavior allows the higher layer to distinguish between a frame that was not transmitted and a frame that was transmitted but did not receive an ACK frame. (KRKNWK-19126) -* When the nRF 802.15.4 Radio Driver prepares for a reception but no free buffer is left, the :c:func:`nrf_802154_receive_failed` callout is generated with a new error code :c:macro:NRF_802154_RX_ERROR_NO_BUFFER. (KRKNWK-19304) +* When the nRF 802.15.4 Radio Driver prepares for a reception but no free buffer is left, the :c:func:`nrf_802154_receive_failed` callout is generated with a new error code :c:macro:`NRF_802154_RX_ERROR_NO_BUFFER`. (KRKNWK-19304) * The default assignment of the DPPI channels on the nRF54L Series is changed so that the channels 14 and 15 are left unused for other purposes. (KRKNWK-19349) * The binaries of the nRF 802.15.4 SL library for the nRF54L15 SoC are provided also for the non-secure operation. (KRKNWK-19338) +* The internal implementation of *notification* module is selected by the :c:macro:`NRF_802154_NOTIFICATION_IMPL` configuration macro. + The internal implementation of *request* module is selected by the :c:macro:`NRF_802154_REQUEST_IMPL` configuration macro. + +Added +===== + +* Added the :c:macro:`NRF_802154_EGU_USED_CHANNELS_MASK` to inform about the fixed EGU channels used by the driver. (KRKNWK-19408) nRF Connect SDK v2.7.0 - nRF 802.15.4 Radio Driver ************************************************** diff --git a/nrf_802154/driver/CMakeLists.txt b/nrf_802154/driver/CMakeLists.txt index 3ba57a6040..fd3726e793 100644 --- a/nrf_802154/driver/CMakeLists.txt +++ b/nrf_802154/driver/CMakeLists.txt @@ -53,9 +53,13 @@ target_sources(nrf-802154-driver src/nrf_802154_critical_section.c src/nrf_802154_debug.c src/nrf_802154_encrypt.c + src/nrf_802154_notification_direct.c + src/nrf_802154_notification_swi.c src/nrf_802154_pib.c src/nrf_802154_peripherals_alloc.c src/nrf_802154_queue.c + src/nrf_802154_request_direct.c + src/nrf_802154_request_swi.c src/nrf_802154_rssi.c src/nrf_802154_rx_buffer.c src/nrf_802154_stats.c @@ -80,20 +84,6 @@ target_sources(nrf-802154-driver src/mac_features/ack_generator/nrf_802154_imm_ack_generator.c ) -if (SL_OPENSOURCE) - target_sources(nrf-802154-driver - PRIVATE - src/nrf_802154_notification_direct.c - src/nrf_802154_request_direct.c - ) -else () - target_sources(nrf-802154-driver - PRIVATE - src/nrf_802154_notification_swi.c - src/nrf_802154_request_swi.c - ) -endif () - if (SL_OPENSOURCE) target_compile_definitions(nrf-802154-driver-interface INTERFACE @@ -105,6 +95,10 @@ if (SL_OPENSOURCE) NRF_802154_IFS_ENABLED=0 # Disable CSMA-CA NRF_802154_CSMA_CA_ENABLED=0 + # Use nrf_802154_notification_direct.c implementation for "notification" module + NRF_802154_NOTIFICATION_IMPL=NRF_802154_NOTIFICATION_IMPL_DIRECT + # Use nrf_802154_request_direct.c implementation for "request" module + NRF_802154_REQUEST_IMPL=NRF_802154_REQUEST_IMPL_DIRECT ) endif() diff --git a/nrf_802154/driver/src/nrf_802154_notification_direct.c b/nrf_802154/driver/src/nrf_802154_notification_direct.c index ee3c1d07b5..24019e2af3 100644 --- a/nrf_802154/driver/src/nrf_802154_notification_direct.c +++ b/nrf_802154/driver/src/nrf_802154_notification_direct.c @@ -42,6 +42,8 @@ #include "nrf_802154_notification.h" +#if NRF_802154_NOTIFICATION_IMPL == NRF_802154_NOTIFICATION_IMPL_DIRECT + #include #include #include @@ -161,3 +163,5 @@ void nrf_802154_notify_cca_failed(nrf_802154_cca_error_t error) nrf_802154_log_function_exit(NRF_802154_LOG_VERBOSITY_LOW); } + +#endif /* NRF_802154_NOTIFICATION_IMPL == NRF_802154_NOTIFICATION_IMPL_DIRECT */ diff --git a/nrf_802154/driver/src/nrf_802154_notification_swi.c b/nrf_802154/driver/src/nrf_802154_notification_swi.c index 0ce70b0f00..bbe7309049 100644 --- a/nrf_802154/driver/src/nrf_802154_notification_swi.c +++ b/nrf_802154/driver/src/nrf_802154_notification_swi.c @@ -42,6 +42,8 @@ #include "nrf_802154_notification.h" +#if NRF_802154_NOTIFICATION_IMPL == NRF_802154_NOTIFICATION_IMPL_SWI + #include "nrf_802154_assert.h" #include #include @@ -54,6 +56,7 @@ #include "nrf_802154_queue.h" #include "nrf_802154_swi.h" #include "nrf_802154_tx_work_buffer.h" +#include "nrf_802154_peripherals.h" #include "nrf_802154_utils.h" #include "hal/nrf_egu.h" #include "rsch/nrf_802154_rsch.h" @@ -111,9 +114,12 @@ */ #define NTF_QUEUE_SIZE (NTF_PRIMARY_POOL_SIZE + NTF_SECONDARY_POOL_SIZE + 1) -#define NTF_INT NRF_EGU_INT_TRIGGERED0 ///< Label of notification interrupt. -#define NTF_TASK NRF_EGU_TASK_TRIGGER0 ///< Label of notification task. -#define NTF_EVENT NRF_EGU_EVENT_TRIGGERED0 ///< Label of notification event. +#define NTF_INT NRFX_CONCAT_2(NRF_EGU_INT_TRIGGERED, \ + NRF_802154_EGU_NOTIFICATION_CHANNEL_NO) +#define NTF_TASK NRFX_CONCAT_2(NRF_EGU_TASK_TRIGGER, \ + NRF_802154_EGU_NOTIFICATION_CHANNEL_NO) +#define NTF_EVENT NRFX_CONCAT_2(NRF_EGU_EVENT_TRIGGERED, \ + NRF_802154_EGU_NOTIFICATION_CHANNEL_NO) /// Types of notifications in notification queue. typedef enum @@ -800,3 +806,5 @@ void nrf_802154_notification_swi_module_reset(void) } #endif // defined(TEST) + +#endif /* NRF_802154_NOTIFICATION_IMPL == NRF_802154_NOTIFICATION_IMPL_SWI */ diff --git a/nrf_802154/driver/src/nrf_802154_peripherals.h b/nrf_802154/driver/src/nrf_802154_peripherals.h index 1e06fd1451..455c982805 100644 --- a/nrf_802154/driver/src/nrf_802154_peripherals.h +++ b/nrf_802154/driver/src/nrf_802154_peripherals.h @@ -171,6 +171,113 @@ extern "C" { #define NRF_802154_GPIOTE_CHANNELS_USED_MASK NRF_802154_DEBUG_GPIOTE_CHANNELS_USED_MASK #endif // NRF_802154_GPIOTE_CHANNELS_USED_MASK +/** + * @def NRF_802154_EGU_NOTIFICATION_USED_CHANNELS_MASK + * + * Mask of EGU channels used by the "notification" module. + * See @ref NRF_802154_EGU_USED_CHANNELS_MASK. + */ + +#if NRF_802154_NOTIFICATION_IMPL == NRF_802154_NOTIFICATION_IMPL_SWI +/** + * @def NRF_802154_EGU_NOTIFICATION_SWI_CHANNEL_NO + * + * The channel number of the @ref NRF_802154_EGU_INSTANCE used by the + * "swi" implementation of the "notification" module. + */ +#ifndef NRF_802154_EGU_NOTIFICATION_CHANNEL_NO +#define NRF_802154_EGU_NOTIFICATION_CHANNEL_NO 0 +#endif // NRF_802154_EGU_NOTIFICATION_SWI_CHANNEL_NO + +#define NRF_802154_EGU_NOTIFICATION_USED_CHANNELS_MASK \ + (1U << NRF_802154_EGU_NOTIFICATION_CHANNEL_NO) +#else +#define NRF_802154_EGU_NOTIFICATION_USED_CHANNELS_MASK 0U +#endif + +/** + * @def NRF_802154_EGU_REQUEST_USED_CHANNELS_MASK + * + * Mask of EGU channels used by the "request" module. + * See @ref NRF_802154_EGU_USED_CHANNELS_MASK. + */ + +#if NRF_802154_REQUEST_IMPL == NRF_802154_REQUEST_IMPL_SWI +/** + * @def NRF_802154_EGU_REQUEST_CHANNEL_NO + * + * The channel number of the @ref NRF_802154_EGU_INSTANCE used by the + * "swi" implementation of the "request" module. + */ +#ifndef NRF_802154_EGU_REQUEST_CHANNEL_NO +#define NRF_802154_EGU_REQUEST_CHANNEL_NO 2 +#endif // NRF_802154_EGU_REQUEST_CHANNEL_NO +#define NRF_802154_EGU_REQUEST_USED_CHANNELS_MASK (1U << NRF_802154_EGU_REQUEST_CHANNEL_NO) +#else +#define NRF_802154_EGU_REQUEST_USED_CHANNELS_MASK 0U +#endif + +/** + * @def NRF_802154_EGU_SYNC_CHANNEL_NO + * + * The channel number of the @ref NRF_802154_EGU_INSTANCE used for generation + * of an interrupt by the RADIO.EVENTS_SYNC event. + * + */ +#define NRF_802154_EGU_SYNC_CHANNEL_NO 3 + +/** + * @def NRF_802154_EGU_SYNC_USED_CHANNELS_MASK + * + * Mask of EGU channels used by the interrupt generation from the RADIO.EVENTS_SYNC event. + * See @ref NRF_802154_EGU_USED_CHANNELS_MASK. + */ +#define NRF_802154_EGU_SYNC_USED_CHANNELS_MASK (1U << NRF_802154_EGU_SYNC_CHANNEL_NO) + +/** + * @def NRF_802154_EGU_RAMP_UP_CHANNEL_NO + * + * The channel number of the @ref NRF_802154_EGU_INSTANCE used for triggering the ramp-up of the RADIO. + */ +#define NRF_802154_EGU_RAMP_UP_CHANNEL_NO 15 + +/** + * @def NRF_802154_EGU_RAMP_UP_USED_CHANNELS_MASK + * + * Mask of EGU channels used for triggering the ramp-up of the RADIO. + * See @ref NRF_802154_EGU_USED_CHANNELS_MASK. + */ +#define NRF_802154_EGU_RAMP_UP_USED_CHANNELS_MASK (1U << NRF_802154_EGU_RAMP_UP_CHANNEL_NO) + +/** + * @def NRF_802154_EGU_RAMP_UP_EVENT + * + * The EGU event used by the driver to trigger radio ramp-up. + */ +#define NRF_802154_EGU_RAMP_UP_EVENT NRFX_CONCAT_2(NRF_EGU_EVENT_TRIGGERED, \ + NRF_802154_EGU_RAMP_UP_CHANNEL_NO) + +/** + * @def NRF_802154_EGU_RAMP_UP_TASK + * + * The EGU task used by the driver to trigger radio ramp-up. + */ +#define NRF_802154_EGU_RAMP_UP_TASK NRFX_CONCAT_2(NRF_EGU_TASK_TRIGGER, \ + NRF_802154_EGU_RAMP_UP_CHANNEL_NO) + +/** + * @def NRF_802154_EGU_CHANNELS_MASK + * + * The mask of fixed channels of the @ref NRF_802154_EGU_INSTANCE used by the + * nRF 802.15.4 Radio Driver. + */ +#define NRF_802154_EGU_USED_CHANNELS_MASK \ + (NRF_802154_EGU_NOTIFICATION_USED_CHANNELS_MASK | \ + NRF_802154_EGU_REQUEST_USED_CHANNELS_MASK | \ + NRF_802154_EGU_SYNC_USED_CHANNELS_MASK | \ + NRF_802154_EGU_RAMP_UP_USED_CHANNELS_MASK | \ + NRF_802154_SL_EGU_USED_CHANNELS_MASK) + #ifdef __cplusplus } #endif diff --git a/nrf_802154/driver/src/nrf_802154_peripherals_nrf52.h b/nrf_802154/driver/src/nrf_802154_peripherals_nrf52.h index f52525201e..3295722ed1 100644 --- a/nrf_802154/driver/src/nrf_802154_peripherals_nrf52.h +++ b/nrf_802154/driver/src/nrf_802154_peripherals_nrf52.h @@ -44,6 +44,7 @@ #include "nrf_802154_config.h" #include "nrf_802154_debug.h" #include "hal/nrf_ppi.h" +#include "nrf_802154_sl_periphs.h" #ifdef __cplusplus extern "C" { @@ -58,7 +59,7 @@ extern "C" { */ #ifndef NRF_802154_EGU_INSTANCE_NO -#define NRF_802154_EGU_INSTANCE_NO 3 +#define NRF_802154_EGU_INSTANCE_NO 0 #endif // NRF_802154_EGU_INSTANCE_NO @@ -221,49 +222,6 @@ extern "C" { #define NRF_802154_DISABLE_BCC_MATCHING_PPI_CHANNELS_USED_MASK \ (1 << NRF_802154_PPI_RADIO_SYNC_TO_EGU_SYNC) -#ifdef NRF_802154_FRAME_TIMESTAMP_ENABLED - -/** - * @def NRF_802154_PPI_RTC_COMPARE_TO_TIMER_CAPTURE - * - * The PPI channel that connects LP timer's COMPARE event to HP timer's TIMER_CAPTURE task. - * - * @note This option is used only when the timestamping feature is enabled - * (see @ref NRF_802154_FRAME_TIMESTAMP_ENABLED). - * - */ -#ifndef NRF_802154_PPI_RTC_COMPARE_TO_TIMER_CAPTURE -#define NRF_802154_PPI_RTC_COMPARE_TO_TIMER_CAPTURE NRF_PPI_CHANNEL13 -#endif - -/** - * @def NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE - * - * The PPI channel that connects provided event to HP timer's TIMER_CAPTURE task. - * - * @note This option is used only when the timestamping feature is enabled - * (see @ref NRF_802154_FRAME_TIMESTAMP_ENABLED). - * - */ -#ifndef NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE -#define NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE NRF_PPI_CHANNEL14 -#endif - -/** - * @def NRF_802154_TIMESTAMP_PPI_CHANNELS_USED_MASK - * - * Helper bit mask of PPI channels used by the 802.15.4 driver for timestamping. - */ -#define NRF_802154_TIMESTAMP_PPI_CHANNELS_USED_MASK \ - ((1 << NRF_802154_PPI_RTC_COMPARE_TO_TIMER_CAPTURE) | \ - (1 << NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE)) - -#else // NRF_802154_FRAME_TIMESTAMP_ENABLED - -#define NRF_802154_TIMESTAMP_PPI_CHANNELS_USED_MASK 0 - -#endif // NRF_802154_FRAME_TIMESTAMP_ENABLED - /** * @def NRF_802154_PPI_CORE_GROUP * @@ -310,7 +268,7 @@ extern "C" { (1 << NRF_802154_PPI_TIMER_COMPARE_TO_RADIO_TXEN) | \ (1 << NRF_802154_PPI_RADIO_CCABUSY_TO_RADIO_CCASTART) | \ NRF_802154_DISABLE_BCC_MATCHING_PPI_CHANNELS_USED_MASK | \ - NRF_802154_TIMESTAMP_PPI_CHANNELS_USED_MASK | \ + NRF_802154_SL_PPI_CHANNELS_USED_MASK | \ NRF_802154_DEBUG_PPI_CHANNELS_USED_MASK) #endif // NRF_802154_PPI_CHANNELS_USED_MASK diff --git a/nrf_802154/driver/src/nrf_802154_peripherals_nrf53.h b/nrf_802154/driver/src/nrf_802154_peripherals_nrf53.h index e21107f110..32fc395987 100644 --- a/nrf_802154/driver/src/nrf_802154_peripherals_nrf53.h +++ b/nrf_802154/driver/src/nrf_802154_peripherals_nrf53.h @@ -82,20 +82,6 @@ extern "C" { #define NRF_802154_EGU_IRQ_HANDLER \ NRFX_CONCAT_3(EGU, NRF_802154_EGU_INSTANCE_NO, _IRQHandler) -/** - * @def NRF_802154_EGU_RAMP_UP_EVENT - * - * The EGU event used by the driver to trigger radio ramp-up. - */ -#define NRF_802154_EGU_RAMP_UP_EVENT NRF_EGU_EVENT_TRIGGERED15 - -/** - * @def NRF_802154_EGU_RAMP_UP_TASK - * - * The EGU task used by the driver to trigger radio ramp-up. - */ -#define NRF_802154_EGU_RAMP_UP_TASK NRF_EGU_TASK_TRIGGER15 - /** * @def NRF_802154_EGU_USED_MASK * @@ -254,19 +240,6 @@ extern "C" { #define NRF_802154_DPPI_RADIO_HW_TRIGGER 15U #endif -/** - * @def NRF_802154_DPPI_TIMESTAMPS_USED_MASK - * - * Helper bit mask of DPPI channels used by the 802.15.4 driver for timestamping. - */ -#ifdef NRF_802154_FRAME_TIMESTAMP_ENABLED -#define NRF_802154_DPPI_TIMESTAMPS_USED_MASK \ - ((1UL << NRF_802154_PPI_RTC_COMPARE_TO_TIMER_CAPTURE) | \ - (1UL << NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE)) -#else // NRF_802154_FRAME_TIMESTAMP_ENABLED -#define NRF_802154_DPPI_TIMESTAMPS_USED_MASK 0U -#endif // NRF_802154_FRAME_TIMESTAMP_ENABLED - /** * @def NRF_802154_DPPI_CHANNELS_USED_MASK * @@ -286,7 +259,7 @@ extern "C" { (1UL << NRF_802154_DPPI_RADIO_CCABUSY) | \ (1UL << NRF_802154_DPPI_RADIO_HW_TRIGGER) | \ NRF_802154_DPPI_RADIO_TEST_MODE_USED_MASK | \ - NRF_802154_DPPI_TIMESTAMPS_USED_MASK) + NRF_802154_SL_PPI_CHANNELS_USED_MASK) #endif // NRF_802154_DPPI_CHANNELS_USED_MASK /** diff --git a/nrf_802154/driver/src/nrf_802154_peripherals_nrf54h.h b/nrf_802154/driver/src/nrf_802154_peripherals_nrf54h.h index 490cdfafb1..c410d0fae3 100644 --- a/nrf_802154/driver/src/nrf_802154_peripherals_nrf54h.h +++ b/nrf_802154/driver/src/nrf_802154_peripherals_nrf54h.h @@ -81,20 +81,6 @@ extern "C" { #define NRF_802154_EGU_IRQ_HANDLER \ NRFX_CONCAT_3(EGU, NRF_802154_EGU_INSTANCE_NO, _IRQHandler) -/** - * @def NRF_802154_EGU_RAMP_UP_EVENT - * - * The EGU event used by the driver to trigger radio ramp-up. - */ -#define NRF_802154_EGU_RAMP_UP_EVENT NRF_EGU_EVENT_TRIGGERED15 - -/** - * @def NRF_802154_EGU_RAMP_UP_TASK - * - * The EGU task used by the driver to trigger radio ramp-up. - */ -#define NRF_802154_EGU_RAMP_UP_TASK NRF_EGU_TASK_TRIGGER15 - /** * @def NRF_802154_EGU_USED_MASK * @@ -274,18 +260,6 @@ extern "C" { #define NRF_802154_DPPI_RADIO_HW_TRIGGER 15U #endif -/** - * @def NRF_802154_DPPI_TIMESTAMPS_USED_MASK - * - * Helper bit mask of DPPI channels used by the 802.15.4 driver for timestamping. - */ -#ifdef NRF_802154_FRAME_TIMESTAMP_ENABLED -#define NRF_802154_DPPI_TIMESTAMPS_USED_MASK \ - (1UL << NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE) -#else // NRF_802154_FRAME_TIMESTAMP_ENABLED -#define NRF_802154_DPPI_TIMESTAMPS_USED_MASK 0U -#endif // NRF_802154_FRAME_TIMESTAMP_ENABLED - /** * @def NRF_802154_DPPI_CHANNELS_USED_MASK * @@ -304,7 +278,7 @@ extern "C" { (1UL << NRF_802154_DPPI_RADIO_CCAIDLE) | \ (1UL << NRF_802154_DPPI_RADIO_CCABUSY) | \ (1UL << NRF_802154_DPPI_RADIO_HW_TRIGGER) | \ - NRF_802154_DPPI_TIMESTAMPS_USED_MASK) + NRF_802154_SL_PPI_CHANNELS_USED_MASK) #endif // NRF_802154_DPPI_CHANNELS_USED_MASK /** diff --git a/nrf_802154/driver/src/nrf_802154_peripherals_nrf54l.h b/nrf_802154/driver/src/nrf_802154_peripherals_nrf54l.h index c95fc59f89..c25b631b4c 100644 --- a/nrf_802154/driver/src/nrf_802154_peripherals_nrf54l.h +++ b/nrf_802154/driver/src/nrf_802154_peripherals_nrf54l.h @@ -81,20 +81,6 @@ extern "C" { #define NRF_802154_EGU_IRQ_HANDLER \ NRFX_CONCAT_3(EGU, NRF_802154_EGU_INSTANCE_NO, _IRQHandler) -/** - * @def NRF_802154_EGU_RAMP_UP_EVENT - * - * The EGU event used by the driver to trigger radio ramp-up. - */ -#define NRF_802154_EGU_RAMP_UP_EVENT NRF_EGU_EVENT_TRIGGERED15 - -/** - * @def NRF_802154_EGU_RAMP_UP_TASK - * - * The EGU task used by the driver to trigger radio ramp-up. - */ -#define NRF_802154_EGU_RAMP_UP_TASK NRF_EGU_TASK_TRIGGER15 - /** * @def NRF_802154_EGU_USED_MASK * @@ -274,18 +260,6 @@ extern "C" { #define NRF_802154_DPPI_RADIO_HW_TRIGGER 10U #endif -/** - * @def NRF_802154_DPPI_TIMESTAMPS_USED_MASK - * - * Helper bit mask of DPPI channels used by the 802.15.4 driver for timestamping. - */ -#ifdef NRF_802154_FRAME_TIMESTAMP_ENABLED -#define NRF_802154_DPPI_TIMESTAMPS_USED_MASK \ - (1UL << NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE) -#else // NRF_802154_FRAME_TIMESTAMP_ENABLED -#define NRF_802154_DPPI_TIMESTAMPS_USED_MASK 0U -#endif // NRF_802154_FRAME_TIMESTAMP_ENABLED - /** * @def NRF_802154_DPPI_CHANNELS_USED_MASK * @@ -304,7 +278,7 @@ extern "C" { (1UL << NRF_802154_DPPI_RADIO_CCAIDLE) | \ (1UL << NRF_802154_DPPI_RADIO_CCABUSY) | \ (1UL << NRF_802154_DPPI_RADIO_HW_TRIGGER) | \ - NRF_802154_DPPI_TIMESTAMPS_USED_MASK) + NRF_802154_SL_PPI_CHANNELS_USED_MASK) #endif // NRF_802154_DPPI_CHANNELS_USED_MASK /** diff --git a/nrf_802154/driver/src/nrf_802154_request_direct.c b/nrf_802154/driver/src/nrf_802154_request_direct.c index 781745430d..30b259c60d 100644 --- a/nrf_802154/driver/src/nrf_802154_request_direct.c +++ b/nrf_802154/driver/src/nrf_802154_request_direct.c @@ -40,6 +40,8 @@ #include "nrf_802154_request.h" +#if NRF_802154_REQUEST_IMPL == NRF_802154_REQUEST_IMPL_DIRECT + #include #include @@ -198,3 +200,5 @@ bool nrf_802154_request_csma_ca_start(uint8_t { REQUEST_FUNCTION_PARMS(nrf_802154_csma_ca_start, p_data, p_metadata); } + +#endif /* NRF_802154_REQUEST_IMPL == NRF_802154_REQUEST_IMPL_DIRECT */ diff --git a/nrf_802154/driver/src/nrf_802154_request_swi.c b/nrf_802154/driver/src/nrf_802154_request_swi.c index fe1b43a6b4..8f74dd65b1 100644 --- a/nrf_802154/driver/src/nrf_802154_request_swi.c +++ b/nrf_802154/driver/src/nrf_802154_request_swi.c @@ -40,6 +40,8 @@ #include "nrf_802154_request.h" +#if NRF_802154_REQUEST_IMPL == NRF_802154_REQUEST_IMPL_SWI + #include "nrf_802154_assert.h" #include #include @@ -47,6 +49,7 @@ #include "nrf_802154_config.h" #include "nrf_802154_core.h" #include "nrf_802154_critical_section.h" +#include "nrf_802154_peripherals.h" #include "nrf_802154_queue.h" #include "nrf_802154_rx_buffer.h" #include "nrf_802154_swi.h" @@ -65,9 +68,9 @@ */ #define REQ_QUEUE_SIZE 2 -#define REQ_INT NRF_EGU_INT_TRIGGERED2 ///< Label of request interrupt. -#define REQ_TASK NRF_EGU_TASK_TRIGGER2 ///< Label of request task. -#define REQ_EVENT NRF_EGU_EVENT_TRIGGERED2 ///< Label of request event. +#define REQ_INT NRFX_CONCAT_2(NRF_EGU_INT_TRIGGERED, NRF_802154_EGU_REQUEST_CHANNEL_NO) +#define REQ_TASK NRFX_CONCAT_2(NRF_EGU_TASK_TRIGGER, NRF_802154_EGU_REQUEST_CHANNEL_NO) +#define REQ_EVENT NRFX_CONCAT_2(NRF_EGU_EVENT_TRIGGERED, NRF_802154_EGU_REQUEST_CHANNEL_NO) /// Type of requests in request queue. typedef enum @@ -963,3 +966,5 @@ void nrf_802154_request_swi_irq_handler(void) irq_handler_req_event(); } } + +#endif /* NRF_802154_REQUEST_IMPL == NRF_802154_REQUEST_IMPL_SWI */ diff --git a/nrf_802154/driver/src/nrf_802154_trx.c b/nrf_802154/driver/src/nrf_802154_trx.c index 43a585e32b..1a71b8516b 100644 --- a/nrf_802154/driver/src/nrf_802154_trx.c +++ b/nrf_802154/driver/src/nrf_802154_trx.c @@ -68,9 +68,9 @@ #include "nrf_802154_trx_internal.h" #endif -#define EGU_SYNC_EVENT NRF_EGU_EVENT_TRIGGERED3 -#define EGU_SYNC_TASK NRF_EGU_TASK_TRIGGER3 -#define EGU_SYNC_INTMASK NRF_EGU_INT_TRIGGERED3 +#define EGU_SYNC_EVENT NRFX_CONCAT_2(NRF_EGU_EVENT_TRIGGERED, NRF_802154_EGU_SYNC_CHANNEL_NO) +#define EGU_SYNC_TASK NRFX_CONCAT_2(NRF_EGU_TASK_TRIGGER, NRF_802154_EGU_SYNC_CHANNEL_NO) +#define EGU_SYNC_INTMASK NRFX_CONCAT_2(NRF_EGU_INT_TRIGGERED, NRF_802154_EGU_SYNC_CHANNEL_NO) #if defined(DPPI_PRESENT) #define RADIO_BASE NRF_RADIO_NS_BASE diff --git a/nrf_802154/driver/src/nrf_802154_trx_ppi.c b/nrf_802154/driver/src/nrf_802154_trx_ppi.c index d2ca559cdc..ef5e2d13e0 100644 --- a/nrf_802154/driver/src/nrf_802154_trx_ppi.c +++ b/nrf_802154/driver/src/nrf_802154_trx_ppi.c @@ -52,8 +52,8 @@ #include "hal/nrf_radio.h" #include "hal/nrf_timer.h" -#define EGU_EVENT NRF_EGU_EVENT_TRIGGERED15 -#define EGU_TASK NRF_EGU_TASK_TRIGGER15 +#define EGU_EVENT NRF_802154_EGU_RAMP_UP_EVENT +#define EGU_TASK NRF_802154_EGU_RAMP_UP_TASK #define PPI_CHGRP_RAMP_UP NRF_802154_PPI_CORE_GROUP ///< PPI group used to disable self-disabling PPIs #define PPI_CHGRP_RAMP_UP_DIS_TASK NRF_PPI_TASK_CHG0_DIS ///< PPI task used to disable self-disabling PPIs diff --git a/nrf_802154/sl/sl/CMakeLists.txt b/nrf_802154/sl/sl/CMakeLists.txt index bdaf7ca004..943fa3d40f 100644 --- a/nrf_802154/sl/sl/CMakeLists.txt +++ b/nrf_802154/sl/sl/CMakeLists.txt @@ -22,4 +22,6 @@ target_link_libraries(nrf-802154-sl ${NRF_802154_SL_LIB_PATH}/libnrf-802154-sl.a ) +target_include_directories(nrf-802154-driver-interface INTERFACE include) + endif () diff --git a/nrf_802154/sl/include/nrf_802154_sl_periphs.h b/nrf_802154/sl/sl/include/nrf_802154_sl_periphs.h similarity index 70% rename from nrf_802154/sl/include/nrf_802154_sl_periphs.h rename to nrf_802154/sl/sl/include/nrf_802154_sl_periphs.h index 6fcbe9b35d..956c70b45b 100644 --- a/nrf_802154/sl/include/nrf_802154_sl_periphs.h +++ b/nrf_802154/sl/sl/include/nrf_802154_sl_periphs.h @@ -1,39 +1,11 @@ /* - * Copyright (c) 2020, Nordic Semiconductor ASA - * All rights reserved. - * - * SPDX-License-Identifier: BSD-3-Clause - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * 3. Neither the name of Nordic Semiconductor ASA nor the names of its - * contributors may be used to endorse or promote products derived from this - * software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. + * Copyright (c) 2020 Nordic Semiconductor ASA * + * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause */ /** - * @file Module that defines the 802.15.4 driver peripheral usage. + * @file Module that defines the peripherals used by the nRF 802.15.4 SL. * */ @@ -63,21 +35,33 @@ #endif #endif +#if defined(NRF53_SERIES) /** * @def NRF_802154_EGU_INSTANCE * - * The EGU instance used by the driver to synchronize PPIs and for requests and notifications if - * SWI is in use. + * The EGU instance used by the nRF 802.15.4 SL. * - * @note This option is used by the core module regardless of the driver configuration. + * @note This option is used on nRF53 series SoCs only. * */ -#define NRF_802154_EGU_INSTANCE NRFX_CONCAT_2(NRF_EGU, NRF_802154_EGU_INSTANCE_NO) +#define NRF_802154_EGU_INSTANCE NRFX_CONCAT_2(NRF_EGU, \ + NRF_802154_EGU_INSTANCE_NO) /** * @def NRF_802154_EGU_TIMESTAMP_CHANNEL + * + * The EGU channel number of the @ref NRF_802154_EGU_INSTANCE instance used by the time stamping feature. + * + * @note This option is used on nRF53 series SoCs only. + * */ -#define NRF_802154_EGU_TIMESTAMP_CHANNEL 4 +#define NRF_802154_EGU_TIMESTAMP_CHANNEL 4 + +#define NRF_802154_SL_EGU_TIMESTAMP_USED_CHANNELS_MASK (1U << NRF_802154_EGU_TIMESTAMP_CHANNEL) + +#else +#define NRF_802154_SL_EGU_TIMESTAMP_USED_CHANNELS_MASK 0U +#endif /** * @def NRF_802154_RTC_INSTANCE_NO @@ -178,11 +162,11 @@ #endif /** - * @def NRF_802154_TIMESTAMP_PPI_CHANNELS_USED_MASK + * @def NRF_802154_SL_PPI_CHANNELS_USED_MASK * - * Helper bit mask of PPI channels used by the 802.15.4 driver for timestamping. + * Mask of fixed (D)PPI channels used by the nRF 802.15.4 SL. */ -#define NRF_802154_TIMESTAMP_PPI_CHANNELS_USED_MASK \ +#define NRF_802154_SL_PPI_CHANNELS_USED_MASK \ ((1 << NRF_802154_PPI_RTC_COMPARE_TO_TIMER_CAPTURE) | \ (1 << NRF_802154_PPI_TIMESTAMP_EVENT_TO_TIMER_CAPTURE)) @@ -203,6 +187,22 @@ #endif #endif +/** + * @def NRF_802154_SL_PPI_GROUPS_USED_MASK + * + * Mask of fixed (D)PPI groups used by the nRF 802.15.4 SL. + */ +#define NRF_802154_SL_PPI_GROUPS_USED_MASK \ + (1U << NRF_802154_PPI_TIMESTAMP_GROUP) + +/** + * @def NRF_802154_SL_EGU_USED_CHANNELS_MASK + * + * Mask of fixed EGU channels used by the nRF 802.15.4 SL. + */ +#define NRF_802154_SL_EGU_USED_CHANNELS_MASK \ + NRF_802154_SL_EGU_TIMESTAMP_USED_CHANNELS_MASK + #if defined(NRF54L_SERIES) /** * @def NRF_802154_SL_DPPIC_INSTANCE_NO diff --git a/nrf_802154/sl/sl/lib/nrf52833/hard-float/libnrf-802154-sl.a b/nrf_802154/sl/sl/lib/nrf52833/hard-float/libnrf-802154-sl.a index 85e5625ac0940f1df5ac31c2ba3de746118bdb9f..6b4fdf4b7a8ba062f33093279b1b64c36618e32e 100644 GIT binary patch delta 787 zcmZ3qjCs~F<_X8^ix?REfjEQ@fg=tvFd*Z&Dh38>;XWw_24tKB;!NK}7_VBzz_4x~ zZhX{_fdM<7ywO%{@&iVW$z7~cn;$UF6=AfP+#u#RIbl}NW;t;YIY!0F#-_?lk!+K7 zoYgkhnOTKTc&I8djZ*!h!0t@4V$>)9j8DC76_w#4`Fgf2Z7^wBIpE9HQ zWNl}4#+=Fg{_3oEm>3wCCf5Tk{V_S-e-*+>n^y&FVFGH14_0PMgxIwz_%o8cUFa2% zyl@2EEpZVrx0Fm)j%)y{T?caaKGUL)`(T|i(_XM^Hpi{I&5UIAtxZSx zfV$@&1X|4u4(?Y6-y_La9o7Iv$KoT(Ora11-W~al|`s7`g FG5}Nn{Q3X@ delta 781 zcmbQWjCs*A<_X8^%NQ8^fjC46fg_GFFd*Z&CI$v-;XWk>24tKB;!NK~7_ZvIz_1SJ zFkJX(7y|=#Jb9z7*yIO{9Fx0Pr8YlcoGZd?s%toTLFBs4dg3f{jLMUZO_iCV*(Nsx zt8K0`z0L@go;NwmQ(!Th1vgLyyR$NrJtIiP8y*#wU|c`}#A!nJn$+&-i6>wqG#N zjQxJfOqO697z-wI`>V4)U}9iknq2R!%=l+=wErr&oy!8YFagy^2P-osZ>|rPg4r=| zvsLI7kPLqW%r#LFFxON}mXBIb5+L&;!{i0iMK;&O6|%z})0cKb4QNVwuQHP}J2(J0_142( z1PZ{-kNRcUflB^QQ)YY)vS_o{^!-e516IxQ;RnioU#ZNb&IC5VX;nDffX!BGE`S1< zdz~`l{>}R9m{{N%FKs%)2b7t95NICK?|msr@=* z{|w*TjQw8(D;XO&_~017$r2dhKLY!VM6{Wok#l_KV_Hr!yp;y;mm)STis!*;E5@Zg zRWc>v>^go3p>)CDLFN_@Z$@B?;2l^b_P~)L_%M9Lif`5lv;*WA9`z_9&#b&F{cSBeW z65%0sz;89Qzt&;WT7q-FG`THzEnn8Y-RYD!ZE?~31eWpzAA~3nd=!4-G!}@rkzXh{ zgO?a9Lxt;Ag+F)b+DjZxYYO%3up3GNF&RF4v6h>M@9mpN+9NM#tW>E&#_m{b?T?jF zJG;~s{vuu5!{`bFw~7pNDrc+!NtHT(Q*LuKMdSt5A^C1ej+qXeF4egWQ>Ev%tjG)+ z@TJI&6p-7UgBrhzgmZRw~FI5AGHrOZ)l^!D zS20VRgV7>*F+9WuOc0xp&?=~_8sZ5I5qn|zNYyGQo<)E-hehJ=aJ11Z;UlKX`L@?J zo z;%(Ffi#1zrcu@;*EqH9XrHt-snb<$97WCSux^^xsnqHzYU{HU8I1A6fy&bwCZwHSLZ7=(y%$Q%*;RWuT-F-1Itq*3Kl?dTmUuz!p!H-#-fGiF3hTNrzK zP1uJGSQ;y#ol?)pjr#Lx%j(o)-THN^Qn!Cx*LFwLHRH^Xc zAnU)$TK(8}OjJjcz`&G}wm9V>X|>bpqcuW2g2ykb5x#Nx0@c_&qiYqBSAGPZ8THEj NGlurL1$FlLzX6L<84dsd delta 1634 zcma)+e@NVA9LJyMdwQBVXKSfo;P4y!`uqIRoerzp(stTn&*2rCb53Z?Xu*V}8%(^> zR+^=^dYcX%DXh)&wyE?TC^=H=#{FTSGr^I=6A~6Rn9Px}1@`%V&(o+zJNUeK;J(lE zet&*E&%g!4!Ue+_xE2^QKO%|-7_*iAJ47{OS~z~+jEakl{XMEH8GD>?JyG!rRE$K-;6^dK`;qg#QTSD9LCGk5d=Ez8gpDFlRtYnHOJWn&0z!-ZGYhy`xCo6@I16hJk<7Z+5@=Stf5WvIlf-pdb*UcD)?2{ zb_?!9Cvg_HiT9DeNANH-5x1*zdlEH~m6v77%1K0lwMa28hB4;j=rt$v=in|Xk@9o# znKzXT8j7>lWxCL4k5zvv9?|w=uPhy4*fFCZuval=aK?5segC_v$#ybitpqQ*Yt+ip z;&9s2vtO2WX_`Cn>;CTbOd2pKEFlH8(Ox6*TL_dn==(f}EWO3_LbSu>P>l7YawMp- zgega<^nA8njdm2hzTr}hdSh0i-GTBAhv^lH@zc${_i&=({<>rdvg~#>s^$;)PF7Ya? z9}9jBZsHOG#6Mwbq2|Ix%uuIV4rm2PZJpe@Ds-o-=WQPZHLyA(GFR<9qdU0B03csa1-$+$~%Lnrm2&i z4?^wlQmea;NAqaRT@?HUD1BP`PU2zs`+CS%tw&33nCL@9zgEEVeof|5zbq+|-ueox z_ABHi$*a&P+q@-GLAE}d#TfN|9_kCKySA$jE?v`RbNGrZjp-h@EYlSpqKKr3g3Fv} z?4>y<49?Iz90MCObVv0M#2G@zsqcTi{3KoB+HVDq#W0bw9TVJ+a^lt@irMdG@Imw-MT6@ym#4`vGJuuyvB&~-x dWa*H80qGChj6yHZu^A;{gamz5me4P>{0l)oBE|p! diff --git a/nrf_802154/sl/sl/lib/nrf52833/softfp-float/libnrf-802154-sl.a b/nrf_802154/sl/sl/lib/nrf52833/softfp-float/libnrf-802154-sl.a index a88b6b10b280e3abb9e7740d3b10e6f523672e26..19191d3c2175ebd922ddad3d0063610018417ed7 100644 GIT binary patch delta 1670 zcma)+e@v8h9LK+(=irWYC=A(o32ns#oeCm90&e~&*+UZI__CcQ1`;l(P5h%38*H*2 zm8M}K>usC^mu#3IcRQC4f3&P5Jw}^O(6QNue>kJqgpw7TEt>ZEKBt3KE^qt1?sm`T z`~AE>zn;$1wmYBO+Tp(~M8RXsI44ButN%8+TL@*o`}0;67Gj~*^7AJ#|C2biX+r$d z0v$s9pY^v25$=4v4W)^tg7F`QFV?$oi{j84yUe^rFE7TsLn~;&l!@7P@}kAH*}Up< zyQl$^S(2Jjw5pLl!r4`lPT&DE1eq-v<{9O<++U+LN9X+ z_n5ON%~hTO<~mF=ccCax(g7S|hH!&<6P|oY6KG^ko5T6_M9(3=K-ae0F&Oc{U*NHy zSS-Yi7_=B^6oZk1GOef(zZ%Oa-ZTo6D5@V!PX&JB_VP|b`W$Q;8Q za~9>rk}v6ECYw{mDJq)7(6#l17T@#q7JP=sek(?Z2qE#Jjvk|o^6-nXf_}i#lI;0d z=FcVHtHWnE>a-mfBAK|qG2Na;LTnJ0(tT!mX-ibxXXf6rEwSu;p+eV+tVnoDc51oN zG@3CY3m4pcy0T8=x;T73K2q(|X(#+X4;@1s`{3-5G>B^ED1sfTQx7_H`pN2)8|48{ ztlK6;3;c%8qtg}GWL+L-CLI5B!Ni*VolWr+54~4y$UDp$Tw?CRlD?DNYqL+~Z#$#v zET>Wn<-~qwgo4zpPO;g3@&{uDG^I9NOI#1W+hDK zo3IT^wMfiv^bG#aF#_LlJ8aQ*a8>G9?lP8}X~`Yq20a~>`z-P=zM|!LExk49y|{8g z)VD7!S9-f5I&HP|9>!$ELw_J)$U{p}G*qS)daXrhHiJWX536iu4-dq#%pXUT!2Hoh z78o3r)Py-^JIb%AZgyR}%vbNZu4_B2^<31>3s%We-7GW1lBr$_*<5lX&HW`SjnW?EnA( delta 1651 zcma)+ZAhJE7{~AXdFD~lOr|+gW74zjsLR(gwJ^|i%$GU54;^EYdy$M-tZ?N>$-qPQ zVrRLH{>?LVxWTbaPfld_7gBs-xGVW}LCV$NqO2dzff_m_x@B z8T)5=E;9Ci;qx&zIP&0_tYVuO;XeXzrNm>NN8rtrL^;o2i01hi@ul)%DPl4$dR|5j z#>#tS;-;y`c{2h}3+{p~qluruml=Ye#a-eMDl-M2LN{>^OT-iuW(ocbj%GFSV(8iG zq?0%VFL4e*;vLv?)JYJF5g;CfEm!b%v=N6eOPq&c6MPYk#AWHX9pcnOH;fWwm7zUrR>Nvl7tb|&aKSI~ zLs#QQNsK(_aA-7^+b=pPr_yQgdb7wWc&Jn}Mv049aPGoSHEH}5YOB|kZF}jOMoD+~ ztSc+4QTkNUZ}8NttX0~Lo&twVf4N;(y7n3Tf~tYlechTZ7o$Ea-y!|`nkw zJ{H`8Hlho&#C90%f*NZi_Q6jaLhL81Ry}bHlDG)nEj0Eds@+vQ0baM@*)r&^Ro#mY zL$imQrZ%Iy!)j^X$k^6!)0lEBb?jQ(|L1Vv*rl}w2jw@%+r#*2h?9c%;tX*Bw}=xc z>JsQlk>sQ6D_Zym3GyB*JgDe?9rO#@)6UkVthM4gkkxmnBd_F%jox>NctE=TeebdLxghb3Y%3P%O6#!=!M_D@x#0@g zps(5R)fH>lTsUJ-nD6iwM2?qhIk~3vI<$_b-!D_@PgSxTCJep@n`^dXWMYfu50bq3 z-kX(#$jJ(=AlLkYxn%2P?)sdozI`=<#L4fJEPbYlWVOr){vM`@pCjq2GWF2aX}Z7Q ndqX>*UPWsZb?zV=6R5^kb1do`kg2J4Nw`dsC+I-v7kc~)T#7Mt diff --git a/nrf_802154/sl/sl/lib/nrf52840/hard-float/libnrf-802154-sl.a b/nrf_802154/sl/sl/lib/nrf52840/hard-float/libnrf-802154-sl.a index 85e5625ac0940f1df5ac31c2ba3de746118bdb9f..6b4fdf4b7a8ba062f33093279b1b64c36618e32e 100644 GIT binary patch delta 787 zcmZ3qjCs~F<_X8^ix?REfjEQ@fg=tvFd*Z&Dh38>;XWw_24tKB;!NK}7_VBzz_4x~ zZhX{_fdM<7ywO%{@&iVW$z7~cn;$UF6=AfP+#u#RIbl}NW;t;YIY!0F#-_?lk!+K7 zoYgkhnOTKTc&I8djZ*!h!0t@4V$>)9j8DC76_w#4`Fgf2Z7^wBIpE9HQ zWNl}4#+=Fg{_3oEm>3wCCf5Tk{V_S-e-*+>n^y&FVFGH14_0PMgxIwz_%o8cUFa2% zyl@2EEpZVrx0Fm)j%)y{T?caaKGUL)`(T|i(_XM^Hpi{I&5UIAtxZSx zfV$@&1X|4u4(?Y6-y_La9o7Iv$KoT(Ora11-W~al|`s7`g FG5}Nn{Q3X@ delta 781 zcmbQWjCs*A<_X8^%NQ8^fjC46fg_GFFd*Z&CI$v-;XWk>24tKB;!NK~7_ZvIz_1SJ zFkJX(7y|=#Jb9z7*yIO{9Fx0Pr8YlcoGZd?s%toTLFBs4dg3f{jLMUZO_iCV*(Nsx zt8K0`z0L@go;NwmQ(!Th1vgLyyR$NrJtIiP8y*#wU|c`}#A!nJn$+&-i6>wqG#N zjQxJfOqO697z-wI`>V4)U}9iknq2R!%=l+=wErr&oy!8YFagy^2P-osZ>|rPg4r=| zvsLI7kPLqW%r#LFFxON}mXBIb5+L&;!{i0iMK;&O6|%z})0cKb4QNVwuQHP}J2(J0_142( z1PZ{-kNRcUflB^QQ)YY)vS_o{^!-e516IxQ;RnioU#ZNb&IC5VX;nDffX!BGE`S1< zdz~`l{>}R9m{{N%FKs%)2b7t95NICK?|msr@=* z{|w*TjQw8(D;XO&_~017$r2dhKLY!VM6{Wok#l_KV_Hr!yp;y;mm)STis!*;E5@Zg zRWc>v>^go3p>)CDLFN_@Z$@B?;2l^b_P~)L_%M9Lif`5lv;*WA9`z_9&#b&F{cSBeW z65%0sz;89Qzt&;WT7q-FG`THzEnn8Y-RYD!ZE?~31eWpzAA~3nd=!4-G!}@rkzXh{ zgO?a9Lxt;Ag+F)b+DjZxYYO%3up3GNF&RF4v6h>M@9mpN+9NM#tW>E&#_m{b?T?jF zJG;~s{vuu5!{`bFw~7pNDrc+!NtHT(Q*LuKMdSt5A^C1ej+qXeF4egWQ>Ev%tjG)+ z@TJI&6p-7UgBrhzgmZRw~FI5AGHrOZ)l^!D zS20VRgV7>*F+9WuOc0xp&?=~_8sZ5I5qn|zNYyGQo<)E-hehJ=aJ11Z;UlKX`L@?J zo z;%(Ffi#1zrcu@;*EqH9XrHt-snb<$97WCSux^^xsnqHzYU{HU8I1A6fy&bwCZwHSLZ7=(y%$Q%*;RWuT-F-1Itq*3Kl?dTmUuz!p!H-#-fGiF3hTNrzK zP1uJGSQ;y#ol?)pjr#Lx%j(o)-THN^Qn!Cx*LFwLHRH^Xc zAnU)$TK(8}OjJjcz`&G}wm9V>X|>bpqcuW2g2ykb5x#Nx0@c_&qiYqBSAGPZ8THEj NGlurL1$FlLzX6L<84dsd delta 1634 zcma)+e@NVA9LJyMdwQBVXKSfo;P4y!`uqIRoerzp(stTn&*2rCb53Z?Xu*V}8%(^> zR+^=^dYcX%DXh)&wyE?TC^=H=#{FTSGr^I=6A~6Rn9Px}1@`%V&(o+zJNUeK;J(lE zet&*E&%g!4!Ue+_xE2^QKO%|-7_*iAJ47{OS~z~+jEakl{XMEH8GD>?JyG!rRE$K-;6^dK`;qg#QTSD9LCGk5d=Ez8gpDFlRtYnHOJWn&0z!-ZGYhy`xCo6@I16hJk<7Z+5@=Stf5WvIlf-pdb*UcD)?2{ zb_?!9Cvg_HiT9DeNANH-5x1*zdlEH~m6v77%1K0lwMa28hB4;j=rt$v=in|Xk@9o# znKzXT8j7>lWxCL4k5zvv9?|w=uPhy4*fFCZuval=aK?5segC_v$#ybitpqQ*Yt+ip z;&9s2vtO2WX_`Cn>;CTbOd2pKEFlH8(Ox6*TL_dn==(f}EWO3_LbSu>P>l7YawMp- zgega<^nA8njdm2hzTr}hdSh0i-GTBAhv^lH@zc${_i&=({<>rdvg~#>s^$;)PF7Ya? z9}9jBZsHOG#6Mwbq2|Ix%uuIV4rm2PZJpe@Ds-o-=WQPZHLyA(GFR<9qdU0B03csa1-$+$~%Lnrm2&i z4?^wlQmea;NAqaRT@?HUD1BP`PU2zs`+CS%tw&33nCL@9zgEEVeof|5zbq+|-ueox z_ABHi$*a&P+q@-GLAE}d#TfN|9_kCKySA$jE?v`RbNGrZjp-h@EYlSpqKKr3g3Fv} z?4>y<49?Iz90MCObVv0M#2G@zsqcTi{3KoB+HVDq#W0bw9TVJ+a^lt@irMdG@Imw-MT6@ym#4`vGJuuyvB&~-x dWa*H80qGChj6yHZu^A;{gamz5me4P>{0l)oBE|p! diff --git a/nrf_802154/sl/sl/lib/nrf52840/softfp-float/libnrf-802154-sl.a b/nrf_802154/sl/sl/lib/nrf52840/softfp-float/libnrf-802154-sl.a index a88b6b10b280e3abb9e7740d3b10e6f523672e26..19191d3c2175ebd922ddad3d0063610018417ed7 100644 GIT binary patch delta 1670 zcma)+e@v8h9LK+(=irWYC=A(o32ns#oeCm90&e~&*+UZI__CcQ1`;l(P5h%38*H*2 zm8M}K>usC^mu#3IcRQC4f3&P5Jw}^O(6QNue>kJqgpw7TEt>ZEKBt3KE^qt1?sm`T z`~AE>zn;$1wmYBO+Tp(~M8RXsI44ButN%8+TL@*o`}0;67Gj~*^7AJ#|C2biX+r$d z0v$s9pY^v25$=4v4W)^tg7F`QFV?$oi{j84yUe^rFE7TsLn~;&l!@7P@}kAH*}Up< zyQl$^S(2Jjw5pLl!r4`lPT&DE1eq-v<{9O<++U+LN9X+ z_n5ON%~hTO<~mF=ccCax(g7S|hH!&<6P|oY6KG^ko5T6_M9(3=K-ae0F&Oc{U*NHy zSS-Yi7_=B^6oZk1GOef(zZ%Oa-ZTo6D5@V!PX&JB_VP|b`W$Q;8Q za~9>rk}v6ECYw{mDJq)7(6#l17T@#q7JP=sek(?Z2qE#Jjvk|o^6-nXf_}i#lI;0d z=FcVHtHWnE>a-mfBAK|qG2Na;LTnJ0(tT!mX-ibxXXf6rEwSu;p+eV+tVnoDc51oN zG@3CY3m4pcy0T8=x;T73K2q(|X(#+X4;@1s`{3-5G>B^ED1sfTQx7_H`pN2)8|48{ ztlK6;3;c%8qtg}GWL+L-CLI5B!Ni*VolWr+54~4y$UDp$Tw?CRlD?DNYqL+~Z#$#v zET>Wn<-~qwgo4zpPO;g3@&{uDG^I9NOI#1W+hDK zo3IT^wMfiv^bG#aF#_LlJ8aQ*a8>G9?lP8}X~`Yq20a~>`z-P=zM|!LExk49y|{8g z)VD7!S9-f5I&HP|9>!$ELw_J)$U{p}G*qS)daXrhHiJWX536iu4-dq#%pXUT!2Hoh z78o3r)Py-^JIb%AZgyR}%vbNZu4_B2^<31>3s%We-7GW1lBr$_*<5lX&HW`SjnW?EnA( delta 1651 zcma)+ZAhJE7{~AXdFD~lOr|+gW74zjsLR(gwJ^|i%$GU54;^EYdy$M-tZ?N>$-qPQ zVrRLH{>?LVxWTbaPfld_7gBs-xGVW}LCV$NqO2dzff_m_x@B z8T)5=E;9Ci;qx&zIP&0_tYVuO;XeXzrNm>NN8rtrL^;o2i01hi@ul)%DPl4$dR|5j z#>#tS;-;y`c{2h}3+{p~qluruml=Ye#a-eMDl-M2LN{>^OT-iuW(ocbj%GFSV(8iG zq?0%VFL4e*;vLv?)JYJF5g;CfEm!b%v=N6eOPq&c6MPYk#AWHX9pcnOH;fWwm7zUrR>Nvl7tb|&aKSI~ zLs#QQNsK(_aA-7^+b=pPr_yQgdb7wWc&Jn}Mv049aPGoSHEH}5YOB|kZF}jOMoD+~ ztSc+4QTkNUZ}8NttX0~Lo&twVf4N;(y7n3Tf~tYlechTZ7o$Ea-y!|`nkw zJ{H`8Hlho&#C90%f*NZi_Q6jaLhL81Ry}bHlDG)nEj0Eds@+vQ0baM@*)r&^Ro#mY zL$imQrZ%Iy!)j^X$k^6!)0lEBb?jQ(|L1Vv*rl}w2jw@%+r#*2h?9c%;tX*Bw}=xc z>JsQlk>sQ6D_Zym3GyB*JgDe?9rO#@)6UkVthM4gkkxmnBd_F%jox>NctE=TeebdLxghb3Y%3P%O6#!=!M_D@x#0@g zps(5R)fH>lTsUJ-nD6iwM2?qhIk~3vI<$_b-!D_@PgSxTCJep@n`^dXWMYfu50bq3 z-kX(#$jJ(=AlLkYxn%2P?)sdozI`=<#L4fJEPbYlWVOr){vM`@pCjq2GWF2aX}Z7Q ndqX>*UPWsZb?zV=6R5^kb1do`kg2J4Nw`dsC+I-v7kc~)T#7Mt diff --git a/nrf_802154/sl/sl/lib/nrf5340_cpunet/soft-float/libnrf-802154-sl.a b/nrf_802154/sl/sl/lib/nrf5340_cpunet/soft-float/libnrf-802154-sl.a index f3128b3b7f87b249e50715c3f4c226fb1d3ce29b..7e1905712c1417f6965a153a5a2822397988f880 100644 GIT binary patch delta 1409 zcma)*VQf=n6o$WZYum*EUEF{r>n!fhegnxmIWrx4zZIBH-Q07_hW1t zYr3d`ZZIHyi5O$-n8j)^6uJFDoUX$xkz^zr35g_pQ@Y?!ccYFL-}k%p_@XC-2HDQnuTB$8hAvwLaQ*l(yAwEcsY4d=cu42bUC(=4|l3tu%fh8 zZ!0Lyr)Ll>QR#hz%Ost{c!{)4T7>vOLC9T3FCyQWG9y0Mca%POf=~O)RNBXRP&neQIS+(z^0X#K$admA0Enk3e%vT8{zdem&+Mq-?^8idU_CvanKBY6*j7ZtST1 zls4d0U@e89dTMgA-t%-SbRB;0R*pz|Rb{8Zxs=3xueA1&5WDam7rced)y-68HhTi; z>Z~ul;rVh4$92^{^pvcX)+0-Scaf=`U$BL?fnXsrKH@%pgQA*o7# zu3?ou$Jfo5+MV%He@%&hv~p~OKo=Q zHNl9LK0&%qqfs~xX!I32n3G5{XOTHze3q^KD*a}D@?ymLrLCCvXpqc3x`x~R&Dq>} zde^|cg&k_dI$XtTV60~o{KL_OPV|PuYm7m3jHvX3>GKZGj7aM! zufaxhe}2LJk;VO)*Mmn7T9#(es(&1fET>kuMm6e0klBkg^Ee!*%y}?>MUt6^408>% zF^yXF*jR~iAI85>m2WMk<6E%DCC$SVm$umzLX;bh(Hr+DRX)>mJEr67ax0&%FjAzy zROvO-cLezfY5hwG;WB-%hClJLQsXlhKcvqjyxIAh*L>{j?mQ}h{XE;jw(|qD2Q&Qq r4qUonKgi_q>C;@|a7tC)H18t6_&FuHqfAN`U$6@?#Zy}REk6DYr**@$ delta 1468 zcma)+4@lH!7{}k|r{^`)?bw_McV^tr?!07ob~;^L=0I94WxxJGFoT@B%9$2X>T=9u zV|lkj6TgD8LYum-rCVFCELqY15Mv;e1K9>A)F3Dla%0hCH^!d#S9cA!(GI?!`|C=l1E;kinKl6Yba0O|p5su_8$5ieLEat9| zC7$nkOrx#EVc3)}2QQq;@YIGfje;e-|_3Kn`dJSU1@3yp)5W8`e z)4qj@;!XI;<)J~y;$*_|&5~J-1GkkuOmeu)ZRt%0-orxK-DI9azRmKjHK7!hSGi6f z!B_sZR_sTG?xqrHUzcr7CU#~0P6wStVVyyz(ZT!#)66N@>kXPg6Z1!0VE&Bs27_u* z!wh1aS%A2?QuV4@InMkR^UUiA>^8WR2y-)H%peN)7!*PWa}d+a)3EPVUQNs?Tws2Q z^hOm`(`aZS7ZZ&yQ4Zp~R3xijt5MZQ_vu=t6}@&>X1i4gkuF3v|Gk5=PJ3EAPvA-` zW}Hr*qsrz@=0vT<`R30bl=`t;zCUE46Nnx%XbitGC$QnL!4oyWoW;$<>TUw9I^8ty z#(}O@H#u;YIfoxw?;n{VtJ;1~OvDgcB3bg@>kS!XL(Nfxp2s+|7IEfYRCNtgJLbDo zxq*;sPlP#xSV%ef!n)?xR5`R09btFc1ix&rq?#oxVmkaHm6)Tu5f$(DCGV>xGNZ<| zqFbjg%rx&J((Sg4@gxMy5xRz0_x%xClt$0dlw{<=zECD@M|{|z22`Ci=n#%G`!Ua) zK;V6YZXm+UK#ZA>!V!bE%Z?GdG8`DyHJM^I|5l0+Hj5B>-2753oN`!}3GuR-xMh~V zX8E`pej3$dK3a{n`YLWmbZk{Jjg}7z%=1p^v;%pr!p9EqG3q+4>K-kB@Kc^DB+bqx ztrwUHXQ4V;L}l3G@K8`jqyA+3W$T9x%P0%6PdQT*o@=9h7(Hju8~Bykk4mX3gPi69 jc1`NqE;8HQkMT)&+Kp8Hz-p@9ITzXgGTSA7iO0VHj6BYT diff --git a/nrf_802154/sl/sl/lib/nrf54h20_cpurad/hard-float/libnrf-802154-sl.a b/nrf_802154/sl/sl/lib/nrf54h20_cpurad/hard-float/libnrf-802154-sl.a index 5f771bc2ff0acba7a20977419fd30f92fe105316..b5b8e0f7e7ad20ca96f660fee49101a19d0d857e 100644 GIT binary patch delta 1456 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 delta 1391 zcma)+ZD>n)rmP#5Qn*Eh4ji=D>`j_=8?~Kd zEZHV&W7Ze@ms*=(h8s((jtbWgV~BNbAA}9;hoC~oTBhI_g@O~5I+i`>E@{gqxDU_o zUM}Z7f8dqlW?7s5UA-|(CfLWZw#IRc6hD`V#+A^vYf9=9-j zK!|@w_g_LhE@Ir&F~_4L`K}PTu;pKJPpm6;7;B506+BVmz-4EFVJ~>N#^S54#*?-R zYJ%Uk$MW2k8e=-(BIAsGbPcJfFH_&~g!C;wIc-11r$FL<;YQ${W1-Ty6fo2RG zZpK)}E~D$2O9d?Rxl{^E89sEKR07plceIk`P_KG&iqp7WWyf~A9jD@U zmG+y-jze>6R12NiW%RhCv@(-1RhBbOc$?)_e-%dR3c3 zx8e8h<;8KYO6}(6N!;*i^Z~M7%{os)j0g;QN>Jyk!FTRTN+RJ~D$_Vvn^9OD^e>kd z_iJ=qs%a53{(CDc!zO#wxVvq&g(VN4SLtgwcYaS>VY6uzFp73LRxK5G<)v5F)0c1_ z(CHjHnHMm{ya-#nP8qZ^f5s&99cHyoXPh4eX6T{?|pfq5RmLpoi>AoC_> z56MIEb*ps8Jd_QHbZgcPY_BN6o^-KWu5~w90=fO|Mt#p>-UO$OUk<;wmP*j_sZK8< z%?#l_vje+(Q?kll*{Huy4yKox!HqtdZgWgkG(~pOhMt(lC8c7T_0J+9iWSWDmtZbd zO##!aP1tdCINy-*R(x6-G}y1wlv(Zr#QQbtIJ;+uFw4D#nf?Z)#%qe(pbu9kH!+-Htr_qaT;6XQQ}iuMUrX(gQZYM7kR3V$o$|D^c~xQy(?Q-1?Np3&U^ diff --git a/nrf_802154/sl/sl/lib/nrf54l15_cpuapp_ns/hard-float/libnrf-802154-sl.a b/nrf_802154/sl/sl/lib/nrf54l15_cpuapp_ns/hard-float/libnrf-802154-sl.a index 9340676066bc2b05d28de23d2e148c79ce48cc05..63f39c1bd4e805961d61d5591ad49be0f774c707 100644 GIT binary patch delta 835 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 delta 1391 zcma)+ZD>n)rmP#5Qn*Eh4ji=D>`j_=8?~Kd zEZHV&W7Ze@ms*=(h8s((jtbWgV~BNbAA}9;hoC~oTBhI_g@O~5I+i`>E@{gqxDU_o zUM}Z7f8dqlW?7s5UA-|(CfLWZw#IRc6hD`V#+A^vYf9=9-j zK!|@w_g_LhE@Ir&F~_4L`K}PTu;pKJPpm6;7;B506+BVmz-4EFVJ~>N#^S54#*?-R zYJ%Uk$MW2k8e=-(BIAsGbPcJfFH_&~g!C;wIc-11r$FL<;YQ${W1-Ty6fo2RG zZpK)}E~D$2O9d?Rxl{^E89sEKR07plceIk`P_KG&iqp7WWyf~A9jD@U zmG+y-jze>6R12NiW%RhCv@(-1RhBbOc$?)_e-%dR3c3 zx8e8h<;8KYO6}(6N!;*i^Z~M7%{os)j0g;QN>Jyk!FTRTN+RJ~D$_Vvn^9OD^e>kd z_iJ=qs%a53{(CDc!zO#wxVvq&g(VN4SLtgwcYaS>VY6uzFp73LRxK5G<)v5F)0c1_ z(CHjHnHMm{ya-#nP8qZ^f5s&99cHyoXPh4eX6T{?|pfq5RmLpoi>AoC_> z56MIEb*ps8Jd_QHbZgcPY_BN6o^-KWu5~w90=fO|Mt#p>-UO$OUk<;wmP*j_sZK8< z%?#l_vje+(Q?kll*{Huy4yKox!HqtdZgWgkG(~pOhMt(lC8c7T_0J+9iWSWDmtZbd zO##!aP1tdCINy-*R(x6-G}y1wlv(Zr#QQbtIJ;+uFw4D#nf?Z)#%qe(pbu9kH!+-Htr_qaT;6XQQ}iuMUrX(gQZYM7kR3V$o$|D^c~xQy(?Q-1?Np3&U^ diff --git a/nrf_802154/sl/sl_opensource/include/nrf_802154_sl_periphs.h b/nrf_802154/sl/sl_opensource/include/nrf_802154_sl_periphs.h new file mode 100644 index 0000000000..e8df3be6bc --- /dev/null +++ b/nrf_802154/sl/sl_opensource/include/nrf_802154_sl_periphs.h @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2024 Nordic Semiconductor ASA + * + * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause + */ + +/** + * @file Module that defines the peripherals used by the nRF 802.15.4 SL. + * + */ + +#ifndef NRF_802154_SL_PERIPHS_H__ +#define NRF_802154_SL_PERIPHS_H__ + +#include + +#if NRF_802154_USE_INTERNAL_INCLUDES +#include "nrf_802154_sl_periphs_internal.h" +#endif + +#define NRF_802154_SL_PPI_CHANNELS_USED_MASK 0U +#define NRF_802154_SL_PPI_GROUPS_USED_MASK 0U +#define NRF_802154_SL_EGU_USED_CHANNELS_MASK 0U + +#endif // NRF_802154_SL_PERIPHS_H__