Commit graph

6,613 commits

Author SHA1 Message Date
Raymond Lei
a93a80be82 drivers: nxp: flexspi: fix hyper flash hang issue
CS hold time parameter is not correct which may cause bus fault
randomly.
System hang during status register reading after flash progromming which
is caused by parameter accessing in XIP mode.
Add dummy delay for READ command according the flash datasheet which is
required for SDR mode.
Use FlexSPI internal divider for clock updating instead of register in
CCM to avoid potential risk caused by flash access during clock updating
procedure.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-26 22:14:38 -05:00
Sylvio Alves
72b42e1d45 soc: esp32: increase HCI command TX buffer count
Increase the number of HCI command transmit buffers on ESP32 to prevent
sporadic command timeouts. This is a temporary workaround.
Upcoming changes to the BLE proprietary blobs will address the root cause.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-26 10:52:51 -10:00
Henrik Brix Andersen
33db1542ac soc: neorv32: list NEORV32 v1.11.6 as currently supported version
List NEORV32 v1.11.6 as the currently supported version. No changes to the
in-tree drivers needed for the changes between v1.11.3 and v1.11.6.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-06-26 10:52:21 -10:00
Fabian Otto
515adfa503 soc: nxp lpc55xxxx: Enable clock on all used Flexcomm ports
Previously the clock was not attached to all Flexcomm ports. Some ports
were configured with FRO_12M, others with FRO_HF, some not at all.

Now every Flexcomm port in I2C, SPI or USART mode uses the FRO_HF clock,
if it is enabled in the device tree, to cover all use cases.

Signed-off-by: Fabian Otto <fabian.otto@rohde-schwarz.com>
2025-06-26 11:02:34 -05:00
Romain Jayles
684b90e6b3 bluetooth: stm32wbax: add temperature calibration of linklayer
This patch allows to link the request of the linklayer for a
temperature calibration to the temperature driver.
The linklayer will then adapt and trigger its calibration related to
the current temperature.

Signed-off-by: Romain Jayles <romain.jayles@st.com>
2025-06-26 10:59:31 -05:00
Håkon Amundsen
e96a63ad82 soc: nordic: 54h20: fix typo ETX -> EXT
Fix typo in BICR schema

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-06-26 14:08:48 +02:00
Sebastian Głąb
031040872e drivers: i2c: Support i2c23 and i2c24 instances
Extend I2C driver with possibility to use
- TWIM23, TWIM24,
- TWIS23, TWIS24.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-06-26 14:07:55 +02:00
Etienne Carriere
d54c550ba9 soc: st: stm32wbax: refcount backup domain accesses requests
Add LINKLAYER_PLAT_EnableBackupDomainAccess()  and
LINKLAYER_PLAT_DisableBackupDomainAccess() to use Zephyr resources
that use a reference counter for access requests, for enabling
and disabling access the BackupDomain resources.

Bump hal_stm32 module to the revision integrating related stm32wba
BLE updates.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
7514c1aedc soc: st: stm32: reference counter for Backup SRAM accesses
Use recently added SoCs functions to request access to SoC backup
domain resources These function use a reference counter to track these
request and ensure the resources are accessible as long as at least a
consumer requires access.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
e3c2036994 soc: st: stm32: reference counting for backup domain accesses
Add SoC functions to enable/disable STM32 backup Domain access
and use a reference counter to track requests. These helper functions
may be called from a interrupt context. On domain access enable, the
function loops until written bit is set however this is expected to be
effective after very few clock cycles and seems not even required
(not mentioned in any SoC documentation). The loop is preserved as
used in previous implementation.

