Commit graph

126,787 commits

Author SHA1 Message Date
Thomas Stranger
598eba4d7a doc: connectivity: networking: lwm2m: update links
Update a couple of lwm2m links

- LwM2M: update to the link the current forwards to
- OMA Specworks LwM2M: update to the link to the releases overview page
      was redirected to the LwM2m overview page.
- LwM2M registry: link to OMA registries, where LwM2M registries are listed
      was redirected to the OMA specifications page before.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-08-06 12:14:37 +03:00
Dmitrii Sharshakov
5eecc55398 drivers: ipm: esp32: properly handle send wait parameter
As clarified by the subsystem maintainers, wait should be treated as a
boolean, not a duration.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-06 12:14:28 +03:00
Chris Friedt
8ff638c5e3 posix: disable clang-format where checkpatch disagrees
checkpatch and clang-format have conflicting formatting requirements for
this file for whatever reason.

Since it is not possible to selectively disable checkpatch, but it is
possible to selectively disable clang-format, disable clang-format
surrounding some macros in `posix_features.h` and `sys/sysconf.h` in order
to eliminate linter noise.

The code is still checked by checkpatch, which should be sufficient.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:14:15 +03:00
Chris Friedt
c9ab343da2 tests: posix: semaphores: use timespec_add() to add to abstime
Use `timespec_add()` to add to an absolute timespec. This is required
because the test was failing occasionally on some qemu platforms in CI
due to this assertion in `timespec_normalize()`, which could happen if
the number of fractional seconds was already close to `NSEC_PER_SEC`
before an offset was added.

```cpp
if (!overflow) {
	__ASSERT_NO_MSG(timespec_is_valid(ts));
}
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:14:03 +03:00
Chris Friedt
82460c8a1d posix: signals: use Kconfig options instead of _NSIG
Use CONFIG_POSIX_RTSIG_MAX instead of _NSIG, since RTSIG_MAX isn't always
going to be defined.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:13:53 +03:00
Chris Friedt
a6f2bb0c4c posix: do not rely on PAGE_SIZE being defined in limits.h
Since an implementation may omit definitions of runtime invariant values
in limits.h if the corresponding value is equal to or greater than the
minimum, is unspecified, and must be queried at runtime [1], do not rely
on PAGE_SIZE being declared in limits.h .

[1]
https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/limits.h.html

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:13:42 +03:00
Ian Fyall
6e040484a9 MAINTANERS: Update Infineon Maintainers
Replace Infineon Maintanter ifyall with sreeramIfx.

Signed-off-by: Ian Fyall <ian.fyall@infineon.com>
2025-08-06 12:13:29 +03:00
Wai-Hong Tam
b4404b0340 input: it8xxx2_kbd: Respect kso_ignore_mask for all KSO pins
The kso_ignore_mask DTS property was not being fully applied in the
ITE IT8xxx2 keyboard driver:
 1. The driver performed direct writes to the KBS_KSOH2 register,
    which controls KSO[17:16]. This did not account for the
    kso_ignore_mask and could overwrite bits in the register that
    are used for other GPIO functions.
 2. The driver would attempt to initialize the GPIOs for KSO16 and
    KSO17 based solely on the col-size property. It ignored the
    kso_ignore_mask, which could lead to reconfiguring a pin that
    is intended for another purpose.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-08-06 12:13:16 +03:00
Daniel Baluta
21d2742ab9 soc: imx8m: adsp: Add NonCacheable linker section
There are some drivers like NXP SDMA that need a NonCacheable
data region to put data like channel control or buffer descriptors.

So far, we haven't added such a section because the linker created
one default orphan section at the end of the data section.

But this generates a warning in the build system:
xtensa-nxp_imx8m_adsp_zephyr-elf/bin/ld.bfd: warning: orphan section
NonCacheable' from modules/hal_nxp/libmodules__hal_nxp.a(fsl_sdma.c.obj)'
being placed in section `NonCacheable'

So fix this by explicitly define a NonCacheable area at the end of data
section.

This works because imx8mp cache attributes are
_memmap_cacheattr_imx8_wt_allvalid = 0x22212222
and the area where the NonCacheable section is allocated is
write-through.

