Commit graph

136,983 commits

Author SHA1 Message Date
Jose Alberto Meza
c07a731624 samples: drivers: espi: Create common Intel RVP device tree binding
Binding required does not need to be EC vendor-specific,
it simply requires 2 board GPIOs definition.

Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
2026-02-24 10:37:34 +01:00
Muhammad Waleed Badar
e72548da43 soc: broadcom: bcm2711: add missing soc header
Add missing SoC header for the Broadcom BCM2711.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-02-24 10:36:57 +01:00
Muhammad Waleed Badar
4450fc91c6 dts: broadcom: move pinctrl config from boards
Relocate common pinctrl setup to the SoC level so it can be
reused by multiple boards and kept consistent.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-02-24 10:36:57 +01:00
Yassine El Aissaoui
0ec724838d soc: mcxw: Add Power management support on connectivity apps
- Update low power state exit latency to match SDK
- Enable NBU wakeup source
- Configure 32MHz crystal osc
- Shutdown NBU when it's not used

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2026-02-24 10:36:04 +01:00
Laurentiu Mihalcea
c92c8ab461 firmware: scmi: core: merge send_message() logic
Currently, scmi_send_message()'s logic is split across two functions,
each of which handling either polling or interrupt-based reply waiting.
Since the two functions are pretty much similar, merge them together in
a single scmi_send_message() function, which is able to handle both wait
startegies.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2026-02-24 10:35:07 +01:00
Laurentiu Mihalcea
28575ad1c0 firmware: scmi: move polling logic to transport layer
So far, the SCMI core has been in charge of enabling/disabling the "poll
for message reply" logic by directly using functions from MBOX/SHMEM.
This behavior should be abstracted away by a simple transport layer
send_message() function, with the SCMI core not having to know (or care)
about which kind of transport is being used.

To fix this problem, move the polling logic to the transport layer. Now,
based on the value of the "use_polling" parameter propagated from the SCMI
core, SHMEM will set/clear the interrupt-related bit from the flags
portion of the SHMEM area.

Note that now we only alter the state of the SHMEM flags with the MBOX
interrupts being enabled at all times. This should be enough to signal
the SCMI platform that the agent is not interested in receiving interrupts
whenever polling is enabled.

This commit is part of #102904.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2026-02-24 10:35:07 +01:00
Laurentiu Mihalcea
d9db1a9516 firmware: scmi: shmem: add "use_polling" parameter
Add a new parameter to SHMEM's write_message() functon, which is meant to
allow it to perform the required configuration whenever the SCMI stack
(via the SCMI transport layer) wishes to poll for the reply.

For now, don't implement any logic related to this. Thus, no functional
change.

This commit is part of #102904.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2026-02-24 10:35:07 +01:00
Laurentiu Mihalcea
aad91d7fe9 firmware: scmi: transport: add "use_polling" parameter
Add a new parameter to the transport layer's send_message() function,
which is meant to allow it to perform the required configuration whenever
the SCMI stack user (via the SCMI core layer) wishes to poll for the
reply.

For now, don't implement any logic related to this. Thus, no functional
change.