Among all supported STM32 SoCs, only STM32C0 and STM32WB0 series do not
implement this mechanism hence add option CONFIG_STM32_BACKUP_PROTECTION
that is enabled for all SoC series but these 2.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Guennadi Liakhovetski
3f5f981f16 soc: intel_adsp: fix debug window number
Fixes: commit 5f4b51f9b1 ("soc: intel_adsp: add a debug window slot
descriptor") - restore the maximum debug slot number. The added slot
resides in page 0, not at the end of the array. The bug didn't have
any run-time implications - no access to those high index value slots
is performed, all platforms so far have 3 slots at most, so this is a
pure correctness fix.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-26 11:13:08 +02:00
Martin Jäger
cba8b33c3d drivers: ieee802154: Add implementation for ESP32 series
Initial commit of the IEEE 802.15.4 driver using Espressif HAL.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-06-26 11:12:34 +02:00
Marek Matej
188eef484a soc: espresssif: esp32c6: add iterable section header
Fix subsystems build by providing the iterable section header.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-26 11:12:34 +02:00
Yangbo Lu
10fe3d368b soc: nxp: imx943: avoid systick stop for M33
The SLEEP_HOLD_EN is enabled by default, that will
gate systick, clear it to fix.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-26 09:41:53 +02:00
Erwan Gouriou
2f20e78d7d dts: n6: Allow using axisram2 in chainloaded application
Make axisram2 which is used in fsbl mode available as well to
chainloaded application in order not to loose 1M of RAM

In order to avoid conflicts with bootloader, verify that code + ro data
of the loaded application won't go further than bootloader start address.
This is done with a linker assert.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
51373c77c4 soc: stm32n6: Don't sign mcuboot chainloaded images
This signature is only valid for FSBL images.
MCUBooot will sign images by itself.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
30705108bd soc: stm32n6: Update ROM_START_OFFSET
Offset is 400 for a good reason (yet to be defined).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Alvis Sun
23ba092656 boards: npcx: add support for npck3m8k_evb
Add support for npck3m8k board that is a development platform to
evaluate the Nuvoton NPCK3 embedded controller.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-06-26 09:39:11 +02:00
Marek Matej
87f1cb5b32 soc: espressif: segment parser end condition
Fix and simplify the end-of-segment detecting condition.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-25 16:00:40 -10:00
Khoa Nguyen
be444f212e soc: renesas: ra: Add support for Renesas RA8P1 SoC
Add support for Renesas RA8P1 SoC

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Mickael Bosch
03bca9bae9 soc: stm32u0: add PM
STM32U0 specific changes to enable the PM feature.
Base on the power-related code from the STM32U5 target.

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
2025-06-25 15:33:47 -10:00
Jiafei Pan
d5b9e74476 boards: imx8mp_evk: a53: enable FlexCAN on the board
Added dts nodes of FlexCAN1 and FlexCAN2 in SoC dts.
Added dts nodes and overlay in imx8mp_evk board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 09:52:56 +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
Thao Luong
434d022742 soc: renesas: ra: Add support RA2L1 80 pins, 64 pins and 48 pins
Add support RA2L1 80 pins, 64 pins and 48 pins packages

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Lucien Zhao
2bcec4c67e soc: nxp: imxrt7xx: set I2S_HAS_PLL_SETTING as n
The existing SAI diver cannot initialize the PLL on the
board, so the PLL settings will not be performed in the
driver.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Tien Nguyen
7368758bd1 soc: renesas: rz: Update Renesas RZ/V2N, RZ/V2L according to RZ/V2H
Porting gp_renesas_isr_context variable used in FSP interrupt source
to unify with RZ/V2H and prevent build error since they share the same
hal_renesas source code.

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Tien Nguyen
9688b7510f soc: renesas: Add support for Renesas RZ/V2H R8 core
Add support for Renesas RZ/V2H R8 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Davi Herculano
c3dd356f1a soc: imxrt10xx: fix SAI3 pll clock config
Fix the sai3 case in imxrt_audio_codec_pll_init which
was using sai2 constants.

Signed-off-by: Davi Herculano <herculanodavi@gmail.com>
2025-06-24 14:19:43 +02:00
Phi Tran
3fa9495172 drivers: gpio: add gpio interrupt support for RX130
- Add support for gpio interrupt on RX130.
- Add support for gpio-keys input subsys on RSK_RX130_512KB boards.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-06-24 14:18:41 +02:00
Shaunak saha
05d1c3a7f0 boards: mps4: Add initial support for corstone315
What is changed?
  - Add initial support for the MPS4 Corstone-315 FVP platform, including
    board and SoC definitions.The qualifier to build/run application
    with board mps4/corstone315 is
    `mps4/corstone315/fvp` for secure and
    `mps3/corstone315/fvp/ns` for non-secure.
  - FVP testing with corstone315 uses the ARM FVP
    `FVP_Corstone_SSE-315`.

Why do we need this change?
  - This enables FVP support for corstone315.
  - A separate FVP variant was added for corstone315 as the TFM board
    used for non-secure variant differs for FPGA and FVP.
    TFM board `arm/mps4/corstone315` support is present but no FVP support
    yet. We can test this by building TF-M with
    -DTFM_PLATFORM=arm/mps4/corstone315 and then lauching FVP:
    FVP_Corstone_SSE-315 --data "bl1_1.bin"@0x11000000
      --data "cm_provisioning_bundle.bin"@0x12024000
      --data "dm_provisioning_bundle.bin"@0x1202aa00
      --data "bl2_signed.bin"@0x12031400
      --data "tfm_s_ns_signed.bin"@0x38000000

Signed-off-by: Shaunak saha <ssaha@tsavoritesi.com>
2025-06-23 16:30:52 -05:00
Muzaffar Ahmed
65d8f816e5 drivers: wifi: siwx91x: Disable the 160 MHz feature
Fixes: commit a73f20214 ("drivers: wifi: siwx91x: Fix boot_config")
Disabled the 160 MHz feature due to stability issues (mode change)

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-23 12:46:10 -07:00
Guennadi Liakhovetski
b8d382ef09 intel_adsp: ace: add gdb support
Add gdbstub support to Meteor Lake and a base for other ACE
platforms. Based on the Tiger Lake implementation, but some registers
do differ.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Noah Klayman
a9c47a47a4 intel_adsp: cavs: add gdb support
Uses SRAM debug region to pass GDB messages to host, which is exposed
via PTY by cavstool with -d arg or using the SOF kernel driver via a
debugfs file.

Signed-off-by: Noah Klayman <noah.klayman@intel.com>
[guennadi.liakhovetski@linux.intel.com: update to current "main"]
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
5f4b51f9b1 soc: intel_adsp: add a debug window slot descriptor
Add a debug window slot descriptor for the debug window area in the
first page, where descriptors themselves occupy the first few
hundreds of bytes. This area begins 1024 bytes after the beginning of
the debug window until the end of the page and is therefore 3 * 1024
bytes large. Descriptor 15 will be used to describe it and it will be
used for the GDB stub.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
cae5e5adc6 soc: intel_adsp: gather debug window indices in one place
All debug window slot indices should be defined in
adsp_debug_window.h, move them there and use them consistently.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Manuel Argüelles
4def7aceec soc: nxp: s32k3: use MPU_REGION_ENTRY macro
Align MPU region definitions with other SoCs by using the
`MPU_REGION_ENTRY` macro.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-06-23 13:45:03 +02:00
Tien Nguyen
af4e875ea5 soc: renesas: rz: use CONFIG_ATOMIC_OPERATIONS_C on Renesas RZ/A2M
Use CONFIG_ATOMIC_OPERATIONS_C for atomic operations on Renesas RZ/A2M

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-23 09:47:20 +02:00
Aymen LAOUINI
dab414ff82 soc: nordic: add support of 'iron' variant to application
- use early init hook instead of nrf92_init.
- add config flag for iron variant.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Tony Han
5fa0898441 soc: microchip: sam: update MMU for sama7g5 FLEXCOM
When the FLEXCOM is activated in the DT, configure it's register
region with strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
256031eb81 soc: microchip: sam: set CONFIG_MFD to 'y' when FLEXCOM is used
When there are FLEXCOM nodes in the device tree, set CONFIG_MFD to
'y' automatically.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tamas Jozsi
2c43a00f65 boards: fix Bluetooth LE support on the SparkFun ThingPlus Matter MGM240
Create and select the proper module device tree file which loads the
correct radio config for the MGM240P module.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-21 15:31:36 +02:00
Tamas Jozsi
e4dc7c9fb1 soc: silabs: Add support for the MGM240SD22VNA
Also introduce the framework to support other
Silicon Labs modules.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-21 15:31:36 +02:00
Camille BAUD
8c385be293 soc: bflb: enable clock_control for bl60x
This enables the clock_control driver build on bl60x.
It is currently deferred init, due to being incompatible
with current SDK-based boot, to avoid later giant PR.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-21 10:40:20 +02:00
Sylvio Alves
db1fe6005a soc: espressif: align flashing address with DTS configuration
The current CMakeLists.txt uses hardcoded flash addresses for the
bootloader and application, which may not match the slot defined
in the DTS file. This can lead to inconsistencies when flashing
and running images.

This update introduces support for using CONFIG_FLASH_LOAD_OFFSET
and applies CONFIG_BUILD_OUTPUT_ADJUST_LMA if specified,
ensuring that the final image address aligns with the DTS
and runtime expectations.

Note: For ESP32-C6, a custom workaround is included since the
LPCORE does not support MCUboot images.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-21 08:19:47 +02:00
Mathieu Choplain
fcd30046cb drivers: pinctrl: stm32: add support for STM32N6 pinctrl
Modify the STM32 pinctrl driver and SoC-specific pinctrl macros
to introduce support of the st,stm32n6-pinctrl variant.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-20 13:21:55 -04:00
Alain Volmat
6274df7a0b soc: st: stm32: stm32n6: set 256 SMH buffer alignment for LTDC
Set the LTDC buffer alignment to 256 in order to avoid an
issue when accessing to PSRAM via XSPI.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
d33f579684 soc: st: stm32: set default video buffer align to 16 for DCMIPP
Set the default video buffer alignment constraint to 16 when DCMIPP
is being used.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
7640180e7c soc: st: stm32: set default SMH attribute for LTDC/video buffers
The SMH attribute when using the XSPI PSRAM is set to EXTERNAL (2)
within the driver hence set default for both LTDC and video
buffer SMH attribute to 2 if all conditions are validated.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Marek Matej
648bfe090c soc: espressif: Support large buffers in custom PSRAM sections
Several subsystems have configuration options that allow large buffers
to be placed in specialized memory sections. When PSRAM is enabled, the
MBEDTLS heap and LVGL heap and buffer can be relocated to custom sections
within the PSRAM segment.

Enabling `CONFIG_ESP_SPIRAM` together with any of the following options:
* `CONFIG_MBEDTLS_HEAP_CUSTOM_SECTION`
* `CONFIG_LV_Z_MEMORY_POOL_CUSTOM_SECTION`
* `CONFIG_LV_Z_VDB_CUSTOM_SECTION`

will place the corresponding buffers into the `.mbedtls_heap`,
`.lvgl_heap`, and `.lvgl_buf` sections, respectively.
If none of these custom section options are enabled, the buffers will
fall back to the `.ext_ram.bss` section.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-19 09:36:27 +02:00
Declan Snyder
877fa975cc spi_nxp_lpspi: Remove MCUX branding
Since the LPSPI drivers no long use MCUX at all, remove the MCUX
branding, to avoid confusion. In the future if an implementation uses
the MCUX SDK driver, it should specifically be called by MCUX in the
name.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00