Commit graph

118,807 commits

Author SHA1 Message Date
Peter Mitsis
ec4df64dc7 kernel: make order_key field in thread conditional
The 'order_key' field in the thread structure '_thread_base' is only
required when CONFIG_SCHED_SCALABLE and/or CONFIG_WAITQ_SCALABLE are
enabled (neither of which is a default setting). Making the existence
of this field conditional slightly reduces the size of the k_thread
structure when neither of those Kconfig options are selected.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-08 03:38:37 +01:00
Alberto Escolar Piedras
4338122248 drivers entropy: fake_entropy_native_posix rename to _native_sim
Rename the driver files, binding and kconfig options, while deprecating
the old binding and kconfig options.

Uses in tree are replaced.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 03:38:13 +01:00
Jari Tervonen
3b1e60da90 lib: posix: Fix NULL pointer to strcmp in posix mqueue.
When a queue has been unlinked but not removed the name pointer is set to
NULL. The queue is still in the list when adding new queues and the name
pointer is passed to strcmp.

Signed-off-by: Jari Tervonen <jari.tervonen@nordicsemi.no>
2025-03-08 03:37:48 +01:00
Josuah Demangeon
364322e246 samples: drivers: video: use a macro to simplify format logging
A macro introduced allows to log four-character-codes (FOURCC) as one
string instead of enumerating each individual character. This saves a bit
of room in the code and is less error-prone.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-08 03:37:38 +01:00
Josuah Demangeon
26db5c2aef drivers: video: introduce VIDEO_FOURCC_TO_STR
This adds a macro to generate a C99 compound literal string, which allow
to use it in debug log messages, such as:
LOG_DBG("The pixel format is '%s'", VIDEO_FOURCC_STR(fmt->pixelformat));

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-08 03:37:38 +01:00
Grant Ramsay
4c5f858869 scripts: footprint: Exclude data section from rom_report if XIP=n
For XIP=n, the data section is only in RAM

Signed-off-by: Grant Ramsay <gramsay@enphaseenergy.com>
2025-03-08 03:37:27 +01:00
Pavel Vasilyev
179f3c6f05 bluetooth: hci: ipc: assert when building HCI IPC driver w/o ACL FC
The HCI IPC driver is not reliable and can lead to lost ACL data if
built without Controller-to-Host ACL flow control.

This commit prevents building HCI IPC driver and hci_ipc sample without
CONFIG_BT_HCI_ACL_FLOW_CONTROL.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-03-08 03:37:16 +01:00
Krzysztof Chruściński
8ce291dfd8 tests: drivers: counter: basic_api: Fix failing build
nrf52_bsim target was failing to compile when ZLI configuration
was used. This target should never be used for that configuration
because:
- bsim does not support Zero Latency Interrupts
- this configuration is strictly for nrf52840dk (dedicated overlay)

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-08 03:37:04 +01:00
Benjamin Cabé
6efca1a9ff samples: led_strip: Make LED brightness configurable
Expose a Kconfig option to adjust max brightness level

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-07 21:40:35 +01:00
Jilay Pandya
11d1a9033f tests: stepper: build-all sort entries alphabetically
sort stepper driver entries alphabetically‚

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 21:29:31 +01:00
Ian Morris
22d4161cc0 boards: renesas: ek_ra6m4: added mikrobus node labels
Added mikrobus_serial, mikrobus_i2c, mikrobus_spi and mikrobus_header
node labels to EK-RA6M4 device tree board definition, allowing compatible
shield boards to be used.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-03-07 21:29:19 +01:00
Tomasz Moń
962a53ef8e drivers: udc_dwc2: Avoid unnecessary context switches
DWC2 thread must acquire UDC mutex before accessing shared resources
(peripheral registers and software data structures). Whenever software
enqueues a buffer, the caller first obtains mutex, adds the buffer to
the list, posts event to wake up DWC2 thread and releases mutex. If DWC2
thread has higher priority than the task currently holding a mutex,
there will be two completely unnecessary task switches: DWC2 will switch
in, try to obtain mutex, and then the control will be returned to the
mutex holder.