This commit is part of #102904.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2026-02-24 10:35:07 +01:00
Thinh Le Cong
39464beb8e tests: drivers: comparator: Add test support for fpb_ra8e1
Add test support for fpb_ra8e1 on gpio_loopback test

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
8fa09f3d73 tests: drivers: spi: Add test support for fpb_ra8e1
Add support sci b spi test for Renesas fpb_ra8e1:
- tests/drivers/spi/spi_loopback
- tests/drivers/spi/spi_controller_peripheral

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
eb9ecbb7ac tests: drivers: i2c: Add test support for FPB-RA8E1 board
Add FPB-RA8E1 test support for tests/drivers/i2c/i2c_api

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
30eae94943 tests: pm: power_mgmt_soc: Enable tests on FPB-RA8E1
Enable SoC power management on FPB-RA8E1 RA board

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
ad158f7d45 tests: boards: renesas: Add ELC test support for fpb_ra8e1
Add ELC test support for Renesas fpb_ra8e1

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
3759099b54 tests: drivers: flash: Add tests support for Renesas fpb_ra8e1
Add support for test app on Renesas fpb_ra8e1:
- tests/drivers/flash/common

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
4215a37b37 tests: drivers: dma: Add tests support for Renesas fpb_ra8e1
Add support for test app on Renesas fpb_ra8e1:
- tests/drivers/dma/chan_blen_transfer
- tests/drivers/dma/loop_transfer

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
ca29de4974 tests: drivers: adc: Add tests support for Renesas fpb_ra8e1
Add support for test app on Renesas fpb_ra8e1:
- tests/drivers/adc/adc_accuracy_test
- tests/drivers/adc/adc_api

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
404e81e58f tests: drivers: counter: Add test support for Renesas fpb_ra8e1
Add support for test app on Renesas fpb_ra8e1:
- tests/drivers/counter/counter_basic_api

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
72e704cfbe tests: drivers: pwm: Add test support for Renesas fpb_ra8e1
Add support for test app on Renesas fpb_ra8e1:
- tests/drivers/pwm/pwm_api
- tests/drivers/pwm/pwm_loopback

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
681d2aa058 tests: drivers: spi: Add test support for fpb_ra8e1
Add support for test app Renesas fpb_ra8e1:
- tests/drivers/spi/spi_loopback
- tests/drivers/spi/spi_controller_peripheral

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
0c4eab4c6b tests: drivers: uart: Add test support for fpb_ra8e1
Add support for test app on Renesas fpb_ra8e1:
- tests/drivers/uart/uart_async_api

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
dcda778708 samples: boards: renesas: Add comparator sample support for fpb_ra8e1
Add comparator sample support for fpb_ra8e1 board

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
b295e27b2e samples: boards: renesas: Add ELC sample support for fpb_ra8e1
Add ELC sample support for Renesas fpb_ra8e1

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
48314fe3dd samples: drivers: adc: Add sample support for Renesas fpb_ra8e1
Add support for sample apps on Renesas fpb_ra8e1 board:
- samples/drivers/adc/adc_dt

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
b38dbd0a06 samples: drivers: dac: Add sample support for Renesas fpb_ra8e1
Add support for sample app on Renesas fpb_ra8e1:
- samples/drivers/dac

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
303ed5f586 samples: drivers: counter: Add sample support for Renesas fpb_ra8e1
Add support for sample app on Renesas fpb_ra8e1:
- samples/drivers/counter/alarm

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Khai Cao
f021a552ad boards: renesas: Add board support for Renesas fpb_ra8e1
Add board layer support for Renesas fpb_ra8e1 board

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
3cd102b056 dts: arm: renesas: Add dts support for Renesas RA8E1 SoC series
Add dts support for Renesas RA8E1 SoC series

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
f615de0c71 dt-bindings: misc: Add ELC enum dts binding for RA8E1 SoC
Add RA8E1 SoC's ELC signal enums for devicetree bindings

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-02-24 10:34:05 +01:00
Thinh Le Cong
ed5dbe6041 soc: renesas: ra: Add support for Renesas RA8E1 SoC series
Add support for Renesas RA8E1 SoC series

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-02-24 10:34:05 +01:00
Khai Cao
0e370f30cc manifest: update revision for hal_renesas
Update revision of hal_renesas to get RA8E1 support

Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-02-24 10:34:05 +01:00
Jilay Pandya
b0714aa4ce doc: stepper: address api & dt-bindings renaming
address api and dt-bindings related changes in stepper
documentation and migration-guide.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-02-24 10:32:31 +01:00
Jilay Pandya
6ccef4d773 drivers: stepper: rename dt-bindings
stepper-ctrl is used as suffix for motion control drivers
stepper-driver is used as suffix for stepper drivers in mfd devices

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-02-24 10:32:31 +01:00
Jilay Pandya
dc934c36be drivers: stepper: split stepper.h and rename apis
rename stepper_drv_driver_api to stepper_driver_api
rename stepper_driver_api to stepper_ctrl_driver_api

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-02-24 10:32:31 +01:00
Stephen Stauts
28793caf82 maintainers: Add kyberdin as collaborator on nRF Ironside SE
Add kyberdin to nRF Ironside SE platform.

Signed-off-by: Stephen Stauts <stephen.stauts@nordicsemi.no>
2026-02-23 13:36:19 -06:00
Gaetan Perrot
5787423351 drivers: audio: Check return value of reset GPIO configuration
Verify the return value of gpio_pin_configure_dt() when configuring
the codec reset GPIO.

Previously, failures during GPIO configuration were ignored, which
could leave the codec in an undefined state while the initialization
sequence continued.

Propagate the error to the caller to ensure proper failure handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-02-23 13:35:58 -06:00
Andrej Butok
917254cd0f boards: nxp: frdm_mcxw72: Enable MCUboot
Adds partitions required for MCUBoot enablement for FRDM-MCXW72.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2026-02-23 13:35:43 -06:00
Filip Stojanovic
52ec4ad339 drivers: sensor: adi: Add ADE7978 polyphase energy metering IC support
Add initial support for Analog Devices ADE7978 isolated energy
metering IC for polyphase shunt meters.

The driver implements the Zephyr sensor API and provides:
- SPI communication (read/write 8/16/32-bit registers)
- Phase A RMS current measurement (SENSOR_CHAN_CURRENT)
- Phase A RMS voltage measurement (SENSOR_CHAN_VOLTAGE)
- Device Tree bindings