So all the configuration for the SDMA core is not-cached at write.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-08-06 12:13:05 +03:00
Pieter De Gendt
8495e30726 drivers: display: elcdif: Fix zero-length array warning
When setting CONFIG_MCUX_ELCDIF_FB_NUM=0 we can't assign the active pointer
to any framebuffer.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-06 12:12:47 +03:00
James Smith
ba86c10145 modules: hal_silabs: Set multiprotocol define based on Kconfig
Set `SL_RAIL_LIB_MULTIPROTOCOL_SUPPORT` to `1` when Rail
Multiprotocol Kconfig is enabled.

This is required to run the Bluetooth multiprotocol initialization
code during `sl_btctrl_init`.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
James Smith
92be5346a8 modules: silabs: Fix broken binary blobs path with Gecko SDK
Bugfix to correct broken binary blobs path when using the Gecko SDK.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
James Smith
364274b32c modules: silabs: Link against RAIL Multiprotocol blobs when enabled
Enables RAIL Multiprotocol support by linking against the multiprotocol
RAIL library blob when `CONFIG_SILABS_GECKO_RAIL_MULTIPROTOCOL` or
`CONFIG_SILABS_SISDK_RAIL_MULTIPROTOCOL` are enabled.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
James Smith
d6c12f9193 soc: silabs: Add Kconfig options to enable RAIL Multiprotocol support
Adds Kconfig options to enable RAIL Multiprotocol support

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
Declan Snyder
cc12a5ead6 tests: spi_loopback: Add delay props to RT series
RT series have LPSPI data input setup and hold requirements and CS lead/lag
requirements not being met on the current configuration for this
test, causing flaky data transfer on CPHA 0 and 2 tests.
Fix by adding delay properties.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:12:23 +03:00
Emil Gydesen
eef2aa88b3 Bluetooth: CTS: Fix issue with writing without subscription
The write_ct function calls bt_cts_send_notification and if
bt_cts_send_notification fails to send a notification (e.g.
if there are no clients subscribed), it would return an
error, and thus send a ATT error response to the client,
even if the value was actually written.

This commit changes the behavior so that the notification
does not affect the return value (as it is not directly
linked to the write itself), but rather just logs it if
it fails to send the notification.

The notification can failed to be send for 2 main reasons:
1) The application returns an error on fill_current_cts_time
2) bt_gatt_notify fails to notify due to missing buffers

The first we cannot do much about. For the latter we can
either just live with the missing notification, or implement
a retry if we run out of buffers. For this simple fix the
former was chosen, but can be revisited if it turns out
to be a significant problem.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-06 12:12:07 +03:00
Ioannis Karachalios
184b633ff9 tests: drivers: counter: Test failure when counter is running upwards
The "test_late_alarm_error" test vector comes with an update that
should result in test failure when the target counter runs upwards.
That test vector attempts to set an alarm event that is passed the
current tick value. Therefore, counter's direction should be exercised
and then an appropriate alarm event should be defined.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-08-06 12:11:54 +03:00
Declan Snyder
b901daa8e2 eth_nxp_enet_qos: Fixup logging in driver
Some of the logging was not very useful and missing info, some were the
wrong level. Such as routine drops of packets, this happens sometimes
and is not ideal but not going to cause things to fall apart, so demote
those messages. RX buffer underrun for example is pretty unavoidable
with enough traffic going on the local network.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
6267ec59ef drivers: eth_nxp_enet_qos: Move RX underrun code
Extract the RX underrun handle code to a separate function.

Named the function like "dma_rx_resume" to make it clear what the
function is really supposed to do.

Demote the error about not being a first descriptor to a warning.
Because most likely we already got an error about something else which
caused us to drop the packet in the first place. The rest of the frames
are expected to be dropped. And make the string shorter.

Also remove the debug message because the control bits do not tell us
any more information than we don't know already. They only tell us that
we own the descriptor (known since we are processing the frame), that it
is not a first descriptor (known since that is the reason we would drop
it at this point, as indicated by the warning).

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
735412b59c drivers: eth_nxp_enet_qos: Update as many desc as possible
Instead of looping through only the amount of descriptors there are,
maybe it is possible to get some more things received in one work item
than even the max number of descriptors if RX is processed fast enough,
instead of waiting for work to be scheduled again.

So change to go around the ring until we actually hit a DMA owned
descriptor.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
17db8f7975 eth_nxp_enet_qos: Turn on interrupt after init
Don't enable interrupt until after init because there can be a interrupt
mistakenly happen during the init process which can cause various
problems.

