Commit graph

7,339 commits

Author SHA1 Message Date
Bjarki Arge Andreasen
7c4b0c29f0 soc: nordic: nrf54h: bicr: fix incorrect scaling of lfrccal props
The lfrccal takes the two properties tempMeasIntervalSeconds and
tempDeltaCalibrationTriggerCelsius which are in steps of 0.25.
The bicrgen.py script incorrectly treated these values as steps
of 1, so the actual values written to (and read from) bicr where
scaled incorrectly.

This commit fixes the scaling for those two props.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 12:46:14 -04:00
Gerard Marull-Paretas
2d50a4176b drivers: pinctrl: sf32lb52x: initial driver
Initial driver for SF32LB52X SoCs.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
6135b8e450 soc: sifli: sf32: signal HAL selection and use CMSIS HAL glue code
This brings CMSIS HAL glue code, which is required if we want to enable
any HAL module without everything blowing up. cmsis_core_m_defaults.h
cannot be used once we enable HAL. CMSIS is that nice.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
be6813febb soc: sifli: introduce SF32LB52x
SF32LB52x is a SoC from SiFli Technologies(Nanjing) Co., Ltd, based on
Arm Star-MC1 core (Cortex-M33 compatible).

For more details, see:
https://wiki.sifli.com/en/hardware/SF32LB520-3-5-7-HW-Application.html
https://wiki.sifli.com/en/hardware/SF32LB52B-E-G-J-HW-Application.html

0-3-5-7 are powered using a Lithium battery and support USB charging.
B-E-G-J are powered at 3.3V and do not support charging.

Other termination codes indicate what type of memory and size is
embedded in the package (QSPI NOR or PSRAM).

Other families exist within the SF32LB family, like SF32LB56x,
SF32LB58x, etc.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Mohamed Irfan
91f3447ccd soc: siwg917: nwp: PM enablement of BT for siwx91x
Added BT PM changes for nwp driver

Signed-off-by: Mohamed Irfan <irfan.mohamed@silabs.com>
2025-09-19 16:33:18 +02:00
Khanh Nguyen
9421b82699 soc: renesas: Enable secure security attribution for DMA module
Currently, the DMA on several Renesas boards is failing due to
the security attribution of DMA.

As a solution: Enable secure security attribution
for DMA module for:
- RA6: ra6e1, ra6e2, ra6m4, ra6m5
- RA4: ra4c1, ra4e1, ra4e2, ra4l1, ra4m2, ra4m3

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-19 08:35:41 -04:00
Ren Chen
de93d4f41c soc: ite: it82xx2: add it82000.bw variant support
as title.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-09-19 08:35:10 -04:00
Bjarki Arge Andreasen
61a9d6aa45 soc: nordic: enable CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE for all
Enable CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE by default for all
nordic SoCs if CONFIG_PM_DEVICE_RUNTIME is used. This will ensure
consistent behavior across all nordic SoCs and remove the need
for pasting the devicetree propert zephyr,pm-device-runtime-auto
everywhere.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 08:06:09 +02:00
Qiang Zhao
77f035ebe7 soc: imx93 m33: enable CPU_CORTEX_M_HAS_DWT
enable CPU_CORTEX_M_HAS_DWT for imx93 core m33

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-09-18 13:48:15 -04:00
Aksel Skauge Mellbye
2a26c20693 soc: silabs: Add BGM220P modules
Add support for BGM220P modules. Enable oscillators in SoC DTS
since the necessary crystals are present in the modules.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-18 15:43:02 +01:00
Aksel Skauge Mellbye
963454ac46 soc: silabs: xg22: Add missing EUART0 peripheral
Add missing EUART0 peripheral to devicetree for xg22.
Fix NUM_IRQS, there are 64 external interrupts on xg22.
Remove `select` of UART_INTERRUPT_DRIVEN at SoC level, this doesn't
belong here, since it prevents disabling the UART. This should be a
board or application level decision.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-18 15:43:02 +01:00
Hau Ho
e45080bcd0 soc: renesas: rx: Initial support for RX26T SOC
This commit to initial support for RX26T SOC using Renesas RXv3 core.

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-09-18 15:40:34 +01:00
CHEN Xing
b850f1b94f soc: microchip: sam: update for sama7g5 sdmmc
Update MMU and GCLK configurations for sdmmc.

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
Jonathan Nilsen
6b93eacb6c soc: nordic: uicr: print cmake warning when used without sysbuild
Because generation and programming of UICR + PERIPHCONF artifacts
depend on the 'uicr' image which in turn must be included by Sysbuild,
many if not most nrf54h20 applications will need to be built using
Sysbuild to function as intended.

