Skip to content

[nrf fromlist] boards: Add nRF52840DK bare variant #3007

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 926 commits into
base: main
Choose a base branch
from

Conversation

tomchy
Copy link
Contributor

@tomchy tomchy commented Jun 30, 2025

Add a variant for builds that use debugger to flash the DK, effectively overwriting the stock onboard USB bootloader (nRF5 SDK bootloader).

Upstream PR #: 92405

mstasiaknordic and others added 30 commits June 16, 2025 11:00
…ation

CONF_FILE parameter in testcase.yaml overwrites board
specific configurations. Change it to EXTRA_CONF_FILE
to apply both configurations.

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

New nrfx release contains MDK 8.71.1
and various fixes for nRF devices.

Signed-off-by: Nikodem Kastelik <[email protected]>
(cherry picked from commit f46798f)
…ration

Some nRF devices allow to configure burst setting per channel
while others globally.

Signed-off-by: Nikodem Kastelik <[email protected]>
(cherry picked from commit 5abf43c)
Some nRF devices do not allow to configure gain.

Signed-off-by: Nikodem Kastelik <[email protected]>
(cherry picked from commit 647477c)
ZMS legacy enabled by CONFIG_SETTINGS_ZMS_LEGACY uses a different lookup
cache function that is optimized for Settings subsystem.

Signed-off-by: Riadh Ghaddab <[email protected]>
(cherry picked from commit d07064e)
… 3.12.1

New nrfx release contains fixes for SPIM and GRTC driver.

Signed-off-by: Nikodem Kastelik <[email protected]>
(cherry picked from commit 59334fa)
Allow to add an image-specific DTS overlay, that is applied based on the
FILE_SUFFIX.
Up to this point, it was possible to specify such Kconfig files
(sysbuild/<image>_<file_suffix>.conf),
but it did not work with dts overlays
(sysbuild/<image>_<file_suffix>.overlay).
This commit aligns the logic of finding configuration files for both
scenarios mentioned above.

Ref: NCSDK-NONE

Signed-off-by: Tomasz Chyrowicz <[email protected]>
(cherry picked from commit 13a0f05)
Allow more TWIS instances to be tested.

Signed-off-by: Michał Stasiak <[email protected]>
(cherry picked from commit f9be875)
For GRTC timer a longer timeout is required:
(2 ^ 32) * 2 * 1us

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit d0785ce)
The HFXO used on nRF54L15 DK has the typical startup latency of 854us.

Upstream PR #: 90795

Signed-off-by: Rafał Kuźnia <[email protected]>
(cherry picked from commit 39076d5)
…ency

The clock startup latency is now obtained from the clock driver and the
nrf-802154 is now set to a value that matches hardware capabilities.

Upstream PR #: 90795

Signed-off-by: Rafał Kuźnia <[email protected]>
(cherry picked from commit 4b3f171)
Extended analog pins mappings for more nRF54L targets.

Upstream PR #: 91581

Signed-off-by: Michał Stasiak <[email protected]>
(cherry picked from commit bd990c5)
…calls to it

This is a follow-up to commit a068709.

As the SPIM_REQUESTS_CLOCK() macro changed the type of its parameter,
all of the calls to it need to be updated accordingly. Also the call to
DT_NODELABEL() needs to be removed from that macro as DT_CLOCKS_CTLR()
already returns a node identifier.

Signed-off-by: Andrzej Głąbek <[email protected]>
(cherry picked from commit ec06e63)
…STS is disabled

If `CONFIG_SYS_CLOCK_EXISTS=n`, then
`CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC` will likely not be defined at all.
Fix the compilation by moving the check for it being `== 0` to a
separate preprocessor #if statement.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 03f46db)
… fwid length

Commit sets max possible number of tx and rx segments
to not adapt them anymore.

Signed-off-by: Aleksandr Khromykh <[email protected]>
(cherry picked from commit a046f25)
Commit changes BT_MESH_DFU_FWID_MAXLEN option to be
compliant with BLE Mesh specification.