Avoid the unnecessary task switches by locking scheduler prior to
obtaining the mutex and unlocking scheduler after releasing the mutex.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-07 21:29:09 +01:00
Jamie McCrae
d65de42282 cmake: mcuboot: Configure key and signature variables
Configures both of these variables so that they can contain
CMake variables which will be expanded

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-07 20:36:04 +01:00
Rubin Gerritsen
65c7f1f269 Bluetooth: Controller: Kconfig: Add dependencies to ISO configs
The ISO configs set defaults based upon BT_ISO_MAX_CHAN and other
configs defined in `bluetooth/Kconfig.iso`.

By adding these dependencies the error messages resulting from
adding `CONFIG_BT_CTLR_PERIPHERAL_ISO=y` to a project configuration
file will become less confusing.

Now the build will output:
```
warning: BT_CTLR_PERIPHERAL_ISO (
defined at subsys/bluetooth/controller/Kconfig:976,
subsys/bluetooth/controller/Kconfig:984) was assigned the value 'y' but
got the value 'n'. See ...
```

Previously we would get:
```
warning: default value 0 on BT_CTLR_CONN_ISO_STREAMS
(defined at subsys/bluetooth/controller/Kconfig:993)
clamped to 1 due to being outside the active range ([1, 64])
```

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-03-07 20:35:45 +01:00
Alberto Escolar Piedras
b932e14338 manifest: Update nRF hw models to latest
Update the HW models module to:
b84bd7314a239f818e78f6927f5673247816df53

Including the following:
b84bd73 UART PTY backend: Correct a few comments
f945d62 RADIO 54: Fix reset value of TIMING register
9fd4133 MDK nrfx_erratas.h: Ensure backwards compatibility with old
        nrfx versions
85061b1 MDK: Provide empty replacement for nrf_erratas.h

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:31:51 +01:00
Karsten Koenig
b900ed561f modules: hal_nordic: bump regtool to 8.1.3
Added additional analog channels for ADC and COMP/LPCOMP and new pin
functionality mapping for TDM.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-03-07 20:31:39 +01:00
Jukka Rissanen
c53d02439b tests: net: dns: Add tests for joining mDNS multicast group
Make sure that if mDNS resolver is enabled, we join the mDNS
multicast group so that query responses can be received.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-07 20:28:03 +01:00
Jukka Rissanen
d955af4e62 net: dns: Join mDNS multicast group for resolving
If mDNS resolver is enabled but mDNS responder is not, then
mDNS multicast address group is not joined. This would prevent
the mDNS resolver to receive the responses. Fix this by
joining the mDNS multicast group if mDNS responder is not
enabled (because the responder will join the group itself).

Fixes #86477

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-07 20:28:03 +01:00
Jordan Yates
95fcf48fab modules: hostap: remove select FILE_SYSTEM
Remove `select FILE_SYSTEM` from `WIFI_NM_WPA_SUPPLICANT`, originally
added in 3fc932c5. The selection is not required by any tests, and does
not appear to be used by any code in the module.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 20:27:12 +01:00
Jordan Yates
06d7fe8bed arch: update USERSPACE dependencies
These symbols only need to exist if `USERSPACE` is enabled, not just if
the architecture supports it.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 20:25:23 +01:00
Nils Ruf
1972a3f5fc drivers: uart: uart_native_tty: allow multiple instances
Adds one RX thread per instance. Previously, only one global RX thread was
used resulting in crashes due to the thread instance being overwritten by
other instances.

Signed-off-by: Nils Ruf <nils.ruf@endress.com>
2025-03-07 20:25:04 +01:00
Carles Cufi
c9151be798 west: runners: Add support for multiple device IDs
In order to enable the use case where the underlying flash tool supports
bulk-flashing using multiple device IDs, augment the core runner class
with this new runner capability and implement it in the nrfutil runner,
since the nrfutil tool supports it natively.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-07 20:24:23 +01:00
Ren Chen
9388349957 drivers: i3c: ccc: add missing data length for entas
This commit adds the missing data length(=0) for entas ccc.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-03-07 20:24:04 +01:00
Ren Chen
20dbf4d7a0 drivers: i3c: shell: fix the judgement/argc count for getstatus/ibi tir
The errno for format 2 of the getstatus ccc always returns an error.
The check for the invalid defining byte should use the "AND" operation
instead of "OR." Additionally, the first byte of the ibi tir sending
request is ignored due to the incorrect argument count.
This commit fixes both issues.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-03-07 20:24:04 +01:00
Ren Chen
373771c062 drivers: i3c: common: fix the setaasa flow
There is an incorrect dynamic address setting for setaasa. The correct
behavior is that the dynamic address should be assigned as a static
address only when the CCC request returns success. This commit fixes the
issue.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-03-07 20:24:04 +01:00
Alex An
fbb75862a1 drivers: retained_mem: Fix using multiple nRF retained memory regions
Fixes an error when using multiple nRF retained memory regions caused by
a missing separating comma.