This is an initial minimal working implementation. Future enhancements
will include:
- Multi-phase support (Phase B, C, Neutral)
- Active and reactive power measurement
- Interrupt support
- Calibration API

Signed-off-by: Filip Stojanovic <filipembedded@gmail.com>
2026-02-23 13:35:01 -06:00
Tom Burdick
25074f3f93 rtio: Split header into logical components
Much like the kernel or llext, rtio.h had become quite large though the
concepts and data types are not.

Restructure the headers into logically grouped components.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2026-02-23 13:34:04 -06:00
Philémon Jaermann
88dec6661f drivers: gnss: Add a u_blox folder
To move the u_blox* related drivers.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
14eecbfced drivers: gnss: Simplify NMEA output proto disabling
For the F9P, we can use the UBX_KEY_UART1_PROTO_OUT_NMEA rather than
individually disabling all the messages.

For the m8, the NMEA output is already disabled when the CFG-PRT is done
from the u_blox_iface_init.
But this is not necessarily done in case the expected baudrate is already
set.
Let's keep the individual NMEA disabling for M8.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
10e3c840be drivers: gnss: MODEM_UBX is selected by U_BLOX_PROTOCOL
Be consistent and use that.
Only select the U_BLOX_PROTOCOL, the MODEM_UBX comes from the indirection.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
740c56d750 drivers: gnss: Use the common interface for the f9p/m8 drivers
The common interface can now be used by both drivers, use it.

select GNSS_U_BLOX to have access to the GNSS_U_BLOX_SATELLITES_COUNT
and the GNSS_U_BLOX_RESET_ON_INIT.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
82785b7092 drivers: gnss: Extend the cfg struct to handle the reset gpios
And add the reset on init if the Kconfig switch is selected.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
496e8c4b34 drivers: gnss: Add a GNSS_U_BLOX switch and a u_blox_common
GNSS_U_BLOX should be selected by u-blox receiver to have access to the
common configuration, which for now is only the number of satellites to
store and the reset on init functionality.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
f8b074f2c8 drivers: gnss: Do a version poll before trying to reconfigure baudrate
No point in doing the baudrate configuration dance if the receiver is
already in the desired baudrate.
Only do the baudrate_configuration if trying to get the version failed.

Introduce a private msg_get() API which can take the timeout/retry_count
because the previously existing u_blox_iface_msg_get() hardcodes the
timeout to 3s with some retries which would be very wasteful to use if
the receiver is not in the expected baudrate as we would timeout.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
80f31425bf dts: bindings: Add a u-blox,common.yaml
Use it from both the M8/F9P.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
795cfce286 drivers: gnss: Extend the iface_init with valset_supported
Used to configure the baudrate with the more modern UBX-CFG-VALSET
if supported, and falling back on UBX-CFG-PRT otherwise.

Adding the UART1 related configuration keys.
Just using the baudrate one, relying on the other default parameters.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Philémon Jaermann
bbc1cb0b70 drivers: gnss: Introduce gnss_u_blox_iface.c/h
This gnss_u_blox_iface will be used by the gnss_u_blox_f9p.c and
gnss_u_blox_m8.c drivers.
Those two drivers currently define their own APIs which are
extremely similar.

The struct u_blox_iface_config is taken from the m8 flavor, as it allows
for baudrate configuration (while the f9 flavor requires the UART and the
receiver configuration to be the same).

The struct u_blox_iface_data is taken from the f9 flavor, which uses one
lock for logically separated resources (req_buf_lock and lock).

The init is done according to the m8 logic, which reconfigures the
baudrate of the receiver.
This is done with the UBX-CFG-PRT message, but the F9 could do that with
the more modern valset configuration mechanism.
This will be added in the following commit.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2026-02-23 13:33:51 -06:00
Wojciech Jablonski
2291220143 cmake: toolchain/xt-clang: Fix a formatting issue
Add indentations to conditional instructions

Signed-off-by: Wojciech Jablonski <wojciech.jablonski@intel.com>
2026-02-23 13:32:47 -06:00
Wojciech Jablonski
9806fab79b llext: Option for customizing FLIX generation
Compiler-generated FLIX instructions are currently disabled for LLEXT due
to a historic issue with LLEXT feature that appears to be already
resolved. However, another issue with FLIX is now being investigated.
The latter issue is not related to LLEXT but userspace feature.
To mitigate impact of global complier settings, this change adds a kconfig
choice for controlling FLIX generation independently for LLEXT modules.

Signed-off-by: Wojciech Jablonski <wojciech.jablonski@intel.com>
2026-02-23 13:32:47 -06:00