Commit graph

136,983 commits

Author SHA1 Message Date
Sylvio Alves
5e43b5f1bc maintainers: add Espressif ESP-AT command driver entry
Add the ESP-AT command driver (drivers/wifi/esp_at) under the
Espressif Platforms section to ensure proper maintainer coverage.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-03-23 10:39:27 -04:00
Deepika R
200dfcd663 tests: drivers: gpio: Add overlay to test basic_api
- Add a board-specific devicetree overlay
  to support the GPIO basic API test.

Signed-off-by: Deepika R <deepika@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-03-23 10:39:15 -04:00
Surya Prakash T
9e59bfe9f4 tests: drivers: pwm: Add overlay to test pwm_api
- Add a board-specific devicetree overlay to enable
  the PWM API test suite.

Signed-off-by: Surya Prakash T <suryat@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-03-23 10:38:44 -04:00
Etienne Carriere
5336ef4230 boards: st: stm32h5f5j_dk: reorder supported tags in board YAML file
Reorder supported tags in stm32h5f5j_dk board YAML file for
convenience regarding future changes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-03-23 10:38:33 -04:00
Etienne Carriere
6183fad9c4 boards: st: stm32h5f5j_dk: default disable dac1 and fdcan3
Default disable dac1 and fdcan3 nodes in stm32h5f5j_dk board since they
respectively conflict with the pin muxing for spi1 and adc3.

Add a board overlay file for DAC driver tests and samples to enable
dac1 and disable spi1.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-03-23 10:38:33 -04:00
Etienne Carriere
ba1913ab3b dts: arm: st: h5: rename H5E/H5F sram* node labels
Rename stm32h5e/h5f SRAMs node labels in the SoC DTSI files to better
match the SRAMs names in the literature.

Update stm32h5f5j_dk board accordingly.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-03-23 10:38:33 -04:00
Francois Ramu
455d4e2940 dts: arm: stm32h5 have a uart9 peripheral
Restore the UART9 node on the stm32h5e/f series.
The instance exists like on other stm32h5 devices.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2026-03-23 10:38:11 -04:00
Szymon Janc
49edc839d2 bluetooth: host: Allow to tune L2CAP RTX timer value
This allows to tune L2CAP RTX timer value for L2CAP connection
requests. Allowed range is 1-60 seconds while defaults to 40.
Since this is mainly useful for BI (behavior invalid) qualification
tests allows to tune it only if BT_TESTING is selected.

This is required for running L2CAP/COS/CED/BI-29-C qualification
test in reasonable time since it requires 255 iterations of
failed (timed out) connection requests.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2026-03-23 10:37:57 -04:00
Szymon Janc
8617f73e16 bluetooth: host: Fix typo in Kconfig.l2cap description
This is for L2CAP options.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2026-03-23 10:37:57 -04:00
Jamie McCrae
de7331d1c3 dts: vendor: nordic: Fix typo of dts name
Fixes a typo, from flash to rram

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-03-23 10:37:45 -04:00
Joel Guittet
d8bdf78147 samples: aws iot mqtt: fix error log
The error log was obvisouly copied from previous lines, fixing the error
log when adding the ca certificate fails.

Signed-off-by: Joel Guittet <jguittet@witekio.com>
2026-03-23 10:37:36 -04:00
Guillaume Gautier
eadb255c75 drivers: adc: use the new injected support property in the driver
Use the new has-injected-support property in the Kconfig instead of
filtering on series directly, and use it also in the driver to return an
error if a specific instance doesn't support injected (this is the case
for STM32U5 where ADC1 and 2 support injected, but not ADC4).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
ade2271414 dts: arm: st: add the new injected support property to dtsi
For all STM32 ADC instances that support the injected channel feature, add
the newly created property to indicate that.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
19c5383581 dts: bindings: adc: stm32: add property to indicate injected support
Add a property to the STM32 ADC bindings to indicate whether the ADC
instance supports the injected channel feature.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
4f380fa0da doc: releases: 4.4: add the new api for adc sequence priority
The ADC has a new API to enable sequence priority
(Kconfig + struct member).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
2c1df7954d tests: drivers: adc_api: add a test for injected channels
Add a test for injected channels. The test first starts a regular
asynchronous sampling of several channels, then starts an injected
sampling. The test checks that both the regular and injected samplings
run without issues.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
af227cc6ed drivers: sensor: stm32_vref: add injected mode support
Add injected mode support for STM32 Vref sensor.
When in injected mode, this configures the sensor channel and sensor enable
bit at start to prevent any conflict later: some registers can't be written
while a conversion is on-going.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
8c63f42d14 drivers: sensor: stm32_vbat: add injected mode support
Add injected mode support for STM32 Vbat sensor.
When in injected mode, this configures the sensor channel and sensor enable
bit at start to prevent any conflict later: some registers can't be written
while a conversion is on-going.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
edecb7a735 drivers: sensor: stm32_temp: add injected mode support
Add injected mode support for STM32 temperature sensor.
When in injected mode, this configures the sensor channel and sensor enable
bit at start to prevent any conflict later: some registers can't be written
while a conversion is on-going.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
6d664ea6bf drivers: adc: stm32: do not stop conversion unconditionally
In order to write into some ADC registers, it is necessary to have no
on-going conversions (either regular, injected, or both). Until now, each
time such a write was needed, the ADC was disabled unconditionally,
stopping any potential on-going conversion.

