Commit graph

6,613 commits

Author SHA1 Message Date
Adam Mitchell
02c129369b soc: st: st: h7: Add missing definition for STM32H742xx
Adds stm32h742xx to stm32h7x family

Signed-off-by: Adam Mitchell <adam.mitchell@brillpower.com>
2025-10-03 21:10:43 -04:00
Iuliana Prodan
6a3ccab892 linker: nxp: imxrt6xx: hifi4: add missing include
Add the #include <snippets-sections.ld> directive
to include a linker file automatically.
This file defines additional linker sections that
are dynamically added during the build process.

It is placed at the very end of the SECTIONS block,
ensuring that any sections it defines appear after
all standard sections.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-10-03 20:58:12 -04:00
Alvis Sun
97d8aa307c soc: npcx: update npck register structure checks for consistency
As title.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-10-03 12:51:55 +03:00
Hou Zhiqiang
531ea300c8 soc: nxp: imx91: add MIMX9111 support
Add SoC MIMX9111 support.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-03 12:51:13 +03:00
Etienne Carriere
98c92d3234 soc: st: stm32u0: enable flash instruction cache
Enable flash instruction cache on U0 SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-03 12:50:47 +03:00
Etienne Carriere
b56487892d soc: st: stm32: use CONFIG_STM32_FLASH_PREFETCH where applicable
Use CONFIG_STM32_FLASH_PREFETCH config option to enable flash prefetch
in C0/F0/F1/F2/F3/F4/F7/G4/L0/L1/L4/U0/U3/WB/WBA/WBL for consistency
with other SoCs that use this configuration switch, default enabled
at SoC default config level.

Add SoC hidden config option HAS_STM32_FLASH_PREFETCH enabled for
SoCs that support the feature. STM32_FLASH_PREFETCH is default
enabled for all SoC that have HAS_STM32_FLASH_PREFETCH unless target
specific constraints (as for G0Bx/G0Cx SoCs).

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-03 12:50:47 +03:00
Etienne Carriere
7c47bc9320 soc: st: stm32u3: add flash prefetch
Implement flash prefetch for STM32U3xx SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-03 12:50:47 +03:00
Hou Zhiqiang
92d06ac131 soc: nxp: imx: add resource table section for Cortex-A
Add .resource_table section to the linker script for the
Cortex-A core of i.MX series.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-10-02 21:57:54 +02:00
Krzysztof Chruściński
c77e5a60fd soc: nordic: common: mram_latency: Fix returning uninitialized value
An uninitialized variable was returned on success which could led by
init_nrfs.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-02 16:49:33 +02:00
Bjarki Arge Andreasen
804134f28c soc: nordic: nrf54h: increase default log stack size if CONFIG_PM=y
The default log process thread stack size needs to be increased to
account for the recursion into resuming power domains, which
may happen within char_out for some backends like uart.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-02 16:48:59 +02:00
Rahul Gurram
9ee617a8ee soc: silabs: siwx91x: Expose firmware upgrade API
siwx91x require a specific API to communicate with the bootloader in order
to achieve firmware upgrade. This commit introduces the configuration
symbol to import the helper library.

[Jérôme: split commits, reword the commit log]

Co-authored-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-10-02 14:18:53 +02:00
Rahul Gurram
b781386e1e soc: silabs: siwx91x: Implement sys_reset()
siwx91x requires a few specific actions to reboot properly.

[Jérôme: split commits, reword the commit log, fix prototype]

Co-authored-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-10-02 14:18:53 +02:00
Lin Yu-Cheng
75c4be1f51 soc: realtek: ec: Implement power saving
Impelment RTS5912 power saving (heavy sleep)
Remove the power state of "suspend_to_ram"

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-02 11:47:32 +03:00
Peter Johanson
f89c00441a soc: raspberrypi: rpi_pico: Add RP2 bootloader support
Add an early init hook to check the boot mode and reset into the RP2 USB
bootloader if requested. Includes a snippet to use with any RP2040/RP2350
board to enable the necessary DTS/Kconfig to use the functionality, and
easy DTS includes for boards to use explicitly.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-10-02 11:46:31 +03:00
cyliang tw
8e07c77ef8 soc: nuvoton: numicro: Disable m48x SPIM cache
By disabling m48x SPIM cache by default, the SRAM size increases
by 32 KB to a total of 160 KB.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-10-01 14:37:26 +03:00
Khaoula Bidani
4021dd30e4 soc: stm32g0: Add configurable FLASH prefetch option for G0B0/G0B1/G0C1
Default disable flash prefetch on G0Bx/G0C1 to prevent issues
described by errata ES0548 2.2.10. Project can still enable
the config if applicable.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-10-01 14:37:06 +03:00
Rubin Gerritsen
05b77ece23 soc: nordic: nrf54h: s2ram: Support disabled MPU
This commit adds support using pm_s2ram for 54H when the
MPU is disabled. This is the case for the out of tree
sample `sdk-nrf/samples/nrf54h/empty_app_core`.