Signed-off-by: Alex An <aza0337@auburn.edu>
2025-03-07 20:23:42 +01:00
Mathieu Anquetin
7282ea08e9 net: dhcpv4: fix deadlock issue
There is a deadlock issue when calling stop using address conflict
detection. This is due to the fact that some net_mgmt events are fired
and trigger the dhcpv4_acd_event_handler() with lock held even if they
are of no interest for this callback.

Therefore, before acquiring the lock, make sure the event we received
is one we are expecting.

Also, do the same for dhcpv4_iface_event_handler().

Signed-off-by: Mathieu Anquetin <mathieu.anquetin@groupe-cahors.com>
2025-03-07 20:22:58 +01:00
Kiara Navarro
3342ef3fa7 drivers: charger: unify log level
Instead of using CONFIG_LOG_DEFAULT_LEVEL, use explicitly charger log
level CONFIG_CHARGER_LOG_LEVEL for all hardware charger supported.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-03-07 20:22:52 +01:00
Peter Mitsis
abb5f11134 tests: Update ipi_optimize for x86_64 directed IPIs
Updates the ipi_optimize test to use 4 CPUs for qemu_x86_64.
This provides enough CPUs for the test to verify the recently
added directed IPI support for x86_64.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-07 20:22:40 +01:00
Peter Mitsis
427f2c60da kernel: arch: add directed IPIs to x86/intel64
Adds support for directed IPIs to x86/intel64. Use of direct IPIs
can further reduce the number of schedule IPIs sent and processed
in a system. Fewer IPI related ISRs mean that ...
 1. Application code is interrupted less frequently
 2. Lower likelihood of scheduler spinlock contention

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-07 20:22:40 +01:00
Jilay Pandya
d26396c556 drivers: sensor: shell: fix logically deadcode issue
sca finds the code to be logically dead considering the size of long
to be 4 bytes.
- Solution: use uint64_t type for the variable `value`.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:22:10 +01:00
Jilay Pandya
07fc70a697 drivers: usb_c: rt1715: fix uncheck return value cid issue
fix `gpio_add_callback` unchecked return value issue

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:21:22 +01:00
Kiara Navarro
737133a6df mgmt: ec_host_cmd: remove response leftovers
Remove `res` variable since it was not used in any part of `rx_timeout`
function.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-03-07 20:21:02 +01:00
Hank Wang
09d6197003 drivers: sensor: tmp1075: remove redundant module name in log message
The tmp1075 driver already registers a log module using
LOG_MODULE_REGISTER(TMP1075, CONFIG_SENSOR_LOG_LEVEL).
This ensures that all log messages are prefixed with "TMP1075".
The existing LOG_ERR message redundantly includes "tmp1075",
which is unnecessary.

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
2025-03-07 20:20:46 +01:00
Andy Ross
8b4ed6655a kernel: Clamp k_sleep() return value on overflow
k_sleep() returns a 32 bit count of milliseconds, as that was its
historical API.  But it now accepts a potentially 64 bit tick count as
an argument, leading to situations where an early wakeup will produce
sleep times that aren't representable.  Clamp this instead of
truncating to an arbitrary value.

Naive code will likely do the right thing with the large return (just
sleeping an extra round), and sophisticated apps can detect INT_MAX to
enable more elaborate retry logic.

(Also fixes a somewhat unfortunate puncutation error in the docs that
implied that it returns zero on early wakeup!)

Fixes: #84669

