Commit graph

5955 commits

Author SHA1 Message Date
Keith Packard
ce7bd57618 soc/sensry: Discard .note.GNU-stack sections while linking
These sections are simple stack behavior annotations and are not
needed in the final executable.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
246c8272cc soc/openisa: Discard .note.GNU-stack sections while linking
These sections are simple stack behavior annotations and are not
needed in the final executable.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Youssef Zini
c7d8e03ccf soc: linker.ld: add linker script for stm32mp2x
Add a linker script for the stm32mp2x soc series. It includes the
standard arm cortex-m linker and adds standard zephyr relocation
sections.
Replace the rom_start section name with .isr_vectors in the linker
script. This is necessary for the zephyr firmware to be started by the
remote proc driver which expects the section containing the vector table
to be named .isr_vectors.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
e3953f10ad soc: stm32: add initial soc support for stm32mp2x
Add initial soc support for the stm32mp2x series, including
initial Kconfig entries and default configuration files.
This enables Zephyr to recognize and build for the stm32mp2x series,
taking the stm32mp257f_ev1 as a baseline.

Includes:
- Kconfig and defconfig files for SoC selection and defaults
- soc.h for hal headers
- CMakeLists.txt for build system integration
- soc.yml update to register the new SoC

System Clock is configured statically from DTS. So no initialization
hook or soc.c needed.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Jiafei Pan
dc68d1bb10 soc: imx943: a55: disable D-Cache when booting from el2
Enabled CONFIG_ARM64_BOOT_DISABLE_DCACHE to disable D-Cache when
booting from EL2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:22:51 +02:00
Hao Luo
a54197b2f8 soc: ambiq: workaround for issue #90777
This commit workarounds issue #90777

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hieu Nguyen
73c63f9ca6 soc: renesas: Add initial support for Renesas RZ/V2N
Add initial support for Renesas RZ/V2N

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-16 14:00:22 -04:00
Khaoula Bidani
85e6cc421e soc: st: stm32: Add series stm32u3
Add STM32U3 familly support

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Amneesh Singh
c7a21c3da5 soc: ti: k3: add AM2434 support
Add SoC support and device trees for Texas Instruments AM2434 SoC. Both R5
and M4 cores are supported here.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Amneesh Singh
9814590eb3 drivers: pinctrl: make ti_k3 multi-instance
Some devices have multiple pinctrl regions; for instance, main pinctrl and
mcu pinctrl. Currently there can only be a single pinctrl instance picked
form a DT label. This patch makes the pinctrl driver initialise one
instance for each node with correct compatible string.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Alvis Sun
d789d13ec0 soc: nuvoton: npcx: update default SYS_CLOCK_HW_CYCLES_PER_SEC
Added support for deriving `SYS_CLOCK_HW_CYCLES_PER_SEC` from the
Device Tree by reading the `clock-frequency` property in the `itim` node.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-06-16 14:13:55 +02:00
Tim Lin
a62f157118 drivers/espi: ite: Add it51xxx compatibility with it8xxx2 support retained
The driver originally supported only it8xxx2 series. This updates
introduces compatibility allow it to also support it51xxx series
with minimal changes.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-16 14:12:44 +02:00
Sylvio Alves
213142db21 soc: espressif: riscv: disable local isr location
Disable support to local ISR declaration on Espressif SoCs.
Code relocation is not yet supported, causing build fail.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-13 15:40:09 -07:00
Aksel Skauge Mellbye
b3db3a3bda soc: silabs: s2: Only configure SMU and SAU once on boot
If a bootloader is used, it will configure the SMU and SAU.
The application cannot also configure it, since it can't know
what alias (S vs NS) to access the CMU through. Only connect
the interrupt to the application's vector table if a bootloader
is present.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 10:15:03 -07:00
S Mohamed Fiaz
aaf21a4c9e soc: silabs: siwx91x: Add configurable power profile support via DeviceTree
This commit adds support for configuring the power/performance
profile for the siwx91x device using a generic
'power-profile' property in DeviceTree.
The property is available for NWP nodes,
allowing flexible selection of power management
profiles per application or board via overlay.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-06-13 10:08:38 -07:00
S Mohamed Fiaz
132247e2cd soc: silabs: siwx91x: Add siwx91x Power Manager driver
This commit enables the Power Manager driver
support for the siwx91x device.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-06-13 10:08:38 -07:00
Sebastian Głąb
2b4f64522e modules: hal_nordic: nrfx: Add mising UARTE23/24 Kconfigs
Add UARTE23 and UARTE24 missing Kconfig options and their
translation to NRFX configuration macros.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-06-13 10:31:17 -04:00
Sebastian Głąb
c0a28ab561 drivers: spi: Support spim23 and spim24 instances
Extend SPI driver with possibility to use
- spim23, spim24,
- spis23, spis24.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-06-13 10:31:17 -04:00
Mathieu Choplain
1793934e61 soc: st: stm32n6: invoke signing tool in silent mode
The STM32 signing tool (STM32_SigningTool_CLI) is invoked as a post-build
command to generate a signed Zephyr binary, which is required to run from
flash on N6 series. If the file specified as output already exists, the
tool will by default prompt to confirm it should be overwritten. However,
when invoked from the build system rather than a terminal, this prompt
will break the build (freeze during the "Linking zephyr.elf" step). This
can be seen by building the same application twice in a row, as the second
build will not be different enough to make the build artifacts be deleted
and thus the (old) signed image will be seen by the tool.