Without this commit the linker will fail to link
`z_arm_mpu_init` and `z_arm_configure_static_mpu_regions`.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-10-01 08:29:01 +02:00
Tomas Galbicka
3cf2cc06dd soc: RT700 DSP Hifi4 enable cache handling
This commit adds cache handling for Hifi4 core on RT700.
Enable CACHE_MANAGEMENT and HAS_DCACHE.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-10-01 08:16:51 +02:00
Raffael Rostagno
18dbda57d8 soc: esp32h2: Add BT support
Add bluetooth support to ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-30 19:37:19 +02:00
Andrew Perepech
2b38bcb6d7 soc/mediatek/adsp: Add cpuclk driver for mt8188
Add cpuclk driver for mt8188 platform. Note that the cpuclk driver is
not yet ported, it works only with mt8188.

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
b5adc3dc19 soc/mediatek/adsp: Fix enable/disable timer interrups for MT8188
On MT8188 platform timer interrupts must also be enabled/disabled in
MTK_ADSP_IRQ_EN register in addition to xtensa_irq_enable(),
xtensa_irq_disable()

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
35a198c4ad soc/mediatek/adsp: Fix ELF .sof_entry section flags
Add 'ax' flags for .sof_entry ELF section so it merges properly with
.z_xtensa_vectors ELF section

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Gerard Marull-Paretas
b59b09b76e soc: sifli: sf32: sf32lb52x: allow configuring bootrom flash delays
Boot ROM will by default set on/off delays to 0ms before jumping to
firmware. This patch adds an option to to configure the on/off delays to
non-zero values. A flash power cycle guarantees to put the external
flash into a known state before executing code from it. This is required
if using 4-byte address mode in the external flash, as the boot ROM will
always use 3-byte address mode when reading from external flash, causing
a potential deadlock situation requiring a power-cycle (known errata).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-30 17:57:17 +03:00
Adam Kondraciuk
6f7a1834d5 soc: nordic: nrf54h: Implement idle with cache retained state
Add new idle state with cache retention enabled.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-09-30 15:26:40 +03:00
Peter Wang
711af9863c boards: frdm_mcxaxx6: add frdm_mcxa366 board
1. the three boards share the same board schematic
   - frdm_mcxa266, frdm_mcxa346, frdm_mcxa366
2. board dts,kconfig and cmake file could share
3. add MCXA366 soc and frdm_mcxa366 board

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-30 11:02:57 +02:00
Peter Wang
b7ff3e1dc8 boards: frdm_mcxa: get SYS_CLOCK_HW_CYCLES_PER_SEC in soc dts
1. get SYS_CLOCK_HW_CYCLES_PER_SEC in soc dts

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-30 11:02:57 +02:00
Yongxu Wang
c992e1a11e soc: nxp: imx943: implement basic PM flow for Cortex-M cores
Add initial power management support for i.MX943 M-core (M33/M7)
This lays the foundation for multi-core PM handling on i.MX943

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-30 10:57:43 +02:00
Marek Matej
d49e6c12d8 soc: espressif: common: Fix startup loader message
Improve how segment information looks like for MCUboot and SimpleBoot.

* silently igonore padding segments (if VMA is 0x0)
* do not duplicate mapped segments lines (IROM and DROM)
* fix IROM segments taht was incorrectly labeled as IRAM

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-29 12:47:34 -04:00
Zhaoxiang Jin
41a0865043 boards: nxp: Convert enum members to upper case.
1. Convert enum members to upper case.
2. Remove extra underscores from header names

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-29 12:45:50 -04:00
Daniel Leung
cf7e2e63c1 soc: intel_adsp: rework host IPC using IPC service
This reworks the Intel audio DSP host IPC driver as a backend of
the IPC service. This is the first step to rework IPC in SOF
(Sound Open Firmware) into using a more generic IPC API instead
of a SoC specific one.

For now, it keeps the old interface to maintain usability
as it is going to be a multiple process to rework IPC
over there.

Also, the structure of the new IPC backend resembles
the SoC specific driver to make it easier to compare
between them at this first iteration. Future optimizations
will probably be needed once we start modifying the SOF
side to utilize the IPC interface.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
d910306fd0 soc: intel_adsp: remove IDC dt default for CONFIG_INTEL_ADSP_IPC
The SoC specific IPC driver is for host IPC, and not IDC (which
is between CPUs). So there is no need to use the IDC devicetree
binding to enable the kconfig.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Sebastian Bøe
7c9275c891 soc: nordic: uicr: Add support for uicr.PROTECTEDMEM
Add support for PROTECTEDMEM.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-29 12:39:33 -04:00
Sebastian Bøe
9f45d2ccd7 soc: nordic: uicr: Add support for uicr.SECONDARY.PROCESSOR
Add support for uicr.SECONDARY.PROCESSOR.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-29 12:39:33 -04:00
Krzysztof Chruściński
d10ee98ee8 soc: nordic: common: dmm: Add optional usage stats
Add support for getting usage statistics for DMM.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
decdb30b05 soc: nordic: common: dmm: Optimize by using a micro heap
Add micro heap implementation which is using one or more 32 bit masks
to allocate quickly blocks. It is significantly better than using
sys_heap. Difference is especially big on RAM3 heap because heap
control data is in RAM3 space so operations there were extremely
slowly (15 us to allocate a buffer).