Signed-off-by: Andy Ross <andyross@google.com>
2025-03-07 20:20:25 +01:00
Guennadi Liakhovetski
57e8d5ecfb log: fix log_flush()
The logging thread is usually woken up by a timer, if the timer
period is longer than 10ms, log_flush() can iterate multiple times
needlessly, while waiting for the next timer. Instead wake up the
logging thread to let it flush the queue immediately. Besides a
hard-coded polling period of 10ms is too long for some applications,
make it a Kconfig parameter.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-03-07 20:20:00 +01:00
Carlo Kirchmeier
4eb917f884 test: net: http: Add compression support in HTTP server
Add tests verifying the functionality of the newly added
accept-encoding based compression support.

Signed-off-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
2025-03-07 20:19:44 +01:00
Carlo Kirchmeier
3d1370f094 net: http: Add compression support in HTTP server
Add compression support using the accept-encoding
header to the http server static filesystem resource.

Signed-off-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
2025-03-07 20:19:44 +01:00
Ying Zhang
6b16d10342 drivers: Bluetooth: nxp: not power off BLE controller when bt disable
remove the power off BLE controller function since the hci_reset cmd
is enough, also for wifi-ble coex scenario, need to maintain BLE controller
for some info in SMU region

Signed-off-by: Ying Zhang <ying.zhang_2@nxp.com>
2025-03-07 20:19:14 +01:00
Lyle Zhu
1aa88f86b8 Bluetooth: SDP: Ignore the unexpected response
The response should not be handled if there is not a request has been
sent.

Ignore the response if the `session->param` is `NULL`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 20:18:51 +01:00
Lyle Zhu
86b765c0a9 Bluetooth: SDP: Ignore unsupported UUID
In current implementation, if the UUID of request is unknown, the
local variable `u` will not be updated, and the unknown UUID `u`
is used as the target to search it in the SDP record list. It may
result in irrelevant record being replied to the requester.

Ignore the unsupported UUID to fix the issue.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 20:18:31 +01:00
bac phan
7026f113d6 net: http: Add #ifdef guard file system in HTTP server
http_server_http2.c does not guard check if file system is available
or not before using file system api. This PR will add guard for that

Signed-off-by: bac phan <phanhaibac98@gmail.com>
2025-03-07 20:18:04 +01:00
Jilay Pandya
1f1bec86f3 drivers: stepper: shell: add stop function
Add stop function to stepper shell. align the function order to match
the one in __subsystem stepper_driver_api struct

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:17:38 +01:00
Jilay Pandya
99cce692c2 drivers: stepper: gpio: implement stop function
Implement sample stop function and update enable function

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:17:38 +01:00
Jilay Pandya
2cd5a373a1 drivers: stepper: api: add stop function
add stop function
update enable & set_interval specification

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:17:38 +01:00
FILLIOT Louis
c77127d657 Bluetooth: hci: added h4_close function
Inside the hci driver API in h4.c, there were no
API function allowing to close the bluetooth
interface, as there were close function defined
for other bluetooth hci driver.

The function disables Bluetooth reception and
sending, and calls a weak function allowing
to implement user specific behaviors
while shutting down bluetooth interface

Signed-off-by: FILLIOT Louis <l.filliot@lacroix.group>
2025-03-07 20:17:10 +01:00
Lyle Zhu
7ec9f58b66 Bluetooth: SDP: Fix the error if continuation length is not 0
When the continuation length is not 0, there is a reported error.

In current implementation, the total length is only valid only when
the frame is the first block of the SDP response. For following
continuous frame, the total length is 0.

So, change the condition to `(total != 0 && frame_len > total)`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 20:16:38 +01:00
Arunmani Alagarsamy
3fd0fe9f14 boards: silabs: radio_boards: Add silabs board support for BRD4180B board
Added board support for the Silicon Labs MG21 BRD4180B radio board

Signed-off-by: Arunmani Alagarsamy <arunmani.a@capgemini.com>
2025-03-07 20:13:04 +01:00
Alberto Escolar Piedras
1f7fe49378 samples/net: Misc native_posix naming cleanup
Replace a few references to native_posix / the native_posix ethernet
driver with native_sim, or native_tap.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:38 +01:00
Alberto Escolar Piedras
78f800642a drivers/ethernet/eth_native_posix: Rename to eth_native_tap
Rename this driver to eth_native_tap, including renaming all its
options.
The old options remain until v4.4, but as deprecated.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:38 +01:00