Invoke the tool in silent mode such that user is never prompted. This fixes
build failures while still working as intended (if present, the existing
signed image will get overwritten properly).

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-13 14:29:18 +02:00
Benjamin Cabé
4cac6583f7 soc: sensry: fix irq enable/disable
SET/CLR registers are write-only so trying to
read/modify/write is inefficient & illegal

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 11:12:55 +02:00
Benjamin Cabé
a933fb7bcc soc: sensry: remove unnecessary parenthesis from macro
removed redundant parentheses

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 11:12:55 +02:00
Ali Hozhabri
529a8dd147 soc: stm32: stm32wb0x: Restore main stack size to the default value
Restore main stack size to the default value since fake entropy
implementation from mbedtls is replaced by STM32 entropy driver.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-06-12 09:32:41 -07:00
Krzysztof Chruściński
1dc42fc227 soc: nordic: nrf54h: Allow using NFCT pins as gpios on cpurad
NFCT is by default assigned to application so DT node does
not need to be enabled or reserved in DT to have access to
NFCT registers. On cpurad NFCT must be reserved to enable
register access and then antenna pins can be configured as
gpios.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 11:46:21 +02:00
Krzysztof Chruściński
2d82970710 soc: nordic: common: Fix HAS_HW_NRF_NFCT condition
Include nordic,nrf-nfct-v2 compatible in the option.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 11:46:21 +02:00
Jakub Zymelka
f87f2dc9b2 soc: nordic: common: poweroff: Set VPR to remain in its reset state
CM33 must write MEMCONF.POWER[VPR].RET = 0 before entering System OFF.
This bit drives the vprSavedCtx input to VPR. Forcing it low will
disable the Hibernate wake feature in VPR, so that VPR will remain
in its reset state when waking from OFF.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-06-12 11:34:10 +02:00
Tomasz Chyrowicz
5e54100551 boards: nrf54h20_iron: Allow radio updates
Add necessary changes to provide a simple, updateable radio image.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-06-12 11:33:10 +02:00
Neil Chen
ab3d2dc830 boards: frdm_mcxa153,frdm_mcxa156: add hwinfo support
1. enable hwinfo support
   - device_id_get
   - get_reset_cause
   - get_supported_reset_cause
   - clear_reset_cause
