- Add DTS for MAX32664C
- Add driver for MAX32664C
- Add example for MAX32664C Heart rate measurement with Bluetooth
- Add private attributes and channels for health measurement
Closes: #93473
Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
Enable nxp micfil sample with 'CONFIG_USE_DMIC=y',
you can hear the voice played from the on-board micphone.
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
Product photo from https://learn.adafruit.com/assets/91880
Tested with the command in the index.rst file.
Compile testing of the overlay file is done with the
samples/sensor/pressure_polling sample.
Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
Previous commit made the input buffer of the hash packet constant.
Let's therefore adapt typing where used, and remove inappropriate
casts of constant buffers to non-constant ones.
All the "backend" hashing functions already take a constant input,
these changes only affect the "plumbing" between the Zephyr crypto
API and the actual implementation where applicable.
Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
Adding files to allow running the following samples for the
Infineon HPPASS SAR ADC driver on the PSOC C3 family of MCUs:
* samples/drivers/adc_dt
* samples/drivers/adc_sequence
Signed-off-by: John Batch <john.batch@infineon.com>
Add some content in the testusb sample's README to provide a few more hints
that can be handy for USB newcomers trying to get the sample running along
with testusb.
Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
The benchmark_sync test produces incorrect results on SMP systems due to
a race condition between the producer thread and subscriber threads that
only occurs with parallel execution.
Thread configuration:
- Producer thread: priority 5 (lower priority, runs later)
- Subscriber threads (8): priority 3 (higher priority, runs first)
Expected behavior on uniprocessor:
1. Producer publishes message
2. Subscriber immediately preempts producer (priority 3 < 5)
3. Subscriber processes message, calls atomic_add(&count, 256)
4. Producer resumes, continues to next message
Result: All messages counted before producer checks final count.
Race condition on SMP:
CPU 0 (Producer): CPU 1-3 (Subscribers):
----------------- ----------------------
Publish msg 1
k_msgq_put(sub1) ✓
k_msgq_get() → processing
Publish msg 2
k_msgq_put(sub2) ✓
k_msgq_get() → processing
...continues...
Publish msg 128 ✓
atomic_get(&count) Still processing...
→ Reports incomplete count! atomic_add() comes later
On SMP, the producer doesn't get preempted since it runs on a different
CPU from the subscribers. It races ahead and checks atomic_get(&count)
while subscriber threads on other CPUs are still processing messages.
Observed results:
- Non-SMP: Bytes sent = 262144, received = 262144 ✓
- SMP: Bytes sent = 262144, received = 260352 ✗ (7 messages lost)
This is a benchmark test design issue, not a zbus bug. The test assumes
subscribers complete before the producer finishes, which doesn't hold on
SMP systems. Filter SMP configurations from this test variant for now.
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
The "_too_small" test variants intentionally configure an isolated buffer
pool with only 2 buffers to validate proper error handling when the pool
is exhausted during notification of 16 msg_subscriber observers. These
tests are likely to fail on SMP systems due to a buffer recycling race
condition:
Expected behavior (uniprocessor):
Publisher Thread:
1. Allocate buf1 for bar_msg_sub1 ✓
2. k_fifo_put(sub1_fifo, buf1)
3. Allocate buf2 for bar_msg_sub2 ✓
4. k_fifo_put(sub2_fifo, buf2)
5. Try allocate buf3 for bar_msg_sub3 → FAIL -ENOMEM
Subscriber threads process messages after notification completes,
pool exhausts at subscriber #3 as expected.
SMP race condition:
CPU 0 (Publisher): CPU 1 (bar_msg_sub1): CPU 2 (bar_msg_sub2):
------------------ --------------------- ---------------------
Alloc buf1 ✓
k_fifo_put(sub1, buf1)
k_fifo_get() → buf1
zbus_sub_wait_msg()
net_buf_unref()
→ buf1 FREED!
Alloc buf2 ✓
(reuses buf1!)
k_fifo_put(sub2, buf2)
k_fifo_get() → buf2
net_buf_unref()
→ buf2 FREED!
Alloc buf3 ✓
(reuses buf1 again!)
...continues...
All 16 allocations succeed!
On SMP systems, subscriber threads on other CPUs may consume and free
buffers quickly enough that they are recycled back to the pool before the
publisher's notification loop can exhaust it. The test's assumption that
notification completes before subscribers run does not hold with parallel
execution.
Since this is a test design limitation (not a zbus bug), filter SMP
configurations from these specific test variants rather than attempt to
artificially slow down subscribers or change thread priorities.
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Adds support for the USB device binding for MCTP. Binding created based on
the DMTF specification for USB Transport Binding. The overall design of
this binding follows the existing UART and I2C+GPIO bindings that already
exist in Zephyr.
Signed-off-by: Eric Ocasio <eric.ocasio@nxp.com>
Boards that use MCUboot to start XIP from external flash default to
CONFIG_CANOPENNODE_PROGRAM_DOWNLOAD=y. However, in the no_storage
sample, dependencies such as CONFIG_FLASH are disabled. This causes
build errors. Work around this by explicitly disabling program download
in the no_storage sample configuration.
Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
Add board files for nRF54LM20A/ns.
Update existing nRF54LM20A board files to support this.
Signed-off-by: Dag Erik Gjørvad <dag.erik.gjorvad@nordicsemi.no>
Pass on the board revision to remote image build if specified for the
application image board target.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Remove the prompt for REMOTE_BOARD.
REMOTE_BOARD should not be having a prompt or be configurable on command
line.
Instead REMOTE_BOARD should be defined based on the SoC as this will
allow creation of new boards using the same SoC, and thereby be able
to build the sample out-of-the-box for any supported SoC.
This allows us to remove several single line config files.
For SoCs with more than two CPU clusters, such as the nRF54h20, then a
choice is provided to select specific core.
Remove the REMOTE_BOARD restriction, as this sample will build and run
even for single core SoCs, and may be useful for testing other sysbuild
multi-image features even for single cores SoCs.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
The number of file/socket descriptors is now determined by
CONFIG_ZVFS_OPEN_ADD_SIZE_* options and the networking side
already sets the minimum values so the CONFIG_ZVFS_OPEN_MAX
option is not needed.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Remove unneeded CONFIG_ZVFS_OPEN_MAX config option as it is now
controlled by number of net_context i.e., CONFIG_NET_MAX_CONTEXTS
Some of the samples now use CONFIG_ZVFS_OPEN_ADD_SIZE_NET_SAMPLE
to specify the sample socket needs.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Add openamp_rsc_table support on imx93evk Cortex-M33, communication
with Linux which runs on imx93 Cortex-A55.
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Enable i2s_codec samples for frdm_mcxn236.
With 'CONFIG_USE_DMIC=n', you can hear the sine wave
from the codec.
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
Product photo from https://learn.adafruit.com/assets/86994
Tested with the command mentioned in the index.rst file.
Compile testing of the overlay file is done via the mag_polling
sample.
Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
1. The updated regex better matches device names
for various temperature sensors. If a device name
contains hyphens, the new regex can match it.
2. enable rt700 die_temp_polling sample
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
Use of the `sensor get` help. No channel provided allows the sensor_shell
to iterate through every channels. Getting the last channel gives the last
channel index and therefor the channel count. Provide futur proofing for
new channels.
Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
The max30101 sensor driver doesn't support triggers.
Add `.trigger_set` API and corresponding Kconfig and
device tree parameters. Add `SENSOR_CHAN_AMBIENT_LIGHT`
and `SENSOR_TRIG_OVERFLOW`.
Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
The max30101 sensor driver doesn't support multiple instance.
Update Kconfig and maxim,max30101.yaml for instance based
configuration. Propagate changes over existing files.
Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
This commit enhances DNS upstream resolver functionality by adding
support to query for PTR and SRV records.
Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
Updatehub now only use PSA Crypto API for crypto support and it
automatically enables Mbed TLS when TF-M is not available in the build,
so there is no need for neither a specific test case for PSA nor
the overlay file.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
RA boards
Add samples test support for RTC driver on these Renesas RA boards:
- ek_ra8m1
- ek_ra8d1
- ek_ra8p1
- ek_ra4l1
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
The zephyr:code-sample directive automatically adds a link to the sample
source code on GitHub -- remove all manually added links that are just
redundant and subject to bitrot / copy-paste errors.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
CONFIG_XOPEN_STREAMS does not follow the pattern of other XSI Option
Groups, where the Option Group name is not the same as the feature
test macro that indicates it is supported by the implementation.
Deprecate CONFIG_XOPEN_STREAMS and rename it to CONFIG_XSI_STREAMS.
For more information, please see
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/\
V1_chap02.html#tag_02_01_05_09
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
As CONFIG_BUILD_ONLY_NO_BLOBS feature is not implemented for
stm32wbax socs, we have temporarily excluded
nucleo_wba65ri platform from CI build tests.
Issue https://github.com/zephyrproject-rtos/zephyr/issues/95495
will be updated accordingly
Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
Product photo from https://learn.adafruit.com/assets/99220
with the license CC BY-SA 3.0
The bindings file for the sensor does not give any guidance on the
"repeatability" property, so I did choose "high".
Tested with the SHT40 and SHT41 shields (not SHT45).
Compile-testing of the overlay file is done via the dht_polling sample.
Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>