To make this known to the user, print a CMake warning whenever
CONFIG_NRF_PERIPHCONF_SECTION=y but Sysbuild is not being used.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-09-17 19:12:36 -04:00
Jonathan Nilsen
1cb9408f19 soc: nordic: nrf54h: generate PERIPHCONF entries based on devicetree
Add build system support for populating the PERIPHCONF
(global domain peripheral configuration), based on nodes and properties
found in the devicetree. This should make it so all samples and tests
that were broken by the move to IronSide SE now function correctly
without workarounds or manual steps.

When enabled, a new python script called gen_periphconf_entries.py is
run when building. The script iterates over nodes and properties in the
devicetree and generates a C file called periphconf_entries_generated.c
in the build directory, which is added as a source file. The C file
uses the macros from uicr.h to configure the global domain according
to the devicetree.

The PERIPHCONF entry generation is enabled by default when building
for nrf54h20dk/nrf54h20/cpuapp and nrf54h20dk/nrf54h20/cpurad.
It will also be used on nrf9280 soon, therefore it is placed
in the common uicr directory.

This new feature does the same job as nrf-regtool did when building
for nrf54h20 before, and is compatible by the bindings that were used
by nrf-regtool.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-09-17 19:12:36 -04:00
Yassine El Aissaoui
0c9a8c6813 soc: nxp: mcxw: Fix MCXW71 BLE warning during init
SOC_MCXW716C is using a different ACL_TX_COUNT compared
to SOC_MCXW727C

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-09-17 14:54:39 +02:00
Erwan Gouriou
e4dcd5d10c soc: st: stm32n6: Provide static mpu regions for !XIP
In !XIP case, provide RAM_RO and RAM_RW regions with their
respective MPU configurations.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
Co-authored-by: Sudan Landge <sudan.landge@arm.com>
2025-09-17 14:54:28 +02:00
Erwan Gouriou
d734c3768a soc: stm32n6: Compute FLASH_SIZE when XIP=y
In XIP, we need to know FLASH_SIZE.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-17 14:54:28 +02:00
Erwan Gouriou
9e46716d09 soc: stm32: stm32n6: Define MPU_GAP_FILLING also with USERSPACE
MCU_GAP_FILLING is advised on ARMv8 based platforms to prevent from
against attacks that attempt to execute malicious code from SRAM.
It is enabled by default when USERSPACE is disabled, enable it
also when enabled.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-17 14:54:28 +02:00
Devin Jaenicke
d2600ba839 soc: silabs: Add support for bgm220sc22hna2 module
This commit adds support for the Silicon Labs BGM220SC22HNA2 SoC.

