Commit graph

28,390 commits

Author SHA1 Message Date
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
Jordan Yates
831c8a7e48 charger: bq2518x: more configuration options
Add configuration for the VSYS target regulation voltage.

Explicitly specify the threshold at which charging will resume, instead
of deriving it from the combination of two devicetree properties which
have no compile-time validation.

Simplify the process of initialising the chip by precomputing the
register values and explicitly writing the whole register, instead of
updating multiple fields individually.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Jordan Yates
833cbd8af8 charger: bq2518x variants
Add support for the bq25186 and bq25188 chip variants.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Jordan Yates
c881deabd8 charger: bq25180: rename to bq2518x
Rename the bq25180 implementation and files to the more generic bq2518x.
This charger family contains the bq25180, bq25186, bq25188 and the
standalone (non-I2C) bq25185.

The register maps are practically identical, so the driver should be
re-used.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Qingsong Gou
5c52f25f5a drivers: input: add ft6146 driver
add initial driver for ft6146

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:36:08 -05:00
Arunprasath P
aa6414f09b drivers: dma: microchip: Add G1 DMA Driver
Add G1 DMA driver for Microchip DMA Peripherals.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-13 20:35:43 -05:00
Arnaud Pouliquen
6c508cbd52 drivers: ethernet: stm32: add support of the stm32mp13
Add the support of the stm32mp13 ethernet:
- Adapt to HAL API
- Add support of a memory region in DT for descriptor and buffers
- Add support of PHY with/without crystal 50MHz

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
b05a6f6344 drivers: ethernet: stm32: cleanup deprecated ETH_TxPacketConfig typedef
The typedef ETH_TxPacketConfigTypeDef is used consistently in the driver.
However, some instances of ETH_TxPacketConfig have not yet been replaced.
On the STM32MP13 series, the ETH_TxPacketConfig typedef is no longer
defined. This cleanup ensures compatibility and consistency.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
d8e7887ba9 drivers: gpio: invert I2C config dependency for MCP23xxx
The GPIO_MCP230XX config currently depends on the I2C config. This means
that the board/SoC must enable the I2C config to support MCP23xxx devices.
Inverting this dependency allows declaring GPIO_MCP230XX directly in the
board/SoC defconfig without explicitly enabling I2C.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Suggested-by Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
e7a7639d1f drivers: ethernet: add initial support of the LAN8742 PHY
Add basic support of the LAN8742 RMII phy. The driver is inspired
from the phy_mii generic driver, with the support of a GPIO reset.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Jordan Yates
463a6fe8b9 spi: nrfx_spim: cleanup PM usage
Release the PM constraint at the end of the context in which it was
requested (`transceive`), instead of in a semi-related function
(`finalize_spi_transaction`) which is also called by other API functions
(`spi_release`). Asynchronous usage is released in the transaction
complete callback.

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