Commit graph zephyr/drivers
Author SHA1 Message Date
Krzysztof Chruściński
9ae8c4edbc drivers: serial: nrfx_uarte: Prepare code for extension
Rearrange code to prepare for upcoming extension that adds special
receive mode.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Mathieu Choplain
21b2283fc5 drivers: *: stm32: use series-agnostic STM32 LL headers
Use the series-agnostic STM32 LL headers from the STM32Cube HAL module
instead of series-specific ones in STM32 drivers.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-14 12:19:48 +02:00
Jun Lin
a922813034 drivers: i2c: npcx: add more timing parameters for I2C clock frequency
I2C Fast-Plus mode (1 MHz) is limited by the source clock.
For example, with a 15 MHz I2C source clock, the max I2C frequency is
~625 kHz. To support higher I2C frequencies, the APBx source clock must
be increased. This commit adds the timing parameters for I2C operation
at higher APBx clocks.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-11-14 12:19:29 +02:00
Qingsong Gou
1b8e3bdaf7 drivers: i2c: add i2c driver for sf32lb platform
Add i2c driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-14 12:19:20 +02:00
Parthiban Veerasooran
52b1e8704e drivers: ethernet: phy_microchip_t1s: use 'ret < 0' for error checks
Replace 'if (ret)' with 'if (ret < 0)' in the Microchip T1S PHY driver.
This change follows the legacy coding style commonly used in Zephyr
drivers, where error conditions are checked explicitly against negative
values. The affected functions do not return positive values, so this
modification does not change functionality. No functional change intended.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Parthiban Veerasooran
1843b3126d drivers: ethernet: phy: configure link status control for LAN867x Rev.D0
Configure the link status in the Link Status Control register for
LAN8670/1/2 Rev.D0 PHYs, depending on whether PLCA or CSMA/CD mode
is enabled. When PLCA is enabled, the link status reflects the PLCA
status. When PLCA is disabled (CSMA/CD mode), the PHY does not support
autonegotiation, so the link status is forced active by setting
the LINK_STATUS_SEMAPHORE bit.

The link status control is configured:
- During PHY initialization, for default CSMA/CD mode.
- Whenever PLCA configuration is updated.

This ensures correct link reporting and consistent behavior for
LAN867x Rev.D0 devices.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Parthiban Veerasooran
76034d043b drivers: ethernet: phy: add support for Microchip LAN867X Rev.D0 PHY
Add support for the LAN8670/1/2 Rev.D0 10BASE-T1S PHYs from Microchip.
The new Rev.D0 silicon requires a specific set of initialization
settings to be configured for optimal performance and compliance with
OPEN Alliance specifications, as described in Microchip Application Note
AN1699 (Revision G, DS60001699G – October 2025).
https://www.microchip.com/en-us/application-notes/an1699

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Jeppe Odgaard
46adf3b1bb drivers: sensor: tach_gpio: fix rpm debug logging
`data->rpm` is a signed value and should be logged as one.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-14 10:29:43 +02:00
Jeppe Odgaard
97781f8b9d drivers: sensor: tach_gpio: add pulses per round
Add pulses-per-round property.

The driver only measures one pulse and uses pulses-per-round in RPM
calculation.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-14 10:29:43 +02:00
Arunprasath P
8b53661096 drivers: comparator: microchip: Add G1 Comparator Driver
Add G1 Comparator driver for Microchip Analog Comparator Peripherals.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Pedro André
c0ba4d3ffe drivers: gnss: f9p: fix multiple rtk enabled instances
The U-blox F9P driver uses the GNSS_RTK_DATA_CALLBACK_DEFINE macro to
register a callback for when RTK data is available. This is an issue when
multiple instances of the F9P are available and RTK is enabled since this
macro leads to a naming collision. The following compilation error is
reported:

     error: redefinition of '_gnss_rtk_data_callback__f9p_rtk_data_cb'

This is because GNSS_RTK_DATA_CALLBACK_DEFINE only uses `_callback` to
identify the callback being registered. As a fix, use the recently
introduced GNSS_DT_RTK_DATA_CALLBACK_DEFINE instead, which takes into
account the `_node_id` while naming the callback.

