Commit Graph

119664 Commits

Author SHA1 Message Date
Dmitrii Sharshakov
5c1d4db845 drivers: udc_rpi_pico: move control endpoint enable/disable
Move control endpoint enable/disable calls to udc_enable()/udc_disable().
It does not change much during USB device support initialization, but
it seems to resolve an issue when starting from RAM, though the real
cause is unknown.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-07-29 11:18:28 +01:00
James Roy
2ebf82ca5f subsystem: usb: device_next: Fix unchecked return value in usbd_cdc_ecm
Fix unchecked return value scanned by Coverity.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-07-29 11:18:20 +01:00
Tahsin Mutlugun
00e217da7d boards: adi: max32657evkit: Add adxl367 accelerometer
Add support for ADXL367 accelerometer connected to I3C bus.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
6320e504dd boards: adi: max32657evkit: Enable I3C peripheral
Add I3C node to MAX32657EVKIT board devicetree and add I3C to the list
of supported drivers.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
3885278b96 drivers: i3c: shell: Add shell support to MAX32 I3C
Enables shell support for MAX32 I3C driver.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
ac1152b0b6 dts: arm: adi: max32657: Add I3C instance
Add I3C instance to max32657.dtsi.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
d1d983dfdb drivers: i3c: Introduce MAX32 I3C driver
Add I3C driver for ADI MAX32 microcontrollers.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Daniel Leung
4b15936329 tests: kernel/smp_boot_delay: workaround occassionally failures
test_smp_boot_delay sometimes fails due to thread started by IPI
not having started or not finished running:

* Using CPU mask to explicitly state which CPU to start the thread
  seems to fix the issue where the thread is not started quickly
  enough.
* When the host  system is under heavy load (e.g. twister-ing),
  emulators may not get enough CPU time to run the newly created
  thread. So extend the IPI delay a bit more to allow for this.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-07-28 21:03:43 -04:00
Phi Bang Nguyen
1edc97cd04 doc: migration guide: display: Mention rgb565/bgr565 fix
Mention that the RGB565 and BGR565 interchange issue has been fixed
in the display sample.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
9e7596dce8 boards: shields: rk0xxx: Set default format to RGB565
The default supported format in these LCD is RGB565, not BGR565. It is
set to BGR565 because a wrong assumption about "byte swap" in Zephyr.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
d69bea3c5e drivers: display: dcnano_elcdif: Fix RGB565/BGR565 format mismatch
Format is incorrectly forced from RGB565 to BGR565. Fix it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
d9513095d9 drivers: display: elcdif: Fix RGB565/BGR565 format mismatch
Format is incorrectly forced from RGB565 to BGR565. Fix it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
d0f7604b1a samples: drivers: display: Fix RGB565/BGR565 interchange issue
The RGB565 and BGR565 formats are interchanged in the sample. This leads
to wrong assumptions about "byte swap" in Zephyr and make display
drivers, shields and video sample follow it for a long time. Fix it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
2fdc051269 samples: drivers: video: Fix RGB565/BGR565 in display format
Formats should be coherently set between camera and display. Forcing
RGB565 to BGR565 will break some platforms.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Emil Gydesen
220571efcb Bluetooth: CCP: Check conn type before access by index
Ensure that the connection type of the provided bt_conn is
an LE connection.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-28 16:45:17 -04:00
Emil Gydesen
0347d92072 Bluetooth: BAP: SD: Add missing error checks for mutex locks
Add missing error checks for mutex locks after the mutexes
were changed to not use K_FOREVER which should not be done in
the BT RX thread.

A larger overhaul of how mutexes are using within the scan delegator
should be considered, as there are a lot of locks and unlocks when
handling the callbacks.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-28 16:44:58 -04:00
Jordan Yates
bd774ff98b tests: disk: disk_access: test STM32L4 DMA
Ensure that the shared DMA variant of the STM SDMMC driver is compiled
in CI.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-28 16:44:33 -04:00
Jordan Yates
3698507585 disk: sdmmc: support L4 series with shared DMA channel
Update the driver to support DMA operations on L4 series devices, with
a shared DMA channel. Split channels do not work on these chips, since
there is no dedicated TX and RX channels on the DMA, so configuring two
channels with SDMMC as the peripheral results in a non-functional
configuration.

Fixes #91216.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-28 16:44:33 -04:00
Armando Visconti
792b7e3570 rtio: add helper function rtio_read_transaction()
Add a helper function that constructs a rtio SQE chain with the purpose
to perform a bus read operation on a list of registers.

Usage:

  struct rtio_regs regs;
  struct rtio_reg_list regs_list[] = {{regs_addr1, mem_addr_1, mem_len_1},
                                      {regs_addr2, mem_addr_2, mem_len_2},
                                      ...
                                     };
  regs.rtio_regs_list = regs_list;
  regs.rtio_regs_num = ARRAY_SIZE(regs_list);

  rtio_read_regs_async(rtio,
                       iodev,
                       RTIO_BUS_SPI,
                       &regs,
                       sqe,
                       dev,
                       op_cb);

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-28 16:44:17 -04:00
Van Petrosyan
37d8ec295b drivers: led: Added PCA9533 to build_all overlay
PCA9533 is added to the overlay so the new driver
is compiled by the automated “build all LED drivers” test

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-28 16:43:48 -04:00
Van Petrosyan
7c845f14d4 drivers: led: Implemented PCA9533 driver with PM support
• Supports led_on/off, led_set_brightness (0–100 %, 152 Hz default),
  and led_blink (7 ms – 1.685 s) with automatic sharing of the two
  on-chip PWM engines; returns –EBUSY when a third distinct pair is
  requested.

