Commit Graph

118922 Commits

Author SHA1 Message Date
Rafael Aldo Hernández Luna
2e30bbca00 drivers: dac: Added dac driver for samd5x
Added driver and binding file for samd5x dac peripheral, the already
implemented dac_sam0.c lacks the configuration registers for this
microcontroller family and is fixed to only have one dac channel output,
also, the code gets too bulky when adding the samd5x dac configuration
using preprocessor directives that’s why I moved the implementation to its
own file.

Added dac to the supported list of same54_xpro.yaml, fixed Kconfig.samd5x
help spacing, added board defines to test_dac.c and test it out with
twister script on board.

Signed-off-by: Rafael Aldo Hernández Luna <aldo.hernandez@daikincomfort.com>
2025-07-19 09:54:41 +02:00
Tom Burdick
7d9fffaeb9 samples: pmci: mctp: Add i2c+gpio endpoint sample
Adds sample showing i2c+gpio endpoint bindings in use.

Provides an overlay for the frdm-mcxn947 development board using JP8
pins for i2c and gpio connectivity.

The sample periodically sends a "ping" message to the bus controller and
prints out any messages it receives itself.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
84583ee6c6 samples: pmci: mctp: Add I2C+GPIO bus owner sample
Adds a sample application that can act as the bus owner using
i2c+gpio mctp binding.

Provides an overlay for the frdm-mcxn947 using JP8 pins for i2c and
gpio.

It attempts to send a "ping" message to all endpoints while accepting
string messages from endpoints to print out.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
cbfe7813c7 pmci: mctp: I2C+GPIO Target binding
Adds a I2C+GPIO Target device binding for MCTP communication over I2C.

The binding requires an i2c bus and gpio pin, along with a specified I2C
and endpoint address pair. These are then used to create an MCTP binding
which can be used to communicate in a peer to peer manner among other
MCTP endpoints.

Each message transmit signals to the bus controller using a GPIO logical
high and is unset on transmission completion. Pending transmitters are
queued using a semaphore avoiding memcpy being needed to asynchronously
transmit mctp pktbufs.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
6464329346 pmci: mctp: I2C+GPIO controller bindings
Adds a custom MCTP binding for an I2C bus controller using GPIO signaling
for write requests rather than mode switching.

This binding operates a lot like the I3C binding specification DMTF has
for MCTP. The controller expects to receive interrupts (from GPIO pins)
and upon getting an interrupt read a message from the I2C target device.

The macro does a lot of the heavy lifting to setup all the state needed
for capturing GPIOs, being able to do asynchronous reads/writes, and
such. The entire controller works using state machines driven by
interrupts leading to low latency and clear ram costs.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
e3cc7a8c63 pmci: mctp: Supply dedicated mctp heap
Unfortunately libc malloc/free are wrapped with a sys_mutex which is
troublesome for mctp as we likely want to allocate from interrupts in many
cases.

Supply mctp with a dedicated heap initialized and assigned at boot
saving applications a step. The default size is quite small and works
well so long as messages are small.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
508676ca11 i2c: Use I2C log level for lpi2c rtio
Driver simply registered itself without setting the level based on the
I2C Kconfig which wasn't quite right, need the log level set based on
the Kconfig for I2C.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
9e12c111bb i2c: Use a I2C_CONCAT rather than ## in names
Fixes an issue where the name is not a token itself but perhaps an
unrealized macro.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Cheng Chang
419cb3da69 tests: bluetooth: classic: Add test suite l2cap.
IUT works as a l2cap server with basic mode. The peer device,
l2cap client with basic mode, is a PC with running `bumble` on it.
This test only performs the function of L2CAP basic mode.
Support multiple l2cap enerties in new shell l2cap_br,
which may support more test function.

In the test suite , there are two groups in test cases.
Group 1 Including case1-case8 focuses on connection and
disconnection around l2cap. The impact of active and passive
acl connectivity, disconnectivity and authentication as well as
disconnection from ACL without l2cap disconnect is tested.

Group2 Including case9-case14 revolves around the basic
 parameters of L2CAPserver configuration, data transfer.
Case 9:   Test l2cap connection with max MTU(0xffff).But the max mtu
which the stack supports is (CONFIG_BT_BUF_ACL_RX_SIZE - 4U = 196).
Case 10: Test l2cap connection with min MTU(0x30),set server mtu = 48,
client mtu = 0xffff, l2cap connect successfully,
client mtu = 0xffff, server mtu = 48.
Case 11: Test l2cap connection with min MTU(0x30),set server mtu < 48,
client mtu = 0xffff, l2cap connect fail.
Case 12: Test l2cap connection with min MTU(0x30),set server mtu = 48,
client mtu<48,l2cap connect successfully,
client mtu=48,server mtu=48.
Case 13: Test l2cap connection with invaild PSM.
Case 14: Test l2cap multi_channel connection and data tranfer.
Case 15: Stress Test. Repeat l2cap connect, disconnect operation.
Case 16: Stress Test. Repeat data transfer in a single connection.
In Case 15 and 16, if enlarging STRESS_TEST_MAX_COUNT and test fail,
you can enlarge timeout in  testcase.yml.