Signed-off-by: Aleksandr Khromykh <[email protected]>
(cherry picked from commit 2411238)
…rious empty macro

If SYS_CLOCK_EXISTS is not enabled, then the SYS_CLOCK_HW_CYCLES_PER_SEC
still gets created, but with no value. This causes the code generation
in misc/generated/CMakeLists.txt to create an empty assembly macro:

`.equ  CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC,`

which then causes a build error.

Disable SYS_CLOCK_HW_CYCLES_PER_SEC entirely when SYS_CLOCK_EXISTS is
disabled to fix this.

This is a follow-up to 03f46db.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 61cdcb3)
The help message for the wifi mode -s command indicates it sets
the Wi-Fi mode to station. However, the Zephyr Wi-Fi shell subsystem
was incorrectly using a get operation instead of set.

This commit corrects the behavior to properly set the Wi-Fi mode,
aligning the implementation with the help message.

Signed-off-by: Arunmani Alagarsamy <[email protected]>
(cherry picked from commit 0faba15)
Include nordic,nrf-nfct-v2 compatible in the option.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 2d82970)
Use nordic,nrf-nfct-v2 compatible in the main nrf54h20 devicetree
description.

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

NFCT is by default assigned to application so DT node does
not need to be enabled or reserved in DT to have access to
NFCT registers. On cpurad NFCT must be reserved to enable
register access and then antenna pins can be configured as
gpios.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 1dc42fc)
Add information about nfct node status. For cpuapp status is irrelevant
because NFCT is by default assigned to cpuapp but for cpurad node needs
to have reserved status.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 9caab5b)
Add a new "if_name" pointer to the transport configuration structure,
allowing the application to bind MQTT client to a specific network
interface.

Signed-off-by: Robert Lubos <[email protected]>
(cherry picked from commit 35af68b)
…oad at runtime

Add new socket offloading functions, allowing to enable/disable
offloaded DNS implementation at runtime. This may be useful if there is
a mix of offloaded/native network interfaces in the system, so the
application can choose which DNS backend to use.

Signed-off-by: Robert Lubos <[email protected]>
(cherry picked from commit b18bc7c)
…g stats

net_stats_t type is an unsigned type, therefore %u should be used
instead of %d when printing values of this type, otherwise negative
values will be printer if INT32_MAX is exceeded.