• Includes basic runtime-PM boilerplate to honour power-domain control;
  the device itself has no dedicated low-power states.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-28 16:43:48 -04:00
Van Petrosyan
aaada72b00 drivers: led: Added dt-binding for pca9533 led dimmer
Added DT binding for the PCA9533 LED Dimmer

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-28 16:43:48 -04:00
Cheng Chang
afcce53220 bluetooth: host: a2dp:error_code should be detailed in set_config_rsp
Error codes fall into two main categories:
case 1: NOT_SUPPORT_XXX. This means that the configuration of the
parameter is not supported locally.
case 2: INVALID_XXX. This means that the parameter is not configured or
duplicated in the set_config_req command.

Currently the protocol only supports SBC, so it is only checked for SBC
parameters.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-28 16:43:29 -04:00
Holt Sun
4618e86edd drivers: irtc: Updated rtc driver to support NXP RT700 device.
1. Update nxp irtc driver to fix issue in init and alarm function.
2. Update RTC device tree binding to support "share-counter".
3. Update RT700 dtsi to support rtc0 for cpu0 and rtc1 for cpu1.
4. Update readme.
5. Update unit test project conf for RT700.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-07-28 16:42:30 -04:00
Declan Snyder
fe8da67342 tests: spi_loopback: Specify expected CS on helper func
The helper function should have the flexibility to have different
expected CS counts. Namely, the test cases where the transfer is
essentially empty should not need to assert CS and many platforms are
failing on CS testing currently due to expecting CS assert and deassert
despite it being a 0 clock/bit transfer being specified.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-28 16:42:08 -04:00
Declan Snyder
285245c69a tests: spi_loopback: Use atmoic_t instead of sem for CS
Use an atomic_t instead of semaphore for counting the CS, semaphore is
too heavy and wrong choice for this variable.

Also, print what the actual value gotten was in case of error.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-28 16:42:08 -04:00
Vinit Mehta
1d44972a26 samples: bluetooth: pbp_public_broadcast: Fix PACS register issue
- Add sink PACS register for PBP public broadcast sink example to make
  it work with PBP broadcast source

Signed-off-by: Vinit Mehta <vinit.mehta@nxp.com>
2025-07-28 16:41:51 -04:00
Georgij Černyšiov
e0899d347e drivers: mipi_dbi: stm32: fmc: add bank address property
The driver gets FMC bank address using
`FMC_BANK1_<parent_register_value>` define.

This approach has some flaws:
- The parent (bank) register's value might not correspond
  sequentially to the expected bank number.
  For example: `STM32_FMC_NOSRAM_BANK3` maps to `FMC_BANK1_4`,
  instead of `FMC_BANK1_3`.
- Some families don't even define the necessary `FMC_BANK1_x` macros.

To address this, the commit adds an optional `bank-address` property,
providing a direct way to define the FMC bank address for the driver.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-28 16:41:30 -04:00
Yishai Jaffe
7f3a728aaa soc: silabs: s2: make order in soc Kconfig's
Made some order in the Kconfig's for silabs series 2 socs.
Made a distinction between silabs "generic family" (e.g. xg21) and silabs
"device family" (e.g. efr32mg21).

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-28 16:40:58 -04:00
Cheng Chang
f4153476cd bluetooth: host: a2dp: Fix null ops before calling configured callback
If stream->ops is NULL and not checked, it works fail.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-28 16:40:39 -04:00
Vit Stanicek
8f37d3bf52 samples: rtxxx-amp: Remove POST_BUILD
Remove POST_BUILD directives from remote-dsp-imgs.cmake.

They raised warnings on CMake 3.31.6.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-07-28 16:40:02 -04:00
Fabio Baltieri
7ddefbf369 tests: arm: sw_vector_table: fix build on many non systick platforms
In 4c93fcd35b, the default use case has been changed to support setting
a custom handler, but it's written in a way to only support MCUX and
SYSTICK based platforms. For any other platform the build break because
of undefined TIMER_IRQ_HANDLER and TIMER_IRQ_NUM.

Fix the conditional so that the custom timer line is only entered if a
custom handler is defined. The test would probably stil not run on those
platforms until a custom case is defined pointing at the custom timer
interrput handler, but at least it won't break CI.

