Commit graph

126,787 commits

Author SHA1 Message Date
Gerard Marull-Paretas
ba98762f53 dts: arm: sifli: sf32lb52x: define pinctrl
Add a node for pinctrl (PINMUX).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
445efe2969 dts: bindings: pinctrl: add sifli,sf32lb52x-pinmux
Add bindings for the SF32LB52X SoCs PINMUX peripheral. Note that
SF32LB56X SoCs contain a compatible IP (not others, where HPSYS_CFG is
not required), so if SF32LB56X support is added, binding could be
adjusted to reflect 52x/56x support.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
b083e2c864 drivers: clock_control: sf32lb: add initial driver
Initial driver for SF32LB SoCs. This driver is incomplete, but allows
to configure the system for a minimal boot.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
b82dccce20 dt-bindings: clock: add definitions for SF32LB52X clocks
So they can easily be referenced in devicetree.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
cc9fd35378 dts: arm: sifli: sf32lb52x: define RCC clock controller
This is defined as a subnode because RCC is a MFD device (clock and
reset controller), however, Zephyr does not allow >1 device per DT node!

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
c5e4e38a1f dts: bindings: clock: add sifli,sf32lb-dll
Add binding for SF32LB DLL clock.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
21813831e1 dts: bindings: clock: add sifli,sf32lb-rcc-clk
Add binding for SF32LB RCC (clock part).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
cdf4fb13d9 dts: arm: sifli: sf32lb52x: define pmuc
Add a devicetree node for PMUC.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
135dc1b65b dts: bindings: power: add sifli,sf32lb-pmuc
Add bindings for the SiFli SF32LB PMUC. PMUC is a sort of "syscon" type
register block used to control multiple power-management related stuff.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
0996652790 dts: arm: sifli: sf32lb52x: define RCC
Add node for RCC.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
348248570a dts: bindings: mfd: add sifli,sf32lb-rcc
SiFli SF32LB RCC (Reset and Clock Control).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
6558029f99 drivers: clock_control: sf32lb_hxt48: add initial driver
Add driver for HXT48.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
25160c1328 dts: arm: sifli: sf32lb52x: define HXT48 clock
Add node for the HXT48 clock.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
6b9d4700d5 dts: bindings: clock: add sifli,sf32lb-hxt48
Add binding for SF32LB HXT48 clock.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
7732d47129 dts: arm: sifli: sf32lb52x: define all fixed clocks
Refer to Ch 2 "Clock and Reset" from reference manual. Some may require
specific bindings in the future if they can be configured (e.g. RC48).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
62e887d138 dts: arm: sifli: sf32lb52x: define AON entry
Add entry for SF32LB AON.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
ab70b4c3a2 dts: bindings: power: add sifli,sf32lb-aon
SiFli SF32LB AON module controls certain low-power or clocks, e.g.
enablement of HXT48 on different LP modes, etc.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
087ab5a567 dts: arm: sifli: sf32lb52x: define cfg
Define node for SF32LB HPSYS_CFG.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
df3d8e87be dts: bindings: syscon: add sifli,sf32lb-cfg
SiFli SoCs have a multi-purpose register set named HPSYS_CFG, which we
can treat as a "syscon".

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
e9c9cae5d2 modules: hal_sifli: add initial glue code
Add glue code to build SiFli HAL. The bare minimum is included, some
more things may be required as we fully test the integration in the
future.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
377e45710b MAINTAINERS: add hal_sifli entry
Add myself as a maintainer for now, and @cameled as a collaborator.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
f65149fe1e manifest: add hal_sifli
Add SiFli HAL module. This module contains register-level description
for SF32LB SoCs IP, and a high-level HAL.

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
Gerard Marull-Paretas
a9c5a7fb21 dts: arm: sifli: add sram layout default schemes
SRAM is segmented as:

- RAM0: 128K (DTCM)
- RAM1: 128K
- RAM2: 256K

where:

- RAM0 can be accessed by all peripherals except PTC1/2.
- RAM1/RAM2 have its own port, so e.g. master 1 can access RAM1 while
  master 2 can access RAM2.

Depending on the application, one may decide to just use the whole RAM
as a single block, split RAM0 (DTCM) and RAM1/2, etc. For now, provide 2
schemes:

- Use all SRAM as a single block
- Use RAM0 (DTCM) + RAM1/2

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
a7e476935b dts: arm: sifli: add skeleton for sf32lb52x
Just define basic ARM hardware: CPU, MPU and NVIC settings. SF32LB SoCs
are technically Arm-Star MC1 based, an Arm Cortex-M33 compatible CPU
developed by Arm China.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
bfa73252cd dts: bindings: add sifli vendor prefix
Add `sifli` for SiFli Technologies(Nanjing) Co., Ltd.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Marek Matej
0553f59ee6 boards: espressif: Fix more images
Fix file format of the board and shield images.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-19 16:33:31 +02:00
Marek Matej
11616b98f3 boards: espressif: Fix chapters heading
Fix chapters and included rst section heading.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-19 16:33:31 +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
Bjarki Arge Andreasen
5438462a6a pm: device: runtime: Only select EVENTS if PM_DEVICE_RUNTIME_ASYNC
The k_event event is only used if CONFIG_PM_DEVICE_RUNTIME_ASYNC is
selected, but EVENTS is selected, and the k_event included in the
struct pm_device if CONFIG_PM_DEVICE_RUNTIME is selected.

