Commit graph

25,525 commits

Author SHA1 Message Date
Thao Luong
780aa50179 drivers: misc: Update renesas ra external interrupt to support RA8P1
This is temporary update because in HWM only mention IRQCR but
FSP is defining for IRQCRa and IRQCRb with same values.
Haven't understood why need both  IRQCRa and IRQCRb.
Current update is using IRACRa.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 15:56:20 -10:00
Thao Luong
720d4c61a9 drivers: clock_control: Add support for RA8P1
Add additional clocks to support for RA8P1.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 15:56:20 -10:00
Thao Luong
40ff446e10 drivers: gpio: add support for RA8P1
RA8P1 has 14 ports (from 0 to d) and 32 external irq while current
driver support 12 ports (0 to b) and 16 external irq.
This add addtional support for remain ports and external irq to be
able to work with RA8P1.

Fix the lack condition GPIO_RA_IOPORT for GPIO_RA_HAS_VBTICTLR
config

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Benjamin Cabé
5b0808fa4a drivers: gpio: rzt2m: properly handle error from rzt2m_gpio_get_pin_irq
For the negative errno rzt2m_gpio_get_pin_irq may return to be properly
handled, irq variable needs to use signed type.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 15:55:58 -10:00
Alain Volmat
2d1a5b8426 video: shell: correct incorrect error return value in cmd_video_format
Correct cmd_video_format return value in case of video_shell_parse_in_out
returns a negative value.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Alain Volmat
c714fac300 video: shell: addition of video selection support
Add shell handling in order to interact with drivers
via the set/get_selection APIs allowing to get/set
crop / compose and get HW capabilities such as
crop bound / compose bound or native size.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Alain Volmat
0b9a06909e video: stm32: dcmipp: add set/get_selection handling
Add possibility to perform crop on all pipes and compose (downscale) on
pixel pipes (endpoint #1 and endpoint #2).
Rework the code in order to move the downscale control from
the set_fmt into the set_selection (compose).

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Yishai Jaffe
88eda71497 gpio: adopt SHELL_HELP
Adopt SHELL_HELP macro for gpio_shell

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-25 15:53:28 -10:00
Chun-Chieh Li
8a9dc13e91 drivers: wifi: esp_at: fix rx_sock not ref-counted
This fixes rx_sock is not reference-counted, or crash error on reference
to released socket.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-25 15:49:26 -10:00
Chun-Chieh Li
db59acba5e drivers: wifi: esp_at: fix deadlock in socket close path
This fixes deadlock in socket close path. In the scenario:
1. on_cmd_ipd/esp_socket_rx invokes esp_socket_ref_from_link_id
   and increments refcount.
2. zvfs_close/esp_put locks cond.lock.
3. zvfs_close/esp_put waits on sem_free.
4. on_cmd_ipd/esp_socket_rx waits on cond.lock before esp_socket_unref.
5. sem_free waits on esp_socket_unref for refcount reaching zero.

As we detect socket is closing, we can ignore last rx data and escape
from the trap.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-25 15:49:26 -10:00
Chun-Chieh Li
622fddb0b8 drivers: wifi: esp_at: fix premature socket release
This fixes premature socket release. Without this fix, system will crash
because esp_rx thread can still hold reference to the socket in the
following cases:
1. esp_rx thread has got the socket reference but hasn't unref'ed
   via esp_socket_unref.
2. esp_rx thread can still get the socket reference for refcount not
   being zero in esp_socket_ref.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-25 15:49:26 -10:00
Emil Lindqvist
401ec8bae2 modem_cellular: lara_r6: add option to clear forbidden networks from SIM
SIM-cards remember which networks has rejected attach attempts. This is
not always desired if the user has control over which networks to allow.
This commit adds a Kconfig symbol which enables clearing of saved
forbidden networks from SIM-card on boot.

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-06-25 15:42:41 -10:00
Emil Lindqvist
e27c4ba718 modem_cellular: lara_r6: add choice of Radio Access Technology
Add a Kconfig choice to select which Radio Access Technology to be used

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-06-25 15:42:41 -10:00
Emil Lindqvist
bebfd879bf modem_cellular: lara_r6: disable modem's own LWM2M client
U-blox LARA-R6 LWM2M client is enabled by default. Not only causes this
the modem to connect to U-blox's server on its own, it also for some
reason causes the modem to reply "Destination unreachable" to DNS answers
from DNS requests that we send

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-06-25 15:42:41 -10:00
Mickael Bosch
888bde94be drivers: timer: handle the stm32u0 target
Configure the lptim to wake-up from sleep.

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
2025-06-25 15:33:47 -10:00
Loic Domaigne
836cf37dcc driver: gpio_ite_it8xxx2_v2: fix untrusted bound loop
Coverity is reporting a possible untrusted loop bound, caused by accessing
num_pins through a tainted pointer. Use explicit type cast to keep coverity
happy.

CID: 347195

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-06-25 14:09:34 +02:00
Fabio Baltieri
4f3523d9af i2c: stm32: drop few redundant guards
Drop few CONFIG_PM_DEVICE_RUNTIME guards, the pm_device_runtime
functions they are masking are no-op automatically when the
corresponding config option is not selected.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-25 14:08:08 +02:00
Fabio Baltieri
67f80e35b8 i2c: stm32: always call runtime_get when registering targets
Current code only calls pm_device_runtime_get when registering target
devices if the device is marked as wakeup capable by the application.

This does quite work for a setup with PM=n and PM_DEVICE=y and
PM_DEVICE_RUNTIME=y, where the CPU does not really go in stop mode ever,
and results in the i2c target device not working at all.

Fix this by always claiming the device when PM_DEVICE_RUNTIME is
enabled.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-25 14:08:08 +02:00
Markus Lassila
581f75656d drivers: gpio_nrfx: Free channel when changing mode
Fix an issue where calling gpio_pin_interrupt_configure
with edge mode and later calling it with level mode, did
not release the allocated gpiote channel.

Repeating the above sequence caused us to run out of
gpiote channels.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-06-25 14:07:48 +02:00
Aksel Skauge Mellbye
fccc0a7544 drivers: pwm: silabs: Add TIMER PWM driver for Series 2
Add PWM driver for the Timer peripheral on Series 2.
The TIMER uses the high-frequency EM01 Group A clock, and has
a 16- or 32-bit counter. It supports PWM period and pulse capture
on channel 0, and PWM output on all channels.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Aksel Skauge Mellbye
566fc7a7db drivers: pwm: silabs: Add LETIMER PWM driver for Series 2
Add PWM driver for the Low Energy Timer peripheral on Series 2.
The LETIMER runs at up to 32 kHz and has a 24-bit counter. It
only supports PWM output, it does not support input capture.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Bjarki Arge Andreasen
bb319603fd drivers: clock_control: nrf: add support for HFCLK24M
Add support for the HFCLK24M clock to the clock_control_nrf
device driver.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-25 14:07:20 +02:00
Andrzej Głąbek
9207a21c0e drivers: flash_util: Issue error log message when flash_fill write fails
Use LOG_ERR() instead of LOG_DBG() in flash_fill() when this function
fails to perform the write operation, so that the failure is better
visible and its cause is easier to identify.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-25 14:06:07 +02:00
Tomas Barak
d42d321b57 drivers: i2s: mcux_sai: Add condition for both directions configuration
- i2s_mcux_sai doesn't support configuration of both directions

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-06-25 14:05:47 +02:00
Benjamin Cabé
d30adebf91 drivers: espi: espi_mchp_xec: fix typo in receive_oob error checking
Check error using the proper RX mask

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 10:53:09 +02:00
Khoa Nguyen
edb1840f64 drivers: misc: ethos_u: Create the ethos_u_common for every vendor
Seperate the ``ethos_u_common`` for every vendor and
``ethos_u_arm`` for sepcific Arm's boards. Enable vendors
to self-configure the init flow and IRQ handler.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 10:52:48 +02:00
Phi Tran
d8ab33ae96 drivers: pwm: Add support for PWM driver on RSK_RX130_512KB
This is initial commit to support PWM driver
on Renesas RX130 with MTU modules.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-06-25 10:52:34 +02:00
Benjamin Cabé
97324c93f8 drivers: video: esp32_dvp: use inclusive language
Replaced the term "master clock" by "main clock"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 10:49:41 +02:00
Benjamin Cabé
4aac7c16aa drivers: video: use inclusive language
Replaced the term "master" by "primary" in video_ctrls.c/.h

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 10:49:41 +02:00
Oleksii Shcherbyna
35608e295d drivers: fuel_gauge: Fix incorrect variable in bq27xx chem_id switch
The bq27xx driver incorrectly uses the 'val' variable in a switch()
statement that should operate on 'chem_id'. This leads to incorrect
behavior for fuel gauges such as the BQ27427, where the chemical ID
determines how properties are interpreted.

This commit replaces 'switch(val)' with 'switch(chem_id)' to ensure
proper handling of fuel gauge behavior across supported devices.

Signed-off-by: Oleksii Shcherbyna <oleksii.shcherbyna@droid-technologies.com>
2025-06-25 10:49:10 +02:00
Jiafei Pan
ea24ec19e1 drivers: can: mcux: flexcan: add mmio mapping support
Use MMIO for device memory mapping, so that the driver can be used
both on MCU and MPU.

Add removed static MMU mapping in some platform accordingly.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 09:52:56 +02:00
Jiafei Pan
df0304ae09 drivers: clock_control: mcux_ccm: add flexcan clock support
Enable FlexCAN clock support on imx8mp.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 09:52:56 +02:00
Thao Luong
7dcdcf18cd drivers: spi: Add support for ra2l1
RA2L1 doesn't support for SPI Hardware Peripgheral Select.
Disable this config as default in RA2L1

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Daniel DeGrasse
640958de1d drivers: sensor: npm13xx_charger: fix build warnings from native_sim
Fix the following build warnings highlighted in this driver while
building with clang targeting native_sim:

- exp() expects a double, so passing a float would cause type promotion
- variable declarations within C switch statements are a C23 specific
  extension

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-25 09:51:18 +02:00
Benjamin Cabé
350a5ef394 drivers: display: ssd1322: fix out-of-bound access
Fix memory corruption issue where buffer pointer was not being advanced
properly due to missing dereference.

Fixes Coverity issue CID 434607
Fixes zephyrproject-rtos/zephyr#81957

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:14:31 -10:00
Benjamin Cabé
1b93ce7226 drivers: sensor: paj7620: fix return value of paj7620_get_hw_id()
Use a local signed variable to store negative return values instead of
unsigned previously so that errors are actually detected/returned.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:13:57 -10:00
Alain Volmat
d9c935c00e video: gc2145: convert to multi-instance driver
Allow the driver to be instanciated multiple times.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
96955744c6 video: gc2145: set default fmt at variable declaration
Set the default format at the moment of variable declaration
in gc2145_init function.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
28e12468fb video: gc2145: switch to usage of video cci interface
Use video cci helper functions to access to the sensor.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
49c5481aa5 video: gc2145: avoid odd even row switch by default
This bit would be used in order to generate several variants
of Bayer formats, however it shouldn't be enabled for YUV/RGB
formats by default.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
8e8d7211f3 video: gc2145: fix wrong OUTPUT_FMT / SYNC_MODE macro used
Correct wrong macro GC2145_REG_OUTPUT_FMT / GC2145_REG_SYNC_MODE
being used while a different page is being accessed.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
e511f8f44a video: gc2145: avoid useless register page change
Avoid some register page change when the right page is
already being accessible.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
747d73c856 video: gc2145: use GC2145_REG_RESET macro for page selection
Help identify register page change by using GC2145_REG_RESET macro.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
04480c87fe video: stm32: dcmipp: use video_get_csi_link_freq helper
Rely on video_get_csi_link_freq for getting CSI phy bitrate
informations.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:10:23 -10:00
Jilay Pandya
177e7d2b6a drivers: sensor: uint8_t var cannot be greater than 0xff
SENSOR_XBR818_CLOCKRATE / val->val1 is getting assigned
to uint8_t variable which is causing the logically
dead issue, this commit is a fix for it.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-24 20:08:54 -10:00
Benjamin Cabé
8186e6cc74 drivers: sensor: sht3xd: fix threshold low clear command
Fix copy-paste error causing update to SHT3XD_CMD_WRITE_TH_LOW_CLEAR to
be missing

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:06:41 -10:00
Benjamin Cabé
4b80bb5b84 drivers: can: renesas: properly clear error flag
Fix misleading comments and ensure "Bus Error" flag is properly cleared
(Bus-Off Entry flag was used twice previously).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:05:09 -10:00
Tomas Groth Christensen
089c4613ba driver: timer: enable 64 bit cycle counter for MCUX_OS_TIMER
Selects TIMER_HAS_64BIT_CYCLE_COUNTER as an dependency for MCUX_OS_TIMER
This already is supported in the timer implementation in
drivers/timer/mcux_os_timer.c

Signed-off-by: Tomas Groth Christensen <tgc@foss.dk>
2025-06-24 20:03:01 -10:00
Yongxu Wang
0bf39e8213 drivers: dma: Update NXP EDMA driver for version 5
1. The edma version 5 share one driver with edma 4.
2. Edma5 tcd structure some difference, Use tcd type to distinguish,
   and Edma5 uses 64 bytes for alignment instead of 32.
3. Some platforms have some address offsets for certain memory
   when processing from a DMA perspective, such as imx95 cm7 TCM,
   so add offset processing.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-06-24 20:02:35 -10:00
Aksel Skauge Mellbye
cb8d6dfcbb drivers: mfd: npm13xx: Namespace register macros
Prefix macros for register access with NPM13XX_ to avoid
symbol naming conflicts.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-24 22:51:13 +02:00