Commit graph

23353 commits

Author SHA1 Message Date
Nghia Phung
caf42fbdef drivers: i3c: Check for the existence of callback before invoking
I3C callbacks are registered by upper layer. Driver layer must check if
a callback is not NULL before calling it

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Nghia Phung
90dd76bf7a drivers: i3c: Correct some I3C register name
Register at offset 0xe8 is QUEUE_SIZE_CAPABILITY
Register at offset 0xec is RELEASE_SDA_TIMING

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Nghia Phung
0d0aea18fd drivers: i3c: Handle Hotjoin completion
When Hotjoin complete and dynamic address is assigned to target,
INTR_DYN_ADDR_ASSGN_STAT interrupt will be triggered, we can use sem_hj
to notify dw_i3c_target_ibi_raise_hj() about Hotjoin completion

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Nghia Phung
f22e1018d5 drivers: i3c: init sem_hj semaphore
Add initialization for sem_hj, it is being used without initialization.

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Benjamin Cabé
b95f8d88df lora: adopt SHELL_HELP
Adopt SHELL_HELP macro for lora_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:37:10 +02:00
Federico Di Gregorio
3d720bcb73 drivers: flash: stm32: add "generic read/write" ex op to QSPI driver
Some external flash modules have extra commands to support, for example,
reading/writing an OTP zone. Given that the commands are highly specific
and difficult to generalize, we add two ex ops that can be used to
transmit a custom command (in the form of a full QSPI_CommandTypeDef) and
then read or write a user-provided buffer.

Signed-off-by: Federico Di Gregorio <fog@dndg.it>
2025-06-18 07:37:00 +02:00
Swift Tian
69c14e37ac drivers: mspi: add ambiq mspi timing scan utility
The utility may be used during development stage to get
ambiq platform specific timing parameters for mspi devices.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-06-18 07:36:26 +02:00
Swift Tian
cc5c142535 drivers: mspi: add mspi is25xx0xx device driver
This device driver supports ISSI is25w/lx032/64 series flash.
Only extended SPI mode(1s-1s-1s, 1s-8s-8s, 1s-1s-8s) is implemented.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-06-18 07:36:26 +02:00
Swift Tian
8ef0792eec drivers: mspi: add APMemory APS Z8 pSRAM driver
The APS Z8 driver would just support APS51216BA for now.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-06-18 07:36:26 +02:00
Benjamin Cabé
c8349073d5 drivers: rtc: adopt SHELL_HELP
Adopt SHELL_HELP macro for rtc shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:25:32 -05:00
Benjamin Cabé
e7f58da491 drivers: adc: use asserts in adc_gain_invert implementations
no need for runtime checks here, let's save a few bytes of code

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:25:15 -05:00
Benjamin Cabé
18abef2dbf drivers: mbox: remove duplicate macro definition
Remove duplicate MAILBOX_MBOX_SIZE

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:24:45 -05:00
Fin Maaß
1497ae6d30 drivers: mdio: remove unused bus_enable/disable
remove unused bus_enable/disable, they don't
need to be implemented, if they are not needed.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 17:46:56 +02:00
Benjamin Cabé
ebfcd24132 drivers: clock_control: ambiq: add missing break statement
add missing break statement so that CLOCK_CONTROL_AMBIQ_TYPE_LFXTAL case
is handled correctly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:41 +02:00
Benjamin Cabé
ba0954848b drivers: spi: fix bad GENMASK in NXP LPSPI driver
Fixed swapped GENMASK arguments causing bad mask to be generated.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:27 +02:00
Benjamin Cabé
bb3a898dec drivers: w1: shell: fix off-by-one error
Prevent user to use and invalid setting index

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:17 +02:00
Benjamin Cabé
d048806bf6 drivers: w1: shell: fix write_bit function
write_bit should write a bit, not a byte.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:17 +02:00
Anuj Pathak
2af6adc745 drivers: dma: max32: check if bit other than status is set
we iterate over all the channels, and if more than one channel is
active at a time. interrupt on any one of active channel was
triggering callback for other active channel, because flags value
is 1 (enabled). this is commit handle this behaviour and only
trigger callback if bits other than status is set

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-06-17 17:46:05 +02:00
Benjamin Cabé
8d6316c5b7 drivers: nrf_wifi: put driver ops in flash
Add const qualifiers to the driver ops to save on RAM usage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:12:44 +02:00
Benjamin Cabé
0f60efe217 drivers: display: stm32: add missing break statement
Add missing break statement causing incorrect fallthrough for ARGB_8888

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:12:26 +02:00
Benjamin Cabé
dcec4ee653 driver: sdhc: fix typo in SAM4E hsmci driver
Fix parameter name (HSMCI -> hsmci)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:12:17 +02:00
Michał Stasiak
4d6585488b drivers: adc: adc_nrfx_saadc: Extend internal reference values
Current target-reference mapping does not cover all cases.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-06-17 16:11:33 +02:00
Michał Stasiak
18c0c3aeb9 drivers: Extend analog pins mapping for nRF54L.
Extended analog pins mappings for more nRF54L targets.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-06-17 16:11:33 +02:00
Sai Santhosh Malae
4bf1c9e8f5 drivers: spi: siwx91x: spi driver fix
Validate word size to only allow 8-bit and 16-bit.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-17 16:11:11 +02:00
Benjamin Cabé
64446d2f67 drivers: gnss: emul: increase GNSS_EMUL_MIN_FIX_INTERVAL_MS
Make the GNSS emul driver less capable w.r.t fix interval so that we can
exercise more error paths if e.g. user requests a fix interval of 100ms.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:10:04 +02:00
sudarsan N
139cdfc243 drivers: uc81xx: fix unchecked return from mipi_dbi_reset()
Check return value to handle potential failure.