Simplified implementation of the heap requires DMM API change as
release functions need to know the length of the allocated buffer as
simple heap requires that (buffer address is enough for the standard
heap).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
ff3e0180ad soc: nordic: common: dmm: Optimize memcpy
Default memcpy used in zephyr is not optimized and performs simple
byte by byte copying. Using double word or word access can significantly
reduce copying time especially for RAM3 (slow peripheral RAM).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Andrew Featherstone
cb1e51b4df soc: rp2350: Add initial support for the Hazard3 cores
The RP2350 SoC series contain two Hazard3 cores, which use the RISC-V
instruction set. Define a new CPU cluster (`hazard3`), which is intended
to be used with the two Hazard3 cores 'plugged in' to the two 'sockets'
in the RP2350 series SoCs.

Update the linker script to support linking against the correct
(ISA-specific) linker script, and to generate a correct IMAGE_DEF for
the target ISA.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
80a54a89cd drivers: intc: RP2350: Add initial support for Hazard3
The RP2350 uses the Xh3irq interrupt controller, which supports nested
and prioritised interrupts. This adds initial support, configuring the
controller in 'direct' (non-vectored) mode.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Allen Zhang
45035bef67 soc: mcxw7xx: Fixed the wrong path of sections.ld
After creating mcxw7xx subfolder in mcxw, the path to sections.ld
needs to be updated.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-29 09:57:44 +02:00
Vincent Tardy
f530ffc033 soc: stm32: add 802.15.4 support for STM32WBA
Add 802.15.4 support in hci_if files

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-09-26 20:44:45 -04:00
Mahesh Mahadevan
30ad0ee2a6 soc: rw612: Reinitialize the GDET sensor and Voltage rails
Before re-entering Power Mode 3, we should disable the GET
sensor and reinitialize the power rails.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-26 16:01:22 -04:00
Ren Chen
eba8f3a3eb soc: ite: it8xxx2: enable firmware control mode for elpm
This commit enables firmware control mode for elpm by default.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-09-26 11:07:54 +02:00
Karsten Koenig
19f709910f soc: nordic: common: uicr: Add GRTC fast clkout
Add the mapping for the GRTC_CLKOUT_FAST pinctrl mapping to the
periphconf generation. This allows clocking out the 16MHz clock with a
user selectable divider.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-09-25 14:19:22 -04:00
Lucien Zhao
beb7114f0d soc: nxp: imxrt: add c parts for RT1180
add c parts for RT1180

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-25 14:18:16 -04:00
Lucien Zhao
c503850cd4 boards: nxp: rt1180: migrate mpu setting under board folder
- add NXP_BOARD_SPECIFIC_MPU_SETTINGS kconfig to provide a switch
  for developer if they want to use private mpu settings
    CONFIG_NXP_BOARD_SPECIFIC_MPU_SETTINGS==1  | NXP default setting
    CONFIG_NXP_BOARD_SPECIFIC_MPU_SETTINGS==0  | User specific

- Use DT function to get memory base address and region size for cm7

- CM33 use dts to set mpu settings

- Add REGION_CUSTOMED_MEMORY_SIZE macro provide a common mapping ways
  to map actual memory_size_kb to "region_size"

-  The settings of the unified memory on cm33/cm7 cores:
    ocram1/flexspi2 -> REGION_RAM_NOCACHE_ATTR
    ocram2/dtcm -> REGION_RAM_NOCACHE_ATTR
    flexspi/itcm -> REGION_FLASH_ATTR

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-25 14:17:57 -04:00
Khoa Tran
c0cdf02b4f soc: renesas: ra: Add support Renesas RA8T2 SoC
Add support Renesas RA8M2 SoC

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Tomas Galbicka
4a6a969bbe soc: RT700 add custom MPU regions for non-cache memory
This commit adds custom MPU regions for RT700 CM33 CPU0 to
define non-cachable region for SRAM.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-09-25 10:58:01 +02:00
Tomas Galbicka
5dd659ebc0 soc: NXP RT700 add support to boot CM33 CPU1
This commit adds multicore support to copy CM33 CPU1 image
from flash to RAM where it will boot from.

Also added NXP_IMXRT_BOOT_HEADER=y for CPU0 so it can be booted
from FlexSPI Flash.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-09-25 10:58:01 +02:00
Jamie McCrae
69ce66d491 soc: nordic: nrf54l: Set ROM_START_OFFSET instead of by each board
Sets the default of this Kconfig for the SoC itself as a default,
rather than each board setting it, which minimises the change

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-25 09:25:21 +02:00
Aksel Skauge Mellbye
82318f0aab soc: silabs: Add complete xg27 soc family
Add efr32bg27 and efr32mg27 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00