Along similar lines, avoid issue for sporadic TX interrupt with no
packet in tx done handler.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
3db8bf7689 drivers: eth_nxp_enet_qos: Don't block TX send
Instead of blocking forever if TX is busy, return an error. This can
avoid deadlock situations.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
02eafc19a1 drivers: eth_nxp_enet_qos: Fix deadlock in system workqueue
There was a deadlock occurring, exposed by http server sample because of
situations like this caused by tx done work being blocked in deadlock:
1) The TX would be started by some thread and the driver TX sem would be
   taken.
2) The http server socket would get scheduled on the system workqueue to
   send something, claim the network TX interface mutex,
   and be blocked taking the semaphore.
3) The RX traffic class handler would get blocked trying to claim the
   network interface TX mutex, while trying to send an ACK in the TCP
   callback. This means the RX packets would not be processed.
4) Lots of RX unable to allocate packets errors would happen, and all RX
   would be dropped. This was the main symptom of the deadlock, which
   made it look like a memory leak but actually had nothing to do with
   the RX code nor any memory leak.
5) The TX DMA would finish and schedule the TX DMA done work onto the
   system work queue, behind the http server socket which is blocked on
   the waiting for the driver TX semaphore.
6) If the TX DMA done work would have ran, that's what gives the TX
   driver semaphore. So this is the reason for the deadlock of all these
   different threads and work items, the misqueue in the system
   workqueue.

Fix by just calling the TX DMA done code directly from the ISR, it
should be ISR safe, and really not a lot of code to execute, just
freeing some net buffers and the packet and updating the stats.
An optimization can be made later if needed, but for now,
solving the deadlock is a more urgent priority.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
c96d891f75 samples: http_server: Fix warning about integer name
When building with CONFIG_DEBUG=y, there is a build warning about the
name being truncated due to integer size is larger than MAX_NAME_LEN.
So fix MAX_NAME_LEN to be large enough to handle 10 digit integer, which
is maximum.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:25 +03:00
Raffael Rostagno
aa09a56e45 samples: bluetooth: Add testcase for ESP32-C2
Add testcase for esp8684_devkitm (ESP32-C2).

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Raffael Rostagno
0f4a112f3b boards: esp8684_devkitm: Add BT node
Add BT node to DTS for BT support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Raffael Rostagno
99b8333b8e drivers: bt: esp32c2: Add support
Add BT-HCI support to ESP32-C2 and ESP8684.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Raffael Rostagno
916d67870d soc: esp32c2: Add BT support
Add bluetooth support to ESP32-C2 and ESP8684.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Declan Snyder
6381c6056b boards: frdm_mcxn236: Combine dtsi and dts files
There does not appear to be any reason or pattern for this
dtsi file to exist, so move everything to the dts file and delete it.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:10:47 +03:00
Andrej Butok
e17918b2f8 drivers: flash_mcux_flexspi: nxp: add CONFIG_FLASH_PAGE_LAYOUT check
- Adds CONFIG_FLASH_PAGE_LAYOUT check to the flash_mcux_flexspi
  drivers.
- Saves some memory if FLASH_PAGE_LAYOUT is disabled.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-08-06 12:10:36 +03:00
Peter Johanson
6cd8882653 boards: adafruit: Add Metro rp2350 board
Add initial Adafruit Metro RP2350 board definition.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-08-06 12:10:20 +03:00
Emil Gydesen
8e5e9922c5 Bluetooth: ISO: Fix sonarcloud issues in valid_chan_qos
Fixes some sonarcloud issues relating to the if statements.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
549ce01a42 tests: Bluetooth: ISO: BIS: Add timestamp check
Add check that verifies that we do not have unexpected
differences in timestamps.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
2ea62124af tests: Bluetooth: ISO: BIS: Enable BIS test for nRF5340bsim
Enable support for building and running the BIS ISO host test
on the nRF5340bsim board.

The purpose of this is to test the ISO fragmentation on both the
nRF52bsim and nRF5340bsim, as they use different drivers.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
c886ef06e3 tests: Bluetooth: ISO: BIS: Add fragmented data test
Add a test for broadcast ISO that uses fragmentation.
The host will attempt to send SDUs 3 times the HCI ISO
data buffer size, so that it will be fragmented into a
BT_ISO_START, BT_ISO_CONT and a BT_ISO_END HCI ISO data
packet.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
33951ccf05 tests: Bluetooth: ISO: BIS: Use controller buffer size as SDU size
Modify the test to use the controller buffer size as the maximum
SDU size, so per default we can send up to the maximum size
the controller supports. This ensures that the tests will
never do fragmentation over HCI.