2. verified tests/drivers/hwinfo

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-06-12 10:24:40 +02:00
TOKITA Hiroshi
344357a5b4 soc: raspberrrypi: rp2350: Add missing FPU support
Add CPU_HAS_FPU to make available the FPU feature.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-11 16:19:59 -07:00
Keith Packard
513e6ed5d2 arch/common: Mark interrupt tables const when !DYNAMIC_INTERRUPTS
When not using dynamic interrupt mapping, various interrupt tables are
configured to be stored in read-only memory in the linker script.. Mark
them const so that the linker doesn't complain.

This affects _sw_isr_table, _irq_vector_table, and z_shared_sw_isr_table in
arch/common along with _VectorTable in arch/arc.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-10 22:13:09 +02:00
Yangbo Lu
1d2e1787cb soc: nxp: imx9: add basic support for i.MX943 M33
Added basic support for i.MX943 M33.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-10 22:07:17 +02:00
Guennadi Liakhovetski
4de0c9abc0 SoC: Intel: ADSP: ACE30: add .imrdata to MMU definitions
On ACE30 platforms adding a section to the linker script isn't
enough, it should also be added to the xtensa_soc_mmu_ranges[] array.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-10 12:52:38 -04:00
Mathieu Choplain
4282d67ac2 soc: st: stm32h7: synchronize cores during boot properly
On dual-core STM32H7, the Cortex-M4 core is supposed to wait until the
Cortex-M7 initializes the system before starting to execute. CM7 should
signal this by locking a specific HSEM, which CM4 should poll until locked.
However, the logic on the Cortex-M4 side was reading the "RLR" register of
HSEM, which *locks the semaphore on read* - in turn, this makes the CM4
start directly since it sees that the semaphore is locked (by itself).

Use proper LL API to read HSEM status - which will read the "R" register
instead - to make sure CM4 doesn't begin execution earlier than it should.