test_l2cap_server.py is a file containing real test cases.
test_l2cap_common.py is a common file. It encapsulates some
test function functions that are commonly used for test cases.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-19 09:51:31 +02:00
Cheng Chang
5b204de53a Bluetooth: host: L2CAP: Fix configuration parameters not be checked
Now in other mode rather than basic mode, configuration parameters
include MTU, Flush Time and QoS have been checked.
But in basic mode, they also need to be checked, so the code about this
should not be controlled by macro CONFIG_BT_L2CAP_RET_FC.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-19 09:51:02 +02:00
Francois Ramu
735e5cb6c4 samples: mgmt: hawkbit: no BOOT_MAX_IMG_SECTORS for stm32h573i_dk
Reverts commit 5700ffe9ad.
Not required anymore as the CONFIG_BOOT_MAX_IMG_SECTORS
is fixed by the mcuboot at 4096.
Add the corresponding overlay file.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
bf9af02b81 samples: sysbuild: with mcu_boot on the stm32h573i_dk
Run the sample to execute in place on the external flash of the
stm32h573 disco kit.
with_boot is build and linked for the external flash.
Download the mcuboot zephyr.bin in internal memory.
Download the with_mcuboot zephyr.signed.bin in external memory.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
5d0306c797 boards: arm: stm32h573 disco kit move partition to ext flash
Add the XSPI 2 which is an octoSPI connection to a octo NOR flash
mx25lm51245 on the stm32h573i_dk disco kit.
Define the partition on the 64MBytes space of the external flash.
Use the STM32Cube programmer to flash with the corresponding
external loader for XiP mode.
Removing usb_device will avoid test feature for that board.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
2345bc996a drivers: flash: stm32 xspi flash driver skip init when executing in place
The flash_stm32_xspi driver should not initialize the xspi,
if this one is being use to execute in Place : the init is skipped.
This mode is identified with the CONFIG_STM32_APP_IN_EXT_FLASH.
Checking the memory mapped mode bit is possible when the xspi
peripheral clock is not off (stm32h5 has no clock_control_get_status API)

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
c33d93d478 drivers: clock control for stm32h5 driver implements control_get_status
Add the control_get_status API function
to the stm32h5 clock_control driver

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
a63683aa95 drivers: clock: stm32H5 clock control of the PLL in MemoryMapped mode
Do not disable the PLL clock if it sources the XSPI and if the external
flash is executing in Place. After mcuboot reset, the code is executed
on the external flash, through the xspi.
The CONFIG_STM32_APP_IN_EXT_FLASH is set and will avoid re-config
of the PLL which is sourcing the XSPI peripheral. When eXecuting in Place
on this external NOR, it must not disable its own clock source (PLL).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
a2ff38725b soc: stm32: symbol for application XiP from xspi external memory
Add a STM32_APP_IN_EXT_FLASH to determine that an application
is eXecuting in Place on an external xspi flash.
That will control the clock init of this external xspi controller.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Amneesh Singh
c49ec80948 am243x_evm/am2434/r5f0_0: add SPI support
Add OMAP multi-channel SPI node to the device tree and add overlay for the
SPI loopback test.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-07-19 09:47:37 +02:00
Amneesh Singh
b6d261b989 drivers: spi: introduce TI omap_mcspi
This patch adds the initial support for the OMAP Multi-Channel SPI. Some
things should be noted however:

- DMA xfers are not supported yet. Only PIO is supported as of now.
- Multi-Channel controller is not supported yet. Only single-channel
  controller mode is supported, this means that the controller can xfer
  messages with one slave at a time.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-07-19 09:47:37 +02:00
Ravinder Singh
394c97a819 Bluetooth: LE: CONN: Added bt_conn_le_set_default_phy function.
Added bt_le_set_default_phy in hci. This handles
the HCI_LE_Set_Default_PHY HCI command.
Added call to bt_conn_le_set_default_phy in central_gatt_write and
peripheral_gatt_write samples.

