Skip to content

Conversation

@de-nordic
Copy link
Contributor

Taken from upstream.

cvinayak and others added 30 commits February 21, 2025 11:39
…n using DPPI

Fix single timer s/w switch when using DPPI on nRF53/54L
where the previous compare register index is incorrect when
the base index is a odd numbered DPPI used.

The issue is discovered as failing ISO Receiver sample with
Coded PHY and single timer use, where the compare base is
configured to use the DPPI 3 (instead of 4).

Upstream samples do not use single timer for s/w switch, the
issue is discovered when adding support for nRF54L which has
to use single timer due to the radio only having a single
timer.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 3bc2462)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…e indices

Fix single timer s/w switch base indices from overlapping
with sample index.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit dd95c22)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
Add radio_sim_nrf54l.h file, which for now a copy of the
SoC radio_nrf54lx.h file. This is added for having separate
simulation model dependent timing values and specific
implementation details.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 7e51788)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…abstractions

Fix nRF5 radio and event timer abstractions for some that
where hard coded compared to use of the ones defined in the
resources header file.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 06b7503)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…vent jitter

Restrict the jitter considered in the PDU reception in the
subevents of ISO Sync Receiver.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit e4b6751)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…n using single timer"

This reverts commit a7fff74.

The next commit will re-add back the fix to primary
advertising channel plus auxiliary advertising channel too.
This will help keep the fix together regarding use of
single timer for software tIFS switching implementation.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 28f9315)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…tising nRF54L support

Update Extended Advertising for single timer use support
required for nRF54L Series SoCs.

As the timer is reset on every radio end, add implementation
to accumulate the last_pdu_end_us.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 373dc0d)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…ing nRF54L support

Update Extended Scanning for single timer use support
required for nRF54L Series SoCs.

As the timer is reset on every radio end, use the
radio_tmr_hcto_configure_abs() function to set the header
complete timeout correctly when using single timer for s/w
switching.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit c4a6651)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…g nRF54L support

Update advanced non-overlapping Central Connection Creation
scheduling for single timer use support required for nRF54L
Series SoCs.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 88a73dd)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…ync nRF54L support

Update Periodic Advertising Sync implementation for single
timer use support required for nRF54L Series SoCs.

As the timer is reset on every radio end, use the
radio_tmr_hcto_configure_abs() function to set the header
complete timeout correctly when using single timer for s/w
switching.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit ccba18a)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…F54L support

Update ISO Sync Receiver for single timer use support
required for nRF54L Series SoCs.

As the timer is reset on every radio end, use the
radio_tmr_hcto_configure_abs() function to set the header
complete timeout correctly when using single timer for s/w
switching.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 980cc21)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…F54L support

Update ISO Central for single timer use support required
for nRF54L Series SoCs.

As the timer is reset on every radio end, use the
radio_tmr_hcto_configure_abs() function to set the header
complete timeout correctly when using single timer for s/w
switching.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit b6ce1a6)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
… nRF54L support

Update ISO Peripheral for single timer use support required
for nRF54L Series SoCs.

As the timer is reset on every radio end, use the
radio_tmr_hcto_configure_abs() function to set the header
complete timeout correctly when using single timer for s/w
switching.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 1508aa4)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…al compilations

Replace use of HAL_RADIO_RECV_TIMEOUT_CANCEL_PPI with
HAL_TRIGGER_CRYPT_PPI; they have same value but use the
correctly named HAL_TRIGGER_CRYPT_PPI define now.

Fix conditional compile to correctly exclude reference of
NRF_CCM when CONFIG_BT_CTLR_PRIVACY=n.

Fix missing reference to CCM_TASKS_CRYPT_DELAY_BITS when
CONFIG_BT_CTLR_SW_SWITCH_SINGLE_TIMER=y.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 439cd0b)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…wer domains

Align DDPI usage with nRF54L series power domains and
available DDPI configurations.

Use indices below 4 when needing to bridge with GPIO,
use indices below 8 when needing to bridge with MCU domain
like CCM and AAR; and use indices above 7 to bridge with
Peripheral domain.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 031a17c)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
… SoC

Add NRF_CCM h/w based encryption support in nRF54L15 SoCs.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 4304640)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…d UINT8_MAX

Added BUILD_ASSERT to ensure ticker node count does not
exceed UINT8_MAX.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 750250f)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…date

The connection event at the connection update instant was
skipped due to previous ticker node in use that is being
stopped was registering a relative occupied time that
overlapped with the new ticker node being started for
scheduling the connection with new interval.