Also drop a closing endif comment as that clearly became misleading.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-28 16:39:44 -04:00
Luis Ubieda
49a1b2417e icm4268x: Fix typos on has_trigger API
Missed during icm42688 to icm4268x refactoring as it was mispelled
in the first-place.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-28 16:38:52 -04:00
Luis Ubieda
4e1add203f icm4268x: fix typo on ODR attribute for 16k
Otherwise this setting will be ineligible through run-time
attribute configuration.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-28 16:38:52 -04:00
Cla Mattia Galliard
a1f66f05d2 drivers: mdio: shell: Fix argument count
Need to have correct argument count to avoid crash.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-07-28 08:57:14 -04:00
Luis Ubieda
b9099918fa paa3905: Send led-control disabled sequence
Otherwise, a previous firmware build could have run into the chip and
keep led control enabled in spite of disabling it through
dts-property.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-28 08:55:56 -04:00
Gomaa Mohammed Eldebaby
01b14df31e samples: bluetooth: typo in project name
Corrected a typo in the project name within the Bluetooth
samples directory. The incorrect name was causing confusion
in documentation and build processes. This change updates
the relevant file(s) to use the correct project name, ensuring
consistency across the Zephyr repository.

Signed-off-by: Gomaa Mohammed Eldebaby <gomaaeldebaby2211@gmail.com>
2025-07-28 08:55:42 -04:00
Pavlo Hamov
684ff2b3c8 drivers: display: stm32_ltdc: mask irq if necessary
LTDC interrupt routine is used to reload frame buffer pointer
once full frame is finished flushing. As long as there is no
need to change buffer - there is no need to disturb CPU.
Thus: Enable LTDC interrupt only when new buffer is pending

Signed-off-by: Pavlo Hamov <pasha.gamov@gmail.com>
2025-07-28 08:55:06 -04:00
Daniel Schultz
fecfe5e2d7 boards: ti: am64/am24x: Update AM64x Nodes in MAIN
Update all nodes located in the MAIN domain and add the
main_ prefix. This is required because the am64x_main.dtsi
now has this prefix.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-07-28 08:53:55 -04:00
Daniel Schultz
cd96f37f82 dts: arm: ti: Move am64x_{main,mcu} to dts/vendor/ti
This files can be used by the 32-bit as well as 64-bit ARM
architectures. Move them into the dts/vendor/ti directory to
make the ISA independant.

All nodes located in the AM64x MAIN domain should have the main_
prefix. This makes it more clear where those pins are actually
located in the chip.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-07-28 08:53:55 -04:00
Jukka Rissanen
ec4d6786fd tests: net: ipv6: Test packet queing when sending NS
Add tests to make sure that if neighbor cache does not contain
info for neighbor link layer address, we can queue packets
and re-send them when the neighbor cache contains the data.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Jukka Rissanen
31329e6acb net: ipv6: Allow NS timeout to be configured
Allow user to configure how long to wait for neighbor
advertisement.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Jukka Rissanen
255253b108 net: ipv6: Add packet queueing while waiting NA
If we do not know the neighbor link address, we need to send
neighbor solicitation message to net. While waiting neighbor
advertisement, there might be other packets that we want to
send to that neighbor. Queue those packets so that all of them
can be sent when NA message is received.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Jukka Rissanen
9b763ac506 tests: net: ipv6: Make ICMP handler struct static
Make sure that we will never access ICMP handler struct
that is allocated from stack.
Without this change, there was mysterious crashes if using
native_sim board where the handler function was pointing to
stack data which contained garbage when the test was run.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Cheng Kai
cf61573ce9 Bluetooth: L2CAP: add br l2cap unregister interface
It needs to do l2cap unregister operation from app

Signed-off-by: Cheng Kai <chengkai@xiaomi.com>
2025-07-28 08:52:01 -04:00
Sean Madigan
3adae8bd9a bluetooth: host: Add support for extended feature set feature
This commit adds support for the extended feature set
feature. This includes:
- hci boilerplate
- kconfigs, including one for a max local feature page
- reading remote features is done by a command and callback
- this is not linked into the auto feature request on
connection as this procedure can take quite a few connection
events, and we do not want to delay the user
- added the commands to the bt shell

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-07-28 08:48:30 -04:00
Sean Madigan
cddea431eb bluetooth: host: hci_core: allow both orders of version and feature events
Previously, the version complete event had to come after
the remote feature complete event for the notify_remote_info
function to be called.

This becomes less practical when adding the read all remote
features complete event, as this can take some time. Meaning
the order of events is not predictable.

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-07-28 08:48:30 -04:00
Sergei Ovchinnikov
f0f2b941f0 boards: shields: add npm1304_ek shield
Add an nPM1304 EK shield, update samples/shields/npm1300_ek to support
both shields, improve the sample description.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-07-28 08:47:49 -04:00
Bjarki Arge Andreasen
93117d98ad dts: nordic: nrf54h20: add missing ranges to reserved-memory
Add missing ranges to nrf54h20.dtsi reserved-memory. No translation
is required so ranges is set to <empty>.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-28 08:47:28 -04:00
Bjarki Arge Andreasen
ffe1f407d9 dts: nordic: nrf54h20: add missing ranges to global_peripherals
Add missing ranges to global_peripherals to explicitly translate
child addresses of global_peripherals in ram (0x2f000000).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-28 08:47:28 -04:00