Signed-off-by: Pedro André <pedro@sentrytechnologies.ai>
2025-11-14 10:27:46 +02:00
Sylvio Alves
327954c3ef driver: wifi: esp32: update API interface
Add set_config to allow custom mac address.
Add statistics reset function.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-11-14 10:26:42 +02:00
Jordan Yates
1113d3129c disk: sdmmc_stm32: PM handling
Lock the sleep modes while SDMMC is running operations.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-14 10:26:15 +02:00
Alberto Escolar Piedras
54d2ba3433 drivers/counter/counter_native_sim: Remove deprecated
This driver was renamed in
ab7a6de5bb
while the old kconfig options and dts binding were deprecated for 4.2
Let's remove them now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-14 10:25:41 +02:00
Yongxu Wang
dfe2c262c8 drivers: firmware: scmi: add cpu info get interface
Add scmi_cpu_info_get API to query CPU information via
NXP SCMI CPU domain protocol.

Retrieves run mode, sleep mode, and reset vector addresses
for the specified CPU ID using CPU_INFO_GET command.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-14 09:25:10 +01:00
Yongxu Wang
28b98c9ae8 drivers: firmware: scmi: add reset vector interface
Add scmi_cpu_reset_vector API for NXP SCMI CPU domain protocol.

This API allows setting CPU reset vector addresses using the
CPU_RESET_VECTOR_SET command. The vector address must point to
the initial address of the vector table

Supports 64-bit addresses and boot/start/resume vector flags.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-14 09:25:10 +01:00
Etienne Carriere
8bf93b26d6 drivers: i2s: stm32: clean indentation in instance init macros
Clean indentation in I2S_DMA_CHANNEL_INIT(), I2S_STM32_INIT() macros
of STM32 I2S driver, and SAI_DMA_CHANNEL_INIT() and I2S_STM32_SAI_INIT()
macros of STM32 I2S/SAI driver.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 10:24:56 +02:00
Etienne Carriere
e5aaceebe0 drivers: i2s: stm32: replace UTIL_AND() with IF_ENABLED()
Replace uses of UTIL_AND() with IF_ENABLED() that is far more
readable when initializing or not a structure instance.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 10:24:56 +02:00
Jilay Pandya
c9536e65c7 drivers: stepper: tmc22xx: move to driver specific folder
tmc51xx and tmc50xx have already been placed in its dedicated folder,
however,tmc22xx is not.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-11-14 09:23:14 +01:00
Jilay Pandya
015a7c6d3f drivers: stepper: create gpio_stepper folder for h-bridge & step-dir
currently h_bridge_stepper driver is directly placed in drivers/stepper
and step_dir folder contains only gpio specific functionalities. This
commit reorganizes the h_bridge_stepper in gpio_stepper folder to organize
drivers and libs based on functionality.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-11-14 09:23:14 +01:00
Jilay Pandya
da6e98e479 drivers: stepper: tmc5xxx: move to driver specific folder
tmc51xx has already been placed in its dedicated folder, however,
tmc50xx is not. use absolute path for including tmc_rampgem_template
Kconfig.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-11-14 09:23:14 +01:00
Neil Chen
201393a2b3 drivers: syscon: update syscon driver to support mcxa trng clock
Add mcxa trng clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Neil Chen
6a423fc6e9 drivers: syscon: update syscon driver to support mcxa flexio clock
Add mcxa flexio clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Tom Chang
1a8e7f3005 drivers: counter: npcx: add support for lct counter driver
This commit enables configuration and integration of LCT counter by
including relevant source and kconfig files.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-11-13 20:45:41 -05:00
Alberto Escolar Piedras
40dc5b17a8 drivers uart_native_pty: Remove deprecated options & binding
In cb53e40ff9
the uart_native_posix driver was renamed to uart_native_pty while
deprecating the old kconfig options and bidning for the 4.2 release.

Let's remove them now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 20:45:05 -05:00
Alberto Escolar Piedras
62be171fc6 drivers entropy: fake_entropy_native_posix: Remove deprecated
This driver was renamed in
4338122248
while the old kconfig options and dts binding were deprecated for 4.2
Let's remove them now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 20:44:56 -05:00
Alberto Escolar Piedras
031a3adaef drivers/ethernet/eth_native_tap: Remove deprecated kconfig options
The old native_posix ethernet was renamed to native_tap in
78f800642a
and its old kconfig options deprecated at the time (in 4.2)
Let's remove them now.

Note in this commit we move the defaults into their right place.
Defaults were set in the deprecated options so we could both
have the defaults and allow users to keep using the old options.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 20:43:53 -05:00
Siddhant Modi
904e34c41a drivers: sdhc: sdhc_spi: Adding support for cd_gpio
1. This commit adds support for the cd-gpios property
   to the dts binding for the sdhc_spi driver.
2. The _init function is updated to initialize the GPIO
   pin if it is found.
3. The _get _card_present function is updated to check
   the GPIO pin state if the pin has been initialized.