Added mock interface for ticker_stop_abs() hence needed by
the Controller unit testing.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 5dffad0)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
Fix reset of drift_skip count when an anchor point sync was
missed so that drift compensation is applied on the next
successful anchor point sync. This will improve connection
stability for short overlapping radio event intervals.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit e09d629)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
… conn done event

Fix uninitialized is_aborted in connection done event.

Relates to commit cadef5a ("Bluetooth: Controller:
Introduce BT_CTLR_PERIPHERAL_RESERVE_MAX").

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit f3e398d)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…x to any PHY Tx

Fix regression in Coded PHY S2 reception to any other PHY Tx
in the s/w switch implementation.

Regression in commit 55b7dba ("Bluetooth: Controller:
Refactor sw_switch hal interface use").

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 7573ac5)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
Fix connection event busy check when peripheral role is
using minimal time reservation.

Peripheral and Central have a anchor point sync if the
Peripheral has successfully transmitted once to the Central.

Fixes commit cadef5a ("Bluetooth: Controller: Introduce
BT_CTLR_PERIPHERAL_RESERVE_MAX")'.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 745810c)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
… update

Fix incorrect peripheral drift compensation when connection
events are overlapping and a PHY update causes the currently
used PHY to change.

Incorrect preamble to address that is calculated using
updated PHY was used causing supervision timeout.

Fixed by storing the PHY used in the current connection
event and using that for drift compensation calculation.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 13fa3a0)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
Workaround HCTO calculation for BabbleSIM due to need of
addition timeout value required to have anchor point sync.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit e8da981)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…sed events value

Fix incorrect elapsed events value when event prepare are
aborted in the pipeline. This can caused premature
supervision timeouts.

Relates to commit 247037b ("Bluetooth: Controller: Fix
incorrect elapsed events value").

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 1c86636)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…lated latency

Fix Connected ISO to use accumulated latency to update the
payload count.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit 3bf3308)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…CIG overlaps

Fix incorrect event_count use in CIG events when the next
CIG interval's prepare overlaps with the current CIG event.
Use separate event_count_prepare variable in ULL and copy
the value in LLL event.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
(cherry picked from commit be91cfe)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
Coverity was unhappy that
`struct ll_conn_iso_stream *cis = NULL;` was never assigned to
a non-NULL value, which is due to the assignment being
guarded by `#if defined(CONFIG_BT_CTLR_CONN_ISO)`.

Signed-off-by: Emil Gydesen <[email protected]>
(cherry picked from commit a9279ee)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
…t parameter

This fixes uninitialized iso_interval parameter in
bt_hci_evt_le_big_complete.

Signed-off-by: Mariusz Skamra <[email protected]>
(cherry picked from commit 6723625)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
… BASE0

We have previously fixed an issue with shifting and
assigning the value without a cast, but coverity
is still complaining about aa[1] and aa[0] with:

"Casting narrower unsigned aa[1] to wider signed type
int effectively tests its lower bound."

Using the common function, sys_get_le24, should fix this issue.

Signed-off-by: Emil Gydesen <[email protected]>
(cherry picked from commit 9fca7ee)
Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
adamkondraciuk and others added 23 commits March 17, 2025 16:50
Some of nRF54's has TDM peripheral instead of I2S.

Upstream PR #: 82144

Signed-off-by: Adam Kondraciuk <[email protected]>
Configure SDP MSPI pins to switch their control to VPR core

Signed-off-by: Jakub Zymelka <[email protected]>
(cherry picked from commit 2540f7b)
… instead of JSON

Instead of pre-generating the JSON batch to then execute it, use
command-line arguments and --x-append-batch to generate the JSON file
tht will then be passed to x-execute-batch.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 6e9e839)
In commit 6e9e839, an indirection via
the new `options` dictionary was missed in the SUIT handling.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 51661ef)
…ling

This is no longer necessary, because thanks to sysbuild we no longer
invoke a runner with a .hex file that is the result of merging builds
for more than one core.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit aaefaad)
These are used to detect if the firmware image contains any values
inside the UICR for additional handling.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit fa66984)
This is no longer used at all.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 4e8ec16)
The `erase` command was being used but there was no "backend"
implementation for it in nrfutil nor nrfjprog. Simplify the syntax and
implement it for both tools.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit dc7d8bb)
…tions

Commit dc7d8bb introduced the requirement to provide the erase kind when
executing the corresponding op, but it was forgotten in this particular
spot.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 706689b)
…RF52 series