With the introduction of the injected mode, this could lead to problems
if for example an injected is configured differently than a running
regular one. In that case it would stop the regular conversion. If the
application is waiting the result before starting another one, it will be
stuck waiting forever.

To avoid cases like this, return an error rather than stopping conversion
and disabling the ADC. This reworks many functions to return an error in
case it was not possible to safely disable the ADC.

It stays possible to force an ADC disable even though a conversion is
running, this is useful at init where we don't want this to fail.

This also creates a dedicated function for the preselection register to
avoid duplication.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
a9f59076e0 drivers: adc: stm32: add injected mode support
Add injected mode support for STM32 ADC driver. To avoid potential
conflicts when configuring the ADC registers, some settings (like presel)
are moved into the channel_setup function when injected is enabled.

Also configures an ISR when DMA and injected mode are enabled. The reason
is that DMA is not available for injected sequence, so an ISR is still
necessary in this case.

Factorizes the "start_read_xxx" functions to avoid needless duplication
between sync/async and regular/injected mode.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Guillaume Gautier
d739f1c8c4 include: zephyr: drivers: adc: add sequence priority
Add sequence priority support in the ADC API.
The priority assigned to a sequence reflects how time-sensitive it is
compared to other sequences. The number of priority levels supported
and the exact behavior obtained by assigning a specific priority to a
sequence are hardware-specific.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-03-23 10:37:18 -04:00
Dharun krithik k
44ace049cd boards: cy8cproto_041tp: Update supported peripherals list
Add SPI, I2C, ADC, counter, watchdog, PWM, and flash to the
supported features in board YAML.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
2026-03-23 09:04:24 -04:00
Michał Bogdziewicz
d456ef71a5 runners: probe-rs: migrate to standard --file/--file-type interface
The runner always selected elf_file, ignoring hex_file and bin_file from
RunnerConfig. This broke MCUBoot support since the bootloader
requires hex/bin format and the build system sets hex_file to
signed images (zephyr.signed.hex).