Correct to only include event and EVENTS if
CONFIG_PM_DEVICE_RUNTIME_ASYNC is selected. This saves us 1
struct event per PM DEVICE.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 16:33:06 +02:00
Benjamin Cabé
7b91e8f32c boards: kincony: kincony_kc868_a32: use common partition table
A follow up to commit 78c1def4db that
probably missed this file.

Fixes CI issues observed in weekly run:
- kincony_kc868_a32/esp32/procpu:libraries.devicetree.api_ext

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 08:37:38 -04:00
Jeppe Odgaard
6e7268d21b mgmt/mcumgr: add missing designator to ZCBOR_MAP_DECODE_KEY_DECODER
Add missing `.key` designator.

This also fixes a compile error:
> error: either all initializer clauses should be designated or none of
them should be

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-09-19 08:37:19 -04:00
Tomi Fontanilles
27011feb17 MAINTAINERS: add missing TF-M collaborators to all repositories
Add all the `West project: trusted-firmware-m` collaborators to
`tf-m-tests` and `psa-arch-tests`. They are repositories highly related
to TF-M.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-19 08:36:46 -04:00
Ioannis Karachalios
e020e65570 zephyr: Update maintainers list
This commit should deal with updating the maintainers list for Smartbond
family of devices.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-19 08:36:35 -04:00
Nicolae Dicu
67b4063a20 scripts: requirements: Use gitlint-core for loose requirements
Gitlint-core has loose requirements and not conflicting
with scancode-toolkit v32.4.1 (click==8.1.3 vs click>=8.2.0).

Signed-off-by: Nicolae Dicu <nicolae.dicu@nordicsemi.no>
2025-09-19 08:35:53 -04: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
Ren Chen
20c8f6b5f7 drivers: pinctrl: it8xxx2: add support for alternate function 5
This commit introduces alternate function 5 setting for it8xxx2 SoC.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-09-19 08:35:10 -04:00
Jordan Yates
61298e31c7 scripts: twisterlib: more efficient coverage merging
Use `collections.defaultdict` to simplify code, and use the `bytes`
type internally rather than hex strings.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-19 08:34:32 -04:00
Jordan Yates
aa08e0df20 testsuite: coverage: convert dump method to choice
To support future coverage dump methods (semihosting) move
`COVERAGE_DUMP` inside a choice symbol.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-19 08:34:32 -04:00
Benjamin Cabé
f8e183c3db tests: ram_context_for_isr: pick an available IRQ for Nuvoton platforms
NPCX7, NPCX9, and NPCK3 platforms have their (NUM_IRQS-1) IRQ taken,
so set CONFIG_TEST_IRQ_NUM to a different available IRQ.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 08:34:21 -04:00
Cristian Bulacu
cdf5811791 net: dns: DNS resolver packet forwarding
This aims to implement a packet forwarding mechanism between
DNS resolver and applications that install a callback, letting
DNS resolver know that received UDP packet is also required by an
application.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-19 08:34:06 -04:00
Pavel Vasilyev
52862dc658 bluetooth: host: move bt_gatt_authorization_cb_register to gatt.c
This function logically belongs to gatt.c as it is GATT API.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-09-19 08:33:29 -04:00
Rafał Kuźnia
65fae0a050 modules: hal_nordic: nrf_802154: Add new Kconfig options
The NRF_802154_ENCRYPTION was split into two additional Kconfigs that
control separate functionalities:
* NRF_802154_IE_WRITER - to enable Information Element writer
* NRF_802154_SECURITY_WRITER - to enable frame counter writer

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-09-19 08:33:12 -04:00
Rafał Kuźnia
9bc99401b4 manifest: update hal_nordic to pull nrf-802154 changes
Updated the hal_nordic to bring the latest changes of the nrf-802154
component.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-09-19 08:33:12 -04:00
Thomas Stranger
e102fc94c0 dts: arm: st: stm32h5: set default alt clock for fdcan
Explicitly set the default alt clock for canfd. Without
explicitly setting it the clock subsystem will return
the frequency of the gating clock(APB1).

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-19 08:32:44 -04:00
Thomas Stranger
9783a70e6c dts: arm: st: stm32h5: fix line features sai, can, eth
Fix peripheral availability per h5 line.
Some peripherals are not available on the entry level
lines of the stm32h5 series:
- fdcan2 only on SoCs >= H523, but not on h562
- sai only on >= H562
- ethernet only on >= H563

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-19 08:32:44 -04:00
Erwan Gouriou
d20e15f651 cmake: mcuboot: ramload: Expect write-block_size only in revert case
Since we're not yet at a consensus on where 'write-block-size' should be
set, make the adjustable alignment expected only in the revert case
to restore functionality on the 'normal' case.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-19 08:32:22 -04:00
Elgin Perumbilly
447c3fb018 boards: silabs: slstk3701a: Enable LPM013M126A Display
Enable the LPM013M126A display node under USART1 in the slstk3701a DTS.
Add pre_dt_board.cmake to suppress SPI bus bridge warnings, and update the
pinctrl configuration to properly configure the display control pins.

Signed-off-by: Elgin Perumbilly <elgin.perumbilly@siliconsignals.io>
2025-09-19 08:31:05 -04:00