The Nordic nRF52 series have a peculiarity that is not shared with any
other Nordic families of SoCs: the reset pin can be reconfigured as a
regular GPIO. This has an unintended consequence: if the user has
reconfigured the pin in Devicetree to be a GPIO, `west flash` will
override that and configure the IC to use it as a reset pin, and the
firmware at boot won't be able to switch it back to GPIO, because that
requires a UICR erase. This behavior is very confusing to users, because
the GPIO does not work at all, since it is now just a reset line.

With this patch, `west flash` defaults to using soft reset instead of
pin reset for the nRF52 family of devices, to avoid overwriting the
reset pin configuration that the user includes in the image.

In order to be able to continue to use pin reset for users that so
desire it, a new option `--pinreset` is added that forces the use of pin
reset. The existing `--softreset` option is left exactly as it was, but
it is now applicable only to families other than the nRF52.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 17a671c)
- Allocate source in PBP first time adv is created
- Only set_adv_data in adv_setup if ext_adv already exists
- Fixes regression in PTS for PBP tests

Signed-off-by: Alexander Svensen <[email protected]>
(cherry picked from commit 33b4fae)
Signed-off-by: Alexander Svensen <[email protected]>
…54H20

After commit aaefaad, flashing of the FLPR and PPR cores in the nRF54H20
was broken due to those cores missing from the _get_core() function that
retrieves the core to program, triggering an exception. Fix it by
referencing those cores and mapping them to the application core.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 7254a61)
…nabled

Set the default maximum argument count for the shell to 30
when the Wi-Fi shell is enabled, to ensure all Wi-Fi
commands work without failure.

Signed-off-by: Triveni Danda <[email protected]>
(cherry picked from commit e7a65ac)
…thread

Fixes overflow issue in the net_mgmt thread
during network interface state changes.

Signed-off-by: Triveni Danda <[email protected]>
(cherry picked from commit 3a3f4ab)
Added Kconfig options to allow use of TWIM frequency
workaround in NRFX for nRF52 and nRF53.

Signed-off-by: Michał Stasiak <[email protected]>
(cherry picked from commit def5f8e)
… rates

Add short transfer test at 8000, 16000, 32000, 44100, 48000, 88200
and 96000 frame clock frequency.

Add KConfigs to skip test cases based on value of sample rate.

Add configuration for nrf5340dk where i2s peripheral is clocked
from ACLK.

Signed-off-by: Sebastian Głąb <[email protected]>
(cherry picked from commit c42513a)
…n nrf54h20

Extend support in dt bindings and in the driver to allow use of
AIN8 to AIN13 analog inputs.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit f2e1ac0)
…onfiguration

Add AIN9 pin in nrf54h20dk to verify AIN8-AIN13 inputs.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit a5d023a)
…ection

Selection of the LF clock source for the GRTC should be performed
as early as possible, before starting GRTC.

Upstream PR #: 87199

Signed-off-by: Adam Kondraciuk <[email protected]>
…GRTC

Disable automatic LFCLK selection for GRTC during driver initialization.
For Zephyr applications it is selected by `sys_clock_driver_init()`
depending on configuration and DTS.

Upstream PR #: 87199

Signed-off-by: Adam Kondraciuk <[email protected]>
…g.tls-generic"

This reverts commit fe0996c.

Signed-off-by: Dominik Ermel <[email protected]>
Allow enabling MBEDTLS_RSA_C without key exchange enabled.
This allows to use RSA without enabling x509 support too.

Upstream PR #: 87355

Signed-off-by: Dominik Ermel <[email protected]>
…neric

-This commit prevents legacy mbed TLS configurations from being in
 conflict with PSA Configurations while using nrf_security.
-This [nrf noup] is reworked from an earlier cherry-pick of
 commit d8c96cf, but has the following
 changes:
 - Endif's relevant that is using our pattern for masking
   configs duplicated or in conflict in nrf_security
  (by using if !(NRF_SECURITY || NORDIC_SECURITY_BACKEND)) is
  made clearer by adding a comment at their corresponding endif
  (# !(NRF_SECURITY || NORDIC_SECURITY_BACKEND))
 - Changes to zephyr_init.c for entropy_dev checking for
   CONFIG_NRF_CC3XX_PLATFORM is removed as the symbol entropy_dev
   doesn't exist in this file anymore

ref: NCSDK-13503

Signed-off-by: Frank Audun Kvamtrø <[email protected]>
Signed-off-by: Dominik Ermel <[email protected]>
(cherry picked from commit 728983f)
(cherry picked from commit fe0996c)
@sonarqubecloud
Copy link

@de-nordic de-nordic added the DNM label May 13, 2025
@de-nordic
Copy link
Contributor Author

Upmerge will probably bring this anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.