Fixes commit 3c7d973 ("west: runners: probe-rs: Add enhanced
functionality")

Signed-off-by: Michał Bogdziewicz <michal@bogdziewicz.xyz>
2026-03-23 08:58:33 -04:00
Ayush Singh
d6763fcaff boards: native: native_sim: Add node-label to leds
- leds node is a led device, and can be used in tests. So add a
  node-label to it.
- I personally want to use it in basic greybus [0] lights protocol tests.

[0]: https://docs.zephyrproject.org/latest/develop/manifest/external/greybus.html

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2026-03-23 08:57:53 -04:00
TOKITA Hiroshi
0c6b6de684 samples: i2s_codec: Add support for M5Stack CoreS3
Add configuration files for supporting M5Stack CoreS3/SE.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-03-23 08:57:03 -04:00
TOKITA Hiroshi
4072e0cebd boards: m5stack: cores3: Add configuration for AW88298
Adding configuration for enabling AW88298.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-03-23 08:57:03 -04:00
TOKITA Hiroshi
9835d4b727 drivers: audio: Add Awinic AW88298 digital amplifier
Add a driver for supporting Awinic AW88298.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-03-23 08:57:03 -04:00
Daniel Leung
3ab79f4b5a tests: kernel/gen_isr_table: skip cdns_swerv for RISC-V tests
The arch.interrupt.gen_isr_table_local.riscv test requires
CLIC/PLIC to work correctly. Since SweRV series SoCs do not
have CLIC/PLIC, the tests cannot run at this point. So skip
these tests for now so CI won't report failures on these.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
853a641ac5 tests: kernel/mem_protect: shorten wait for syscall stress test
Shorten the delay to run the syscall stress test on whisper
simulator, as simulator is a lot slower compared to real
hardware.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
d296db76c5 tests: kernel/context: skip idle test for whisper
The whisper simulator does not have a working implementation
for wfi instruction and simply treats it as no-op. Therefore,
any CPU idle test will fail as wfi returns immediately. So
skip those tests.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
d82b89985c tests: kernel/interrupt: skip shared IRQ tests for cdns_swerv
Whisper simulator does not support writing to MIP register
to trigger interrupts. Also the external PIC interrupt
controller also do not support manually triggering
interrupts. So exclude these platforms from the shared
interrupt tests.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
491967e70e boards: add cdns_swerv/s420_64/whisper
This adds a new board utilizing the SweRV S420 64-bit variant to
run on the Whisper simulator.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
6cefcddc5d boards: cdns_swerv/s400: extend to test PMP capability
Extend the cdns_swerv/s400 board to test PMP capability on
whisper. Although S400 technically does not advertise PMP
support, we are simply using it as a base to make sure PMP
works.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
48d31e1cff boards: cdns: support for Cadence SweRV S420 on whisper
This adds the bits to support Cadence SweRV S420 SoC running
on the whisper simulator.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
0b9c03b880 soc: cdns/swerv: add support for S420
This adds support for Cadence SweRV S420 SoC which is similar
to S400 but with support for 2 threads.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
bf1e19e582 board: add configs for Cadence SweRV S400
This adds board configs for the simulator target for
Cadence SweRV S400 SoC.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
9a1e76b193 soc: add support for Cadence SweRV S400
This adds SoC config for Cadence SweRV S400 SoC.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
f225fd06e9 twister: add support for whisper simulator
This adds support for running with whisper simulator under
twister.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
2fe13e53ab cmake: emu: add support to run whisper
This adds the bits to support running whisper as simulator
so that we can do west build with debug and run targets.
The simulator is used for simulating SweRV SoCs.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
c32c608615 console: add driver for consoleio in Whisper simulator
This adds a very simple output only console driver for
the consoleio provided by Whisper ISS for simulating
SweRV SoCs.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
f6732f209d boards: add kconfigs for whisper simulator
This adds some kconfigs when the whisper simulator is used
for emulated environment.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
2cc49a0685 intc: swerv: use sys_read32/write32 instead of...
...relying on direct pointer access. This avoids compiler
complain about casting to pointer from integer of
different size.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
e229e9edf9 intc: swerv: make RISCV_MAX_GENERIC_IRQ into kconfig
There is a macro RISCV_MAX_GENERIC_IRQ in the code which is not
defined anywhere. The assumption is that this would come from
the SoC configuration. However, since we have been moving away
from including soc.h in drivers, instead we introduce another
kconfig CONFIG_SWERV_PIC_MAX_GENERIC_IRQ for this.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
1a39517ba2 dts: rename swerv,pic.yaml to cdns,swerv-pic.yaml
The SweRV naming is under Cadence now so rename to have
a proper vendor prefix, and removes the EH1 naming as
this can be used for multiple family of SoCs.

The old compatible "swerv,pic" can still be used but
cannot be used together with "cdns,swerv-pic".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Daniel Leung
009262bdbf intc: move SweRV kconfig into its own file
Move the SweRV interrupt controller kconfig into its own file.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-03-23 08:56:34 -04:00
Maximilian Zimmermann
69e2ab8152 Bluetooth: TBS: clear pending GTBS notifications on disconnect
Add missing notification clearing for the GTBS instance
in the disconnected callback.

Fixes #104568

Signed-off-by: Maximilian Zimmermann <gitmz@posteo.de>
2026-03-23 08:56:23 -04:00
Hanliang Xu
baaf8fb0b4 Bluetooth: TBS: Clear pending notifications on unsub
If the client removes its subscription to any of the TBS
characteristics at any time, the pending appropriate flags
are now being cleared.

Fixes zephyrproject-rtos/zephyr#104511

Signed-off-by: Hanliang Xu <leonxu2004@outlook.com>
2026-03-23 08:56:14 -04:00
Emil Gydesen
4cf2cc054d Bluetooth: BAP: Dont attempt disconnect on detach
This removes dead code. Since bt_bap_stream_detach sets
stream->ep = NULL then the call to bt_bap_stream_iso_chan_get
will always return NULL since stream->ep is NULL, and thus
the call to bt_bap_stream_disconnect would always be a no-op.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-03-23 08:56:05 -04:00
Emil Gydesen
e5c2c9ec68 samples: Bluetooth: Audio: Spring cleaning
Add missing header files, remove unused header files,
fix typos and missing static.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-03-23 08:55:55 -04:00