Fixes: CID 524752

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-17 16:09:27 +02:00
Jukka Rissanen
0e57844b2d drivers: wifi: esp_at: Bind DNS to device net interface
Make sure received DNS server information is bound to the
wifi network interface.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Fin Maaß
66329deb9c drivers: ethernet: phy: phy_mii: start autoneg in cfg_link
already (re-)start autonegotiation in phy_mii_cfg_link.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
97c9f0edad drivers: ethernet: phy_mii: check return values in init
check return values in init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
38fb41a9cb drivers: ethernet: phy_mii: check condition explicitly
check condition explicitly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
6838c57679 drivers: ethernet: phy_mii: add support for disabling auto-neg
Adds support for disabling auto-negotiation.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
f24426b31f drivers: net: ethernet: phy: add support for disabling auto-negotiation
Add option in enum phy_link_speed to disable auto-negotiation.
This allows PHY drivers to support disabling auto-negotiation.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
847be49dbd drivers: ethernet: phy: add common functions for PHYs
This commit adds common functions for PHYs to the mii driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
b051c7e550 drivers: ethernet: phy: remove unused/wrong cfg_link
if we can't use cfg_link to (re-)configure the link,
we don't need it and shouldn't have it.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Jakub Michalski
c47cc3abda drivers: virtio: fix cleanup upon failure during virtqueues initialization
This commit fixes infinite loop reported in
https://github.com/zephyrproject-rtos/zephyr/issues/91242, not deallocating
array with virtqueues and not deactivating the virtqueues in case of
failure

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-06-17 16:08:06 +02:00
Venkatesh Odela
b052a086a4 ethernet: phy: dp83867: Add support for configurable internal RGMII delays
Add support for setting RGMII RX and TX internal delays via DT properties:
`ti,rx-internal-delay` and `ti,tx-internal-delay`.

Signed-off-by: Venkatesh Odela <venkatesh.odela@amd.com>
2025-06-17 16:07:42 +02:00
Keith Packard
87029f7422 drivers/flash: Fix #if condition for is_area_readable for mcux
is_area_readable is used for SOCS other than LPC55XXX chips, not just
chips other than LPC55S36. Change the condition which elides this code
to avoid a GCC 14.3 warning.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
ec38e9ef64 wifi/esp32: Fix overflow in SSID copy
In the previous code, strnlen could have returned WIFI_SSID_MAX_LEN, and
the following statement ensuring NUL termination would have written one
past the end of the array.