Signed-off-by: Ravinder Singh <ravinder.singh2@infineon.com>
2025-07-19 09:46:34 +02:00
Sean Kyer
b597efc863 tests: settings: Add TF-M ITS backend tests
Add ITS tests for ITS settings backend. Part of enabling
settings subsystem for non-secure builds.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-07-19 09:45:56 +02:00
Sean Kyer
cba074230d settings: Add TF-M ITS backend
Add settings_its backend in order for a non-secure
Bluetooth application to be able to save Bluetooth
settings to persistent storage.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-07-19 09:45:56 +02:00
Sean Kyer
4484354dcc secure_storage: Add global registry for PSA ITS UIDs
Allows for subsystems to reserve UID ranges when using
PSA ITS.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-07-19 09:45:56 +02:00
Martin Hoff
4d4e6701b8 script: west_commands: silabs: add device type for hostname dev
This commit adds automatic type detection for the dev-id argument and
introduces a device-type option to explicitly tell Silabs Commander how
to handle the dev-id argument. It enables hostname usage for flashing
devices.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-19 09:43:43 +02:00
Martin Hoff
3e7b80da3d script: west_commands: jlink: add device type for hostname dev
This commit adds automatic type detection for the dev-id argument and
introduces a device-type option to explicitly tell JLink how to handle
the dev-id argument. It enables hostname usage for flashing and
debugging.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-19 09:43:43 +02:00
Yanir Levin
6df14b432e arc: cache: Support region operations, SLC, and entire cache operations
Added configurable support for L1 cache region operations,
which offers improved performance over line operations.
Added configurable support for SLC (system level cache).
Added support for entire cache operations: flush_all,
invd_all, flush_and_invd_all.

Reviewed-by: Aaron Komisar <aaron.komisar@tandemg.com>
Signed-off-by: Yanir Levin <ylevin@gsitechnology.com>
2025-07-19 09:42:20 +02:00
Make Shi
dcd9adec29 Bluetooth: AVRCP: Adjust positions of internal static functions
- Move the static function locations to beginning of the file to the
  file to avoid function declarations.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Make Shi
ba05d5c2b2 Bluetooth: Shell: AVRCP: support unit info request and response
Add avrcp_unit_info_req callback function in shell and a command to set
the unit info response.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Make Shi
c95d3167e2 Bluetooth: AVRCP: Implement unit message reception on the AVRCP target
- Add a new callback to support the situation when a unit info command is
  received, and add an API to respond to the unit info command.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Make Shi
a559fee00b Bluetooth: AVRCP: Refactored AVRCP API for CT/TG separation
- Only AVRCP connect and disconnect api for AVRCP common functions.
- Added _ct prefixes to all CT callback functions and feature APIs.
- Updated shell demo code for AVRCP API changes.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Alberto Escolar Piedras
ebd69cac45 tests/drivers/uart/: Add overlays for the nrf54lm20bsim
This target can also run this tests, we just overlays including
the ones for the real boards.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
6017c6866b soc/nordic/nrf54l: Set SOC_COMPATIBLE for 54L CPUAPP targets
So we can enable features for both the real and simulated
targets based on these same options.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
6a659371a5 tests drivers counter: Enable for nrf54lm20bsim_nrf54lm20_cpuapp
These tests run fine in this board, let's provide an
overlay and enable them.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
542874333c boards nrf_bsim: Add a new nrf54lm20bsim target
Add a new simulated nrf54lm20 cpuapp target

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
65fb246df1 soc: Add SOC_COMPATIBLE_NRF54LM20* options
In preparation for simulated nRF54LM20 targets, let's add kconfig
options aking to the ones we have for the nRF54L15 devices.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
a0f2ec8352 boards/native: Remove NATIVE_SIM_NATIVE_POSIX_COMPAT kconfig option
This option was introduced together with native_sim in 3.5 to ease
the transition from native_posix, and was deprecated in 4.1.

Let's remove it now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:23 +02:00
Alberto Escolar Piedras
b0dd9cbdc5 drivers/usb_native_posix: Remove BOARD_NATIVE_POSIX dependency
native_posix was removed. Let's remove this dependency.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:23 +02:00
Alberto Escolar Piedras
68391f2ecf cmake: Remove NATIVE_APPLICATION support
This mode of building has been removed, so we do not need to support it
in the top level cmake file either.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
471706ec9a lib/libc/Kconfig: Simply C library choice dependencies
After removing NATIVE_APPLICATION, only NATIVE_LIBRARY is
possible with NATIVE_BUILD.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
cab1f00c12 soc/native/inf_clock/Kconfig: Simply dependencies
After removing NATIVE_APPLICATION, only NATIVE_LIBRARY is
possible with SOC_POSIX.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
cf9634cbd0 drivers/net offloaded_sockets: Remove redundant kconfig dependency
After removing NATIVE_APPLICATION, only NATIVE_LIBRARY is
possible with ARCH_POSIX.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
0acebf7135 drivers/bluetooth/userchan: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
2c4288ecec drivers/eeprom/eeprom_simulator: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
2b18fc8348 native_sim_reboot: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this component.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
e6dbe45304 drivers fake_entropy_native_sim: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
e7d228a2b1 drivers/flash: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
8270444a4d subsys/fs/fuse_fs_access: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
7e1f2ffe00 boards/native docs: Remove note on NATIVE_APPLICATION
As we do not include any support in tree for this mode, we do not need
to warn in the documentation that it does not apply to it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
f5bc01beae include/zephyr/linker/common-rom: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support building the constructors and initialization arrarys
in a way that support it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
af750b2b41 subsys/tracing/backend_posix: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00