Signed-off-by: Robert Lubos <[email protected]>
(cherry picked from commit b877d2c)
In high throughput tests it's fairly easy to overflow the current 32-bit
byte counters in net statistics (it's just over 4 GB of data).
Therefore, make the byte counters 64-bit to prevent overflows.
Rearrange some fields to avoid padding.

Signed-off-by: Robert Lubos <[email protected]>
(cherry picked from commit 86244a9)
Update memory map to be compatible with latest IronSide.

180kB is reserved.

Upstream PR #: 91667

Signed-off-by: Håkon Amundsen <[email protected]>
(cherry picked from commit 75ee1d0641164cd4f673d8296f713aae811eee58)
Add necessary changes to provide a simple, updateable radio image.

Signed-off-by: Tomasz Chyrowicz <[email protected]>
(cherry picked from commit 5e54100)
Extend SPI driver with possibility to use
- spim23, spim24,
- spis23, spis24.

Signed-off-by: Sebastian Głąb <[email protected]>
(cherry picked from commit c0a28ab)
Add UARTE23 and UARTE24 missing Kconfig options and their
translation to NRFX configuration macros.

Signed-off-by: Sebastian Głąb <[email protected]>
(cherry picked from commit 2b4f645)
tmon-nordic and others added 28 commits July 15, 2025 13:13
Initial implementation of nRF54L quirks necessary for nRF54LM20A.

Upstream PR #: 92842

Signed-off-by: Tomasz Moń <[email protected]>
Signed-off-by: Johann Fischer <[email protected]>
(cherry picked from commit f48fd8fad88f5cdb8a6600cfc3c8b66980fe0378)
Avoid using the PPI channels that are currently reserved for Radiocore
through the default configuration found in `uicr_periphconf_table.c`.
Otherwise, the samples may build but will not work as expected.

Upstream PR #: 91826

Signed-off-by: Grzegorz Swiderski <[email protected]>
(cherry picked from commit bc26475c262d6dcb1ec1b4d8bf53bf4f262382dc)
Signed-off-by: Tomasz Moń <[email protected]>
It was observed that device ceases to work in Buffer DMA mode after GET
DEVICE QUALIFIER request is STALLed (when USB stack is limited to
Full-Speed only operation). The issue is due to missing dout feed.

Clear pending dout feed flag after bus reset (enumeration done) and
after stalled control read transfer to allow dout to be feed when
necessary.

Upstream PR #: 93103

Signed-off-by: Tomasz Moń <[email protected]>
(cherry picked from commit 83c6c402e206b7c68538594599ea495eb84ae967)
…frequencies

Disabled frequency set approximation algorithm for spim's with prescaler.

Upstream PR #: 92436

Signed-off-by: Michal Frankiewicz <[email protected]>
…requencies.

Added test cases for nrf chips for non standard frequencies.

Upstream PR #: 92436

Signed-off-by: Michal Frankiewicz <[email protected]>
Allows usage of settings when multithreading is disabled

Upstream PR #: 92886

Signed-off-by: Jamie McCrae <[email protected]>
…_alloc

nrf-squash! [nrf noup] Bluetooth: Mesh: zero randomization for friend's adv

bt_hci_cmd_create will be deprecated.

Signed-off-by: Olivier Lesage <[email protected]>
…/IW416 SoC

- Add support for default Annex-55 Bluetooth calibration data load
 for both IW612 and IW416 SoC.
- Add support for default Annex-100 Bluetooth calibration data load
 for both IW612 and IW416 SoC.

Signed-off-by: Nirav Agrawal <[email protected]>
(cherry picked from commit ffe8daa)
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <[email protected]>
(cherry picked from commit c186a31)
Mark bt_hci_cmd_create() as deprecated (superceded by bt_hci_cmd_alloc()),
and update any references to the new function.

Signed-off-by: Johan Hedberg <[email protected]>
(cherry picked from commit a22a4b1)
…eate()

Add a note about bt_hci_cmd_create() deprecation and which API should be
used instead.

Signed-off-by: Johan Hedberg <[email protected]>
(cherry picked from commit 607ff85)
Add the resolve and get_startup_time call

Upstream PR #: 93141

Signed-off-by: Piotr Krzyzanowski <[email protected]>
(cherry picked from commit 632aad17eaab2a0fa50258b47d8732d37d274c08)
Commit 3c47f91 introduced alignment
validation in K_MEM_SLAB_DEFINE macros.
A couple PTP message slabs wer using alignment 8, while the size of
the elements wasn't a multiple of 8, causing a static assertion
failure.

Fix by changing the alignment from 8 to 4 bytes.

Signed-off-by: Benjamin Cabé <[email protected]>
(cherry picked from commit 222a601)
Signed-off-by: Robert Lubos <[email protected]>
… initialization"

This reverts commit de4fad1.

Signed-off-by: Krzysztof Chruściński <[email protected]>
…ization

The GRTC counter is not cleared at startup, therefore the
`last_count` variable needs to be initialized accordingly.
This change:
- Prevents overflow of the `sys_clock_announce()` int32_t parameter
- Ensures the correct uptime value, which should be reset during
  initialization

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit e77f942)
…ister access

Speed up execution of the interrupt handler and sys_clock_set_timeout().
Sys_clock_set_timeout() can be called in two scenarios: from previous
timeout expiration handler or freely. If the former case fast path
can be used since CC value in the GRTC register just expired and it
can be used as a reference for CCADD setting. This is only a single
register write so it's much faster. In the latter a longer procedure
is applied which also happens in two variants. If value which is
set in CC is further in the future (e.g. K_FOREVER was set before) then
CC can be safely overwritten with a new value without a risk of
triggering unexpected COMPARE event. If value in CC is earlier than
the new CC value (if earlier timeout was aborted) then there is a
risk of COMPARE event happening while it is being overwritten.
That case requires long and safer procedure of setting CC.