Signed-off-by: Devin Jaenicke <devinjaenicke@glassboard.com>
2025-09-17 11:16:17 +01:00
Manuel Argüelles
0f0cad00d4 drivers: pinctrl: nxp: drop soc name from siul2 driver
The SIUL2 pin control driver is a native implementation usable across
all NXP SoCs with SIUL2 IP. Remove the "S32" prefix to allow clean
reuse by other families.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-09-17 10:07:31 +02:00
Albort Xue
d5f4976f71 soc: nxp: imxrt10xx: update range of DCDC output voltage.
According to the datasheet, NXP recommands a DCDC output
voltage range of 0.925V to 1.3V.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-09-17 08:44:07 +02:00
Jason Yu
bd10f9301e drivers: hwinfo: mcux_src_rev2: Change to use dts as dependency
Originally the driver is selected if `HAS_MCUX_SRC_V2` is
selected in SOC level kConfig.
Change to use dts to mark the driver is avaiable for some SOC.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-09-17 08:43:16 +02:00
Lucien Zhao
30d5243ed4 samples: drivers: i2s_codec: support sai1 codec function on RT1180
- add imxrt_audio_codec_pll_init function in soc.c
- add sai1 pin configuration
- Verify i2s_codec case on cm33/cm7 core

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-17 08:42:44 +02:00
Biwen Li
b50b091e9c boards: nxp: imx943_evk: enable m70 and m71
Enable m70 and m71 for imx943_evk

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-09-17 08:42:32 +02:00
Anisetti Avinash Krishna
377926ca0d soc: intel: Added support for sys_poweroff on adl and atom
Added support for sys_poweroff on ADL and ATOM socs based on
acpi_poweroff.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-16 17:20:41 -04:00
Felix Wang
0cb44d75ac soc: nxp: kinetis: clock update for LPIT instances on KE1XZ
Configure LPIT0 IP clock if devicetree status is okay.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-16 16:06:48 +02:00
Matteo Vigni
caef47ba75 soc: st: stm32: stm32h7x: Add initialization of TCM
Add ITCM and DTCM initialization code in soc_reset_hook() on M7 core.

Signed-off-by: Matteo Vigni <mvigni@enphaseenergy.com>
2025-09-16 10:54:17 +01:00
Phuc Pham
5a193b2f7d soc: renesas: Add linker support for OpenAMP sample on Renesas RZ/V2L
Add linker support for OpenAMP sample on Renesas RZ/V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Jeremy Dick
0494e3c7f8 dts: arm: renesas: ra: Separate the OFS memory into individual regions
Create separate memory regions for each OFS register. With a single
region the linker will gap fill the load segment with zeros between
each option setting section that gets placed in the region when
generating the .elf file.

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-09-16 09:54:25 +02:00
Tom Chang
f41532eb1b soc: npcx: update register definition for GDMA
This commit updates the GDMA register definitions to align with the
specifications of the chip series.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-09-16 09:53:30 +02:00
Fabian Pflug
5d12b68528 soc: ti: cc23x0: disable .bin generation
The .bin file is huge (>1GB) and will probably not be used by anyone if
there are much smaller alternatives. Because of that, disable it by
default for this soc. There is also no support for generating the
CRC32 checksum for the ccfg section in the binary.

Signed-off-by: Fabian Pflug <fabian.pflug@gumulka.eu>
2025-09-15 14:06:11 -04:00
Fabian Pflug
38b9f1f8a8 soc: ti: cc23x0: Add helper script to calculate crc32
As stated in [0] section 9.2 Customer Configuration:

	There are four different CRCs used to validate the CCFG data.
	One of the CRCs, the user record CRC, is optional and is the
	last four bytes of the 128B user record. The data over which
	the CRC is calculated starts at “Data Start Offset” from Table
	9-2 and ends at the "CRC Offset". CRC field width is 4 bytes.

Meaning the MCU will not start if the CRC fields are not correct.
TI's tools will automagically set these fields, but other tools have to
do it by hand. Therefore a new post-build-command is introduced to set
the fields at least in the .hex file by generating a new _crc32.hex
file.

[0] https://www.ti.com/lit/ug/swcu193a/swcu193a.pdf

Signed-off-by: Fabian Pflug <fabian.pflug@gumulka.eu>
2025-09-15 14:06:11 -04:00
Sebastian Bøe
32c6776256 soc: nordic: uicr: Fix dependency issue
Although not reproducible locally, it has been observed in CI that the
uicr image will not always be the last image to be run.

To ensure it is the last image to be run we have it depend on the
'image' image when defined.

The uicr image is generated based on all other images in the build and
must therefore run last.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-15 12:09:22 +02:00
Tomasz Leman
a1adced1c4 intel_adsp: ace: Remove redundant HPSRAM init from D3 restore
Remove hp_sram_init() call from boot_d3_restore() as it's redundant and
causes TLB access errors. The TLB driver's adsp_mm_restore_context()
already handles all HPSRAM power management and content restoration.

The removed code was attempting to zero memory regions that are
intentionally unmapped by the TLB driver for power optimization, causing
access to disabled TLB entries during D3→D0 transitions.