This also adds verification of the received data on the
ISO sync receiver.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
9e5e7cd07b tests: Bluetooth: BIS: Reduce number of channels to 2
Reduce the number of channels to 2, as higher numbers does
not really test anything worthwhile.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
3a963e5286 Bluetooth: ISO: Remove check for SDU size
Since the SDUs are now allocated by the application
and the host does not care about the SDU sizes, the check
is useless.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Declan Snyder
6f26597ddb tests: spi_loopback: nxp_lpspi: Increase latency for DMA
The DMA-based LPSPI is inherently going to have a high latency due to
the requirement for setting up the DMA transfer and the DMA driver may
be extremely bloated, this is no fault of the spi driver and not
relevant to the test. The driver we want to test for latency is the
CPU-based one, the DMA-based one is more prioritizing bandwidth over
latency.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-05 13:36:57 -04:00
Kunihiko Hayashi
84414b14f9 snippets: xen_dom0: Add qemu_cortex_a53/smp support
Make the SMP version of qemu_cortex_a53 applicable to the xen_dom0 snippet.

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
2025-08-05 13:28:44 -04:00
Yago Fontoura do Rosario
ca06a1d80d Bluetooth: Add configuration to control the dynamic connection callbacks
This commit allows to the user to control the use or not of dynamic
connection callbacks.
The stack is not using the dynamic connection callbacks so they are
only needed if the applications want to use it.
Setting it to true for backwards compatibility.

With dynamic connection callbacks

           FLASH:      176600 B       512 KB     33.68%
             RAM:       27428 B        64 KB     41.85%
        IDT_LIST:          0 GB        32 KB      0.00%

Without dynamic connection callbacks

           FLASH:      176376 B       512 KB     33.64%
             RAM:       27428 B        64 KB     41.85%
        IDT_LIST:          0 GB        32 KB      0.00%

Signed-off-by: Yago Fontoura do Rosario <yafo@demant.com>
2025-08-05 13:28:06 -04:00
Yago Fontoura do Rosario
e0d22a308e Bluetooth: Host: Conn callbacks registration with BT_CONN_CB_DEFINE
This commit registers the connection callbacks using BT_CONN_CB_DEFINE,
which ensures they are set up at link time rather than runtime.

Signed-off-by: Yago Fontoura do Rosario <yafo@demant.com>
2025-08-05 13:28:06 -04:00
Yago Fontoura do Rosario
b1eaf02ec1 Bluetooth: Audio: Conn callbacks registration with BT_CONN_CB_DEFINE
This commit registers the connection callbacks using BT_CONN_CB_DEFINE,
which ensures they are set up at link time rather than runtime.

Signed-off-by: Yago Fontoura do Rosario <yafo@demant.com>
2025-08-05 13:28:06 -04:00
Scott Worley
78bc3e31c0 tests: arch: arm: arm_irq_vector_table: Add remaining MEC boards
Any PR affecting all Microchip MEC SoC's causes twister to run
the arm IRQ vector table test. Since all the MEC boards are
using the MEC 32 KHz timer instead of ARM SysTick we added all
the remaining boards to the test. Each overlay disables the MEC
32 KHz timer and enables SysTick as the kernel timer.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-08-05 13:27:44 -04:00
Michał Stasiak
fce6b2f919 samples: nordic: system_off: check for supported reset causes
Check whether used reset causes are supported by hwinfo
driver.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-05 13:27:10 -04:00
Michał Stasiak
ab3ef4ade4 drivers: hwinfo: nrf: extend supported reset reasons
Added missing supported reset reasons based on conditional
guards.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-05 13:27:10 -04:00
Greg Leach
e17c6e67fe boards: ezurio: bl654_usb: Bring in line with nrf52840 dongle
Merge in updates from reference nrf52840 dongle board

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2025-08-05 13:26:34 -04:00
Sylvio Alves
c6935ba8ab samples: espressif: update deep-sleep test case
Update deep-sleep test case to enable CI tests.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-05 13:26:20 -04:00
Maochen Wang
515567f679 tests: net: wifi: add the build of hostapd enterprise case
Add the build check of hostapd AP enterprise case.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-08-05 13:24:02 -04:00
Maochen Wang
3ad0b53003 net: l2: wifi: fix the build error of hostapd enterprise
Fix the build error when hostapd enterprise is enabled, it should use
new wifi_set_enterprise_credentials API, instead of
wifi_set_enterprise_creds.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-08-05 13:24:02 -04:00