Signed-off-by: Siddhant Modi <siddhant.modi@gmail.com>
2025-11-13 20:43:12 -05:00
Albort Xue
e6efe0f217 drivers: flash: Optimize mcux_flexspi_nor erase for unaligned operations
Improve erase efficiency by using a hybrid approach that combines block
and sector erase operations.
The new implementation:
- Erases unaligned sectors at the start until block-aligned
- Erases whole blocks in the middle protion
- Erases remaining sectors at the end.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-11-13 20:42:39 -05:00
Xavier Razavet
76a102a8bd drivers: ieee802154: mcxw_get_eui64() updated to manage MAC address
The mcxw_get_eui64() function allows to provide a persistent MAC
address if it does not exist

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-11-13 20:42:22 -05:00
Holt Sun
87f8264c65 drivers: counter: add counter driver for NXP E31B.
add counter rtc jdp driver for MCXE31B.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Holt Sun
9e0cfb7b25 drivers: rtc: rtc_counter driver improvement.
Existing rtc_counter driver only support
frequency equaling 1 Hz, update it to support
any frequency.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Qingsong Gou
64d0f3faf3 drivers: clock_control: sf32lb: add get_rate support
Add get_rate support for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:41:27 -05:00
Daniel Kampert
6ff7a9ec5e sensors: apds9306: Fix typos in APDS9306 macros
- Ensure consistent naming conventions for better readability

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-11-13 20:40:53 -05:00
Daniel Kampert
dcbdfea6e7 sensors: apds9306: Add Multi-Instance Support
- Add multi-instance support to the APDS9306 ambient light sensor driver
- Replace global worker item with instance-specific worker item

Closes #97893

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-11-13 20:40:53 -05:00
Hou Zhiqiang
bf68a487a0 drivers: i2s: i2s_mcux_sai: add i.MX9 platform support
Rework the driver to support i.MX9 platforms.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
f60ab24b71 drivers: i2s: mcux_sai: set the Bit Clock Swap on the feature enabled
When the platform has the Bit Clock Swap feature, enable it.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
59a54b8d98 drivers: i2s: mcux_sai: fix the type of var num_of_bufs
Correct the type of num_of_bufs to uint32_t.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
d3f3c2c3a1 drivers: i2s: i2s_mcux_sai: use device model MMIO mapping
Change to use device model MMIO mapping APIs.

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Fix CI failures: Clean unused code
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
afe524e5f9 drivers: i2s: mcux_sai: correct DMA burst length
The burst length should be initialized with 'word_size_bits'.

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
05b81be7b2 drivers: mcux_ccm_rev2: fix code format
Remove extra space between the '=' and rvalue.

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
021afed04f drivers: mcux_ccm_rev2: add SAI clock support for i.MX9 platform
add SAI clock support for i.MX9 platform

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Fix CI failure: LEADING_SPACE: please, no spaces at the start of a line
Split code format fixing into a new patch
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
928fa39911 drivers: dma: dma_mcux_edma: enable MMIO mapping
Enable MMIO mapping in dma_mcux_edma driver

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
2025-11-13 20:39:01 -05:00
Utsav Munendra
c696414f8f driver: flash_mspi_nor: Allow specific read/write IO modes and frequencies
The driver currently provides no way to use Dual IO Read and Single IO
for the rest of the commands currently, and would erroneously use
Single IO PP command in Dual IO mode. This PR fixes and adds
support for that.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
eae12761e1 drivers: flash_mspi_nor: Remove bool tracking of target IO mode
Remove the Boolean tracking of MSPI IO mode as we can now rely on
tracking the entire dev config applied to the MSPI device, multiple
of which will exist in later commits.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
abd35f88a7 drivers: flash_mspi_nor: Flash control commands to use their own configs
Also in preparation for allowing control command frequency to be
different from the read/write frequency and initialization frequency.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
8bc4a92397 drivers: flash_mspi_nor: Track last applied MSPI config
Instead of just tracking in a bool whether the MSPI device is in
Standard MSPI vs. QPI/OPI config, track the entire MSPI config which was
last applied. This makes it easier later to track more than two configs
to apply based on the next command to transceive.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
41988ae62f drivers: flash_mspi_nor: Simplify perform_xfer function
Remove unnecessary function argument, makes later commits also simpler.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Qingsong Gou
cbe5dabd64 drivers: rtc: add rtc driver for sf32lb
add rtc driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:37:06 -05:00
Jordan Yates
764b0fa60f charger: bq2518x: configurable battery limits
Make the battery undervoltage and over-discharge limits configurable
from devicetree.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00