Additionally, hp_sram_init() powers up all memory banks while the TLB
restore function correctly enables only the banks that were actually
used, maintaining proper power optimization.

Current flow causes errors in simulation which revealed this incorrect
double initialization in test scenarios with minimal firmware
configurations.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-09-15 12:08:21 +02:00
Maciej Kusio
df40dff6fb arch: xtensa: clean up interrupt handling
Simplifying flow of handling interrupts:
- removing all _soc_inthandlers.h
- removing xtensa_intgen*
- removing XTENSA_GEN_HANDLERS Kconfig
- keeping optimized irq detection
- single handler with irq level as parameter

Signed-off-by: Maciej Kusio <rysiof@gmail.com>
2025-09-14 17:02:20 +02:00
Mohamed Azhar
17b97851ff drivers: gpio: microchip: add gpio driver for Port G1 IP
Add gpio driver for Microchip Port G1 Peripheral IPs

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-09-13 18:13:33 -04:00
Arunprasath P
df2a0e53ff soc: microchip: add support for PIC32CM JH SoC series
Adds initial SoC-level support for the Microchip
PIC32CM JH series, including SoC definition files.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-09-13 18:13:33 -04:00
Marek Maškarinec
64984bb618 soc: st: Add stm32l083xx
Add stm32l083xx SoC variants that are similar to stm32l073xx with an added
AES accelerator.

Signed-off-by: Marek Maškarinec <marek.maskarinec@hardwario.com>
2025-09-12 18:31:55 +02:00
Vit Stanicek
84373c4c64 soc: mimxrt685s/hifi4: Fix HW cycle count
Change hardware cycle count (CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC) to 594
MHz. Move that value to the SoC layer's DT.

Validated with the amp_blinky example - the period of the blinking LED
is exactly 2 seconds, like was programmed.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-09-12 13:21:24 +02:00
Marek Matej
3476212f72 soc: espressif: esp32h2: remove kernel include
Remove unnecessary include from ESP32-H2 SoC sources.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-12 13:21:02 +02:00
Tim Lin
24de607380 drivers/i2c: it8xxx2: Allow I2C target entry power saving mode
Add I2C_TARGET_ALLOW_POWER_SAVING config. Enable this config makes I2C
target device can enter Doze/Deep doze states while the bus is idle.
Ongoing transfers will block low-power entry until they are completed,
ensuring correct communication while still reducing overall power
consumption.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-09-12 13:20:51 +02:00
Thomas Stranger
0414683260 soc: st: stm32: add stm32c051 support
Add STM32C051 to the STM32C0 series

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-12 08:20:07 +01:00
Sylvio Alves
9b16701f8e soc: espressif: place arch_common in IRAM for proper boot
Ensure sw_isr_common, dynamic_isr, and init routines are executed from IRAM
by relocating libarch__common.a section.

Running these from flash prevents the board from booting properly, as flash
access is not available during early initialization.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-11 18:09:32 +01:00
Ayush Singh
881cc72183 soc: ti: k3: Add support for AM6254 A53 cores
- AM6254 is a variant of AM6234 with GPU.
- Used in rev A1 of PocketBeagle 2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-11 18:07:17 +01:00
Ayush Singh
a60167c7f7 soc: ti: k3: Add support for AM6254 m4f
- AM6254 is a variant of AM6234 with GPU.
- Used in the rev A1 of PocketBeagle 2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-11 18:07:17 +01:00
Adam Kondraciuk
8a5365c26c soc: nordic: nrf54h: s2ram: Add FPU retention
Add FPU power management for suspend to RAM procedures.
Add FPU save/restore procedures when `FPU_SHARING` feature
is disabled.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-09-11 06:26:49 -04:00
Khoa Nguyen
7ea7e13b9c soc: renesas: ra: Update init flow to start second core
- Add ``R_BSP_SecondaryCoreStart`` for the primary core to start
the secondary core
- Disable ``clock_init`` for the secondary core

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
614889b32b soc: renesas: ra: Add configs to enable building second core app
Add configs to enable building the second core app

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
8a1118f03c soc: renesas: ra: Correct the duplicate section for ek_ra8p1
Correct the duplicate section for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00