Suggested-by: hglassdyb
Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-10 12:08:35 +02:00
Mathieu Choplain
86c5135982 soc: st: stm32: hsem: update description for fifth HSEM
The fifth HSEM (#define is equal to 4 due to zero-indexing) is used on
STM32H7 to synchronize the two cores. Update the comment above the SEMID
define to reflect this alternate usage. Also remove the associated define
CFG_HW_ENTRY_STOP_MODE_MASK_SEMID, which is unused.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-10 12:08:35 +02:00
Mathieu Choplain
97e2dd28b3 soc: st: stm32: hsem: sort hardware semaphore IDs by value
Reorder the HSEM semaphore ID definitions to be sorted by ascending value.
The dummy defines are also changed to be sorted in the same order. The
definitions for STM32MP1 are already in an order that follows this order
so they don't need to be changed.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-10 12:08:35 +02:00
Adam Mitchell
dcf94aaf7b dts: arm: st: h7: Add support for STM32H742
Adds base Devicetree files for H742Xi/g variants

Signed-off-by: Adam Mitchell <adam.mitchell@brillpower.com>
2025-06-10 08:51:45 +02:00
Sudan Landge
5a3c4941a2 pinctrl: add support for mps4
Add MPS4 pinctrl support by referring to
`mps4/common/partition/platform_base_address.h`
from TF-M's main branch.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-09 14:35:12 -07:00
Sudan Landge
d1e830fe0d boards: arm: add support for MPS4 Corstone-320
Add initial support for the MPS4 Corstone-320 platform, including board
and SoC definitions. This platform features a Cortex-M85 CPU with an
Ethos-U85 NPU and runs in simulation using the FVP_Corstone_SSE-320
Fixed Virtual Platform.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-09 14:35:12 -07:00
Harris Tomy
d280d89214 dts/kconfig: stm32u5: add f9 and clean up dts node locations
Adds skeleton dtsi for u5f9 for u5g9 to inherit from

Moves the peripheral nodes into dtsi's that actually has the peripheral
and includes them for SoC's higher in the series where applicable.

signed-off-by: Harris Tomy <harristomy@gmail.com>
2025-06-09 14:26:11 -07:00
Phuc Pham
adeaad5e6f soc: renesas: Add initial support for Renesas RZ/G2UL
Add initial support for Renesas RZ/G2UL

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Lin Yu-Cheng
b2e13bd6c3 driver: crypto: add crypto driver for rts5912
Add crypto driver for Realtek rts5912

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-06-07 13:29:07 +01:00
Henrik Lindblom
24b4ce189f drivers: stm32: dma: fix external dcache support
Several drivers checked for the presense and availability of data cache
through Kconfig symbol. This is supported according to the current
documentation, but the symbol DCACHE masks two types of cache devices: arch
and external caches. The latter is present on some Cortex-M33 chips, like
the STM32U5xx. The external dcache is bypassed when accessing internal
SRAM and only used for external memories.

In commit a2dd232410 ("drivers: adc: stm32: dma support") the rationale
for gating dcache for adc_stm32 behind STM32H7X is only hinted at, but
reason seems to be that it was the only SOC the change was tested on. The
SOC configures DCACHE=y so it is most likely safe to swap the SOC gate for
DCACHE.

The DCACHE ifdefs are now hidden inside the shared stm32_buf_in_nocache()
implementation.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-06-06 10:19:58 +02:00
Axel Le Bourhis
3c6a3826ad soc: nxp: rw: adjust ACL bt_conn_tx contexts to match Controller's
RW61x's controller uses 8 ACL packets, adjust `BT_BUF_ACL_TX_COUNT`
to match it.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-06-06 08:45:33 +02:00
Axel Le Bourhis
df2dac7a68 soc: nxp: mcxw: adjust ACL bt_conn_tx contexts to match Controller's
MCXW7x's controller uses 12 ACL packets, adjust `BT_BUF_ACL_TX_COUNT`
to match it.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-06-06 08:45:33 +02:00
Mike J. Chen
2923504780 soc: nxp: imxrt: imxrt5xx: add Fusion F1 DSP selects
Add select for GEN_HANDLERS to use the more efficient
generated interrupt handlers.

Add select for HIFI3, which are the SIMD related registers.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-06 08:43:52 +02:00
Tomasz Leman
e70765391f soc: intel_adsp: Fix typo in cavs/power.c comment
This patch makes cosmetic changes to cavs/power.c by updating comments to
Doxygen style, fixing typos.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-06-06 08:43:15 +02:00
Tomasz Leman
c26b0767f2 soc: intel_adsp: Update comment style and fix typos
This patch makes cosmetic changes to ace/power.c by updating comments to
Doxygen style, fixing typos, and removing an extraneous character for
improved readability and consistency.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-06-06 08:43:15 +02:00
Tomasz Leman
fbafada9b6 soc: intel_adsp: Manage power gating based on core activity
This patch enhances the power management capabilities of the Intel ADSP
by ensuring that power gating states are appropriately managed based on
core activity. It prevents the primary core from entering power gating
if secondary cores are active and re-enables power gating when all
secondary cores are off, using pm_policy_state_lock_get and
pm_policy_state_lock_put functions.

The Sound Open Firmware (SOF) project currently uses a custom power
management policy to achieve these effects. With this patch, the default
power management policy can be utilized, allowing the option to disable
the custom policy while maintaining system reliability and performance
across different core states.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-06-06 08:43:15 +02:00
Tim Lin
a8e467cf2d soc/ite/ec/common: Rename functions to use generic names
Renamed two functions and a macro to use more generic names,
removing chip-specific identifiers.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-05 09:34:23 +02:00
Tim Lin
4aaa0f8547 soc/ite/ec: it51xxx: Add condition to select the mode based on CONFIG_ESPI
If CONFIG_ESPI is defined, use 0xA4 (eSPI mode).
Otherwise, use 0xA5 (LPC mode).

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-05 09:34:23 +02:00
Tim Lin
5f502499e9 drivers/espi: ite: Refactor register defines into .c for SoC flexibility
Move register definitions from chip_chipregs.h into espi_it8xxx2.c to
make the driver more adaptable to different SoCs.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-05 09:34:23 +02:00