Replace this with code that ensures a NUL termination within the bounds
of the array and then use strlen to compute the length.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Xinyu Hong
95d945504d drivers: wifi: nxp: add channel load support
Add WIFI_CHANNEL_LOAD macro to support wifi channel load feature

Signed-off-by: Xinyu Hong <xinyu.hong@nxp.com>
2025-06-17 16:05:45 +02:00
Rex Chen
cc5b1477ff drivers: wifi: nxp: support monitor mode tx frame
Add WIFI_HOST_TXRX_MGMT_FRAME macro to support tx frame
in monitor mode.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-06-17 16:04:54 +02:00
Jun Lin
8ab712a235 drivers: i2c: npcx: prevent unexpected target address match ISR
This commit prevents the hardware from generating an unexpected
target slave address match ISR by the following change:
1. Enable the New Match Interrupt Enable bit (NMINTEN) only when
   necessary.
2. Explicitly clear all SMBnADDRx registers because they are not
   cleared when the I2C hardware is disabled. It will cause the
   asynchrinization between SMBnADDRx and registered_target_mask if the
   system jumps from the RO image to the RW image.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-06-17 08:20:39 +02:00
Youssef Zini
0972b23171 drivers: gpio: add mp2 gpio clock handling
Remove gpio clock management from the GPIO driver when running on the
cortex-m33 on the mp2 and gpio clocks are managed by the cortex-A, being
the resource manager, allowed by the Resource Isolation Framework (RIF).
Also add a specific binding for the mp2 gpio to make clock property
optional.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
9bc78cfee4 drivers: clock_control: add mp2 clock driver
Add the stm32mp2 clock driver to the clock_control subsystem. The driver
is a reduced version of the generic stm32 clock driver.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
7f23ce2967 dts: clock_control: add mp2 rcc binding
Introduce DeviceTree binding for the STM32MP2 RCC clock controller,
enabling support for STM32MP2-specific clock configuration in Zephyr.
Update Kconfig.stm32 to add a dependency on STM32MP2 configuration,
allowing the use of STM32 LL RCC features when targeting STM32MP2
devices.
Add header for STM32MP2 per peripheral clock definitions.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
0c583441f1 drivers: hwinfo_stm32.c: add support for stm32mp2
Add support for STM32MP2 series in the hwinfo driver.
The STM32MP2 series uses the HAL functions since it doesn't have a
ll_utils.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
38428c6f52 drivers: interrupt_controller: add stm32mp2 exti
Add the mp2 exti2 dts to the dtsi file.
Add mp2 exti hal and ll function calls with EXTI2 instance. We use the
EXTI2 instance because it contains the GPIO interrupts in the non-secure
context. (We are trying to build the blinky sample as a first milestone)

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
64ac64d2d6 drivers: interrupt_controller: change dt macro
Replace the use of `DT_NODELABEL(exti)` which depends on the node label
with the defined EXTI_NODE macro using the instance with the
`st_stm32_exti` compatible.
Since both macros point to the same node, this change doesn't affect
the code logic, but makes it independent of the node label, in
preparation for the addition of the STM32MP2 exti nodes.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Benjamin Cabé
7a663fbf99 drivers: pcie: shell: add missing const qualifiers
Ensure string conversion tables end up in flash.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:24:52 +02:00
Benjamin Cabé
9b1e05b0ab drivers: sensor: tsl2540: fix channel validation logic in attr_set
Use && instead of & in channel validation logic to ensure channel is
either CHAN_IR or CHAN_LIGHT.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:24:41 +02:00
Benjamin Cabé
a00c901377 drivers: sensor: tdk: remove duplicate entries in ICM42X70_CONFIG_COMMON
Eliminate redundant entries for `accel_pwr_mode` and `apex`.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:24:29 +02:00