Update hal_nordic with changes in the nrfx_grtc driver which are
needed for nrf_grtc_timer changes.

Upstream PR #: 87944

Signed-off-by: Krzysztof Chruściński <[email protected]>
Add stress test that randomly starts and aborts multiple timers
from various contexts. Test checks if timers do not expire prematurely.

Upstream PR #: 87944

Signed-off-by: Krzysztof Chruściński <[email protected]>
Adds a retention backend for settings

Upstream PR #: 93151

Signed-off-by: Jamie McCrae <[email protected]>
A clone of the zms test, using the retention backend, with support
for nrf52840dk and qemu_cortex_m3

Upstream PR #: 93151

Signed-off-by: Jamie McCrae <[email protected]>
Add APP_DIR as a kconfig environment variable.

This is useful in cases where you want to set a config path relative to
the directory of the application.

An example of this is how many sysbuild.cmake files sets the source
directory like this:

ExternalZephyrProject_Add(
  APPLICATION remote
  SOURCE_DIR ${APP_DIR}/remote
  BOARD ${SB_CONFIG_REMOTE_BOARD}
)

The same however cannot be done in Kconfig.sysbuild:

config NETCORE_IMAGE_PATH
    default "${APP_DIR}/<image_path>" if NETCORE_ABC

Instead they must use ZEPHYR_MY_MODULE_MODULE_DIR, however not all
applications are part of a zephyr module.

Signed-off-by: Joakim Andersson <[email protected]>
(cherry picked from commit 12fdde6)
Add FPU power management for suspend to RAM procedures.
Add FPU save/restore procedures when `FPU_SHARING` feature
is disabled.

Upstream PR #: 92264

Signed-off-by: Adam Kondraciuk <[email protected]>
Adds aliases so that these devices can use MCUboot serial recovery

Upstream PR #: 93090

Signed-off-by: Jamie McCrae <[email protected]>
Ref: NCSDK-34052

Signed-off-by: Krzysztof Szromek <[email protected]>
Certain implementations require more stack to operate.
Increase the stack size to avoid overflows.

Signed-off-by: Tomi Fontanilles <[email protected]>

Upstream PR #: 93147

Signed-off-by: Tomi Fontanilles <[email protected]>
…duce register access"

This reverts commit 6346fbb.

Signed-off-by: Krzysztof Chruściński <[email protected]>
…ister access

Speed up execution of the interrupt handler and sys_clock_set_timeout().
Sys_clock_set_timeout() can be called in two scenarios: from previous
timeout expiration handler or freely. If the former case fast path
can be used since CC value in the GRTC register just expired and it
can be used as a reference for CCADD setting. This is only a single
register write so it's much faster. In the latter a longer procedure
is applied which also happens in two variants. If value which is
set in CC is further in the future (e.g. K_FOREVER was set before) then
CC can be safely overwritten with a new value without a risk of
triggering unexpected COMPARE event. If value in CC is earlier than
the new CC value (if earlier timeout was aborted) then there is a
risk of COMPARE event happening while it is being overwritten.
That case requires long and safer procedure of setting CC.

Update hal_nordic with changes in the nrfx_grtc driver which are
needed for nrf_grtc_timer changes.

Upstream PR #: 87944

Signed-off-by: Krzysztof Chruściński <[email protected]>
Add a variant for builds that use debugger to flash the dongle,
effectively overwriting the stock nRF5 SDK bootloader.

Upstream PR #: 92405

Signed-off-by: Tomasz Chyrowicz <[email protected]>
@tomchy tomchy force-pushed the feature/sysbuild/NCSDK-NONE_Introduce_dongle_bare_variant branch from 3d3d4ab to 00c02e6 Compare July 21, 2025 10:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.