Commit graph

6,613 commits

Author SHA1 Message Date
Torsten Rasmussen
fd772f8e77 scripts: remove boards_legacy sub-folder from list_boards.py
Fixes: #69785

The boards_legacy sub-folder was temporarily introduce in collab-hwm
branch during porting to HWMv2.

This should have been removed before merging collab-hwm to main as it
prevent looking up boards in oot roots.

Removing the temporary sub-folder for HWMv2.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-22 11:51:58 +01:00
Erwan Gouriou
7a7abb7b18 soc: st: Set BUILD_WITH_TFM by default (when required)
CONFIG_BUILD_WITH_TFM should always be set when building a non
secure target.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-22 09:23:30 +00:00
Erwan Gouriou
3a383aad6c boards: st: Clean up compiler related directives
Clean up early days TF-M development directives which are outdated today.
Factorize remaining CMake instructions in soc.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-22 09:23:30 +00:00
Jamie McCrae
f903052f42 soc: Move non-grouped qemu boards into qemu folder
For the 2 SoCs without a vendor, put them into a generic qemu
folder

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-22 00:56:51 +01:00
Jamie McCrae
f103c82c31 boards/socs: Rename folders to have proper vendor prefix in
Replaces inaccurate or wrong vendor prefixes in board and soc
folder names with those from thr vendor prefix file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-22 00:56:51 +01:00
Torsten Rasmussen
4370847c75 soc: espressif: move core identifiers esp32 and esp32s3 to Kconfig.soc
Move the Kconfig symbols SOC_ESP32_PROCPU, SOC_ESP32_APPCPU,
SOC_ESP32S3_PROCPU, and SOC_ESP32S3_APPCPU.

The CPU cluster is defined in espessifc/soc.yml and should therefore
be available in the HWMv2 Kconfig.soc tree.

This will allow sysbuild to test for the CPU cluster when targeting
remote board for a build.

Update espressif boards accordingly.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-21 15:24:47 +01:00
Marcin Szymczyk
a994dc5a35 soc: nordic: vpr: remove enabling MSTATUS.MIE in boot time
Interrupts should not be enabled this early in boot time.
Driver initializations expect IRQs not to arrive when
setting up HW.
Remove enabling `MSTATUS.MIE` in `__start`.
It will be enabled when main thread is switched to,
as threads by default start with enabled `MSTATUS.MIE`.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2024-03-21 14:09:27 +00:00
Marcin Szymczyk
d248b7bf07 soc: nordic: vpr: add workaround for MSTATUS.MIE not waking VPR up
Due to HW issue, VPR needs to keep MSTATUS.MIE enabled during sleep.
Otherwise, interrupts will not wake it up.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2024-03-21 14:30:15 +01:00
Declan Snyder
a65ae89b9e soc: nxp: rw: Support MRT counter
Add DT entries and peripheral reset for MRT on RW.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-21 09:06:48 +01:00
Declan Snyder
241d41596b soc: nxp: rw: Support CTIMER
Add DT entries and clocking for CTIMER peripherals on RW61x.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-21 09:06:48 +01:00
Daniel DeGrasse
90a8ef11fe soc: nxp: rw: define Kconfigs for MEMC_MCUX_FLEXSPI code relocation
MEMC_MCUX_FLEXSPI depends on code relocation being enabled on parts that
XIP from the FlexSPI by default and requires a string describing the RAM
region to relocate code into. Add these Kconfigs to the RW SOC port.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-20 19:08:06 +00:00
Daniel DeGrasse
9021ce82fc soc: nxp: rw: add support for reclocking flexspi
Add support for reclocking FlexSPI peripheral via flexspi_clock_set_freq
function

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-20 19:08:06 +00:00
Declan Snyder
2cb4550dc7 soc: rw: Support WWDT
Add DT entry and SOC code for watchdog

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-20 16:19:12 +00:00
Tomasz Leman
4ea52bdd12 soc: xtensa: intel: Update power status bitfields for LNL
This patch updates the power status register bitfield definitions in the
power management header for the Intel ADSP ACE 2.0 LNL platform.

Modifications include:
- Adjusting the 'ioxpgs' field from 4 bits to 2 bits.
- Adding a 'rsvd11' field with 2 bits to reflect reserved space.
- Changing the 'mlpgs' field from 2 bits to 1 bit.
- Updating the 'rsvd14' field from 1 bit to 2 bits for alignment.

These changes ensure that the power status register bitfields match the
latest hardware specification for the ACE 2.0 LNL SoC, which is crucial
for accurate power domain status monitoring.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2024-03-19 14:54:29 +01:00
Tim Lin
9d9d1ff380 ITE: drivers/i2c/target: Remove hardware reset setting
In the interrupt pending routine, only the interrupt status needs to be
cleared at the end of the interrupt routine. There is no need to do a
hardware reset(HALT) to avoid clearing the next transfer interrupt when
the current transfer is completed.

Test: Testing this function does not cause I2C data/clk to get stuck on
the system platform.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-03-19 07:56:19 -04:00
Magdalena Pastula
92f1b3ff96 modules: hal_nordic: nrfx: propagate new configs to nrfx
Add support for propagating SOC_NRF54LX_DISABLE_FICR_TRIMCNF and
SOC_NRF54LX_SKIP_GLITCHDETECTOR_DISABLE values to nrfx.

Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
2024-03-19 09:47:58 +01:00
Magdalena Pastula
b0b4bc0517 soc: nordic: nrf54l: add two new Kconfig options
Add SOC_NRF54LX_DISABLE_FICR_TRIMCNF and
SOC_NRF54LX_SKIP_GLITCHDETECTOR_DISABLE config options.

Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
2024-03-19 09:47:58 +01:00
Declan Snyder
ab7580046a soc: rw: Support I2C Flexcomms
Support I2C flexcomms by clocking in soc.c and adding DT header

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-19 09:47:35 +01:00
Andrzej Głąbek
4d16e5b7d9 soc: nordic: Remove support for nRF54H20 EngA
This was a preview revision of the SoC that will no longer
be supported.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-18 19:11:36 +00:00
Andrzej Głąbek
4011015fb4 soc: nordic: Add initial support for nRF54H20
Add Kconfig symbols that allow building for the nRF54H20 (not EngA) SoC.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-18 19:11:36 +00:00
Anas Nashif
1a55caf826 soc: esp32: make SCHED_CPU_MASK depend on SCHED_DUMB
Forcing SCHED_CPU_MASK without SCHED_DUMB results in a global warning
from Kconfig.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-18 16:46:40 +01:00
Tim Lin
d89e8052da ITE: soc: it8xxx2: Add missing Kconfig file of it82302ax variant
Previous adjustments to hwmv2 lost this Kconfig file.

Test: west build -p always -b it82xx2_evb samples/hello_world
config BOARD_IT82XX2_EVB
   select SOC_IT82302_AX

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-03-15 18:27:26 -04:00
Kai Vehmanen
010f39a409 soc: intel_adsp_cavs: store PS when power gating secondary core
When non-primary core is powered down and restart with sequence of:
 - PM state set to SOFT_OFF
 - once target core is idle, cut power with soc_adsp_halt_cpu()
 - power up core again with k_smp_cpu_resume()

The execution will continue from stored DSP core context, but
will hit an assert in z_smp_cpu_mobile() as the PS.INTLEVEL
is zero.

Fix this issue by storing and restoring PS register in this flow.

Link: https://github.com/zephyrproject-rtos/zephyr/issues/70181
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2024-03-15 18:16:51 -04:00
Declan Snyder
fa6e894e1d soc: nxp: rw: Clock SPI Flexcomms
Clock flexcomms if used as SPI

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-15 18:07:45 -04:00
Laurentiu Mihalcea
2f40474c14 nxp: imx8ulp: correct value of CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC
The core clock of 8ULP's HIFI4 DSP runs at 475.2MHz. As such,
correct the value of `CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC` to
reflect this.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-03-15 06:27:13 -04:00
Steven Chang
64b4a3fe08 drivers: pinctrl: initial device driver for ENE KB1200
Add pinctrl driver for ENE KB1200

Signed-off-by: Steven Chang <steven@ene.com.tw>
2024-03-15 09:39:48 +00:00
Steven Chang
388091a4af soc: kb1200 soc
Add support for ENE KB1200 SOC

Signed-off-by: Steven Chang <steven@ene.com.tw>
2024-03-15 09:39:48 +00:00
Jun Lin
0907aff2ae soc: npcx: workaround VCC1_RST hang issue for npcx9m7fb SoC
Apply the bypass for the issue "Possible Hang-Up After VCC1_RST Reset"
in the NPCX99nFB_Errata.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2024-03-15 08:43:47 +00:00
Jun Lin
0bf4ec6d7b drivers: gpio: npcx: workaround both trigger issue for npcx9m7fb
Apply the workaround for the issue "MIWU Any Edge Trigger Condition" in
the NPCX99nFB_Errata.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2024-03-15 08:43:47 +00:00
Jun Lin
c2179bcef0 soc: npcx: add support for npcx9m7fb
Add new SoC npcx9m7fb support for npcx9 series.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2024-03-15 08:43:47 +00:00
Serhiy Katsyuba
41b3c71586 drivers: dma: intel_adsp_hda: Fix L1 exit condition
Transition to a low power DMI L1 state should be allowed only after all
pending DMA channels transfers have started.

Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2024-03-15 08:59:12 +01:00
Daniel DeGrasse
d1444856c0 soc: nxp: imxrt: fix dependencies of NXP_IMXRT_BOOT_HEADER for RT11xx
Dependencies of NXP_IMXRT_BOOT_HEADER were set incorrectly for the
RT11xx series part when building a dual core image. The boot header
should be enabled by default for the primary M7 core, and always
disabled when MCUBOOT is used or the M4 core is targeted

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-15 08:51:24 +01:00
Jun Lin
6057a83060 drivers: entropy: npcx: add rng driver support
This commit add the rng driver support by using the npcx drgb API.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2024-03-14 18:14:04 +00:00
Andrzej Głąbek
dde7c47e6a soc: nordic: Fix validation of base addresses
Use `DT_REG_HAS_IDX()` instead of `DT_NODE_EXISTS()` when checking
if for a given nodelabel the base address of the associated node
should be validated, so that the validation is performed only if
the base address is available. This prevents build failures in cases
like the os_mgmt_datetime test where the `rtc` nodelabel is used for
an emulated RTC.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-14 11:03:27 -05:00
Daniel DeGrasse
fcbf03a2dc soc: nxp: imxrt: correct FCB offset for iMXRT1011 SOC to 0x400
Unlike the remainder of the RT10xx series, the RT1011 SOC requires that
the flash configuration block be placed at an offset of 0x400 bytes,
instead of the start of the flash.

Fixes #70090

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-14 09:33:43 +01:00
Mahesh Mahadevan
f93e37e84b soc: mcxn947: Add support for NXP MCXN947
Add initial support for NXP MCXN947 SoC

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-03-13 22:38:46 +00:00
Declan Snyder
5f53afca0a soc: nxp: Add RW SOC Family
Add SOC definition for NXP RW Family

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-13 16:45:13 +00:00
Pratik Farkase
2b4ce8b3bb soc: starfive: jh71xx: add jh7110 soc support
These list of files add Kconfig support for
Starfive JH7110 SOC support.

Signed-off-by: Pratik Farkase <pratik.farkase@wsisweden.com>
2024-03-13 11:39:51 -05:00
Laurentiu Mihalcea
f91065b7c9 nxp: adsp: enable usage of DCACHE API
With the transition to HWMv2, `CONFIG_CPU_HAS_DCACHE` is no
longer selected. This causes issues with Sound Open Firmware
since this configuration allows the usage of DCACHE-related
cache management operations. As such, to fix said issues,
select `CONFIG_CPU_HAS_DCACHE` on all NXP ADSP SOCs.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-03-13 11:13:54 +00:00
Francois Ramu
031cdfa23f soc: arm: stm32 with USB Type-C dead battery disabled if needed
Check the driver configuration to disable
the USB Type-C dead battery, only if
 - a USB PD system is in place (the UCPD node is enabled)
 - or the user does not require USB PHY anyway

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-03-13 11:09:44 +00:00
Flavio Ceolin
07426a800c intel_adsp/ace: power: Lock interruption when power gate fails
In case the core is not power gated, waiti will restore intlevel. In
this case we lock interruption after it.

In the bug scenario, the host starts streaming and via SOF APIs, keeps a
lock to prevent Zephyr from entering PM_STATE_RUNTIME_IDLE. During the
test case, host removes this block and core0 is allowed to enter IDLE
state.

When core0 enters power gated state, interrrupts are left enabled (so
the core can be woken up when something happens). This leaves a race
where suitably timed interrupt will actually block entry to power gated
state and k_cpu_idle() in power_gate_entry() will return. This is rare,
but happens often enough that the relatively short test plan run on SOF
pull-requests will trigger this case.

Fixes #69807

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-12 15:12:57 -05:00
Georgios Vasilakis
d706367423 soc: nordic: nrf54l: Remove redundant option
The option SOC_NRF54L_GLITCHDET_WORKAROUND is not
needed anymore becuase the glitch detector is already
disabled in the Nordic MDK in the hal_nordic repo.

File path in hal_nordic:
nrfx/mdk/system_nrf54l.c

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2024-03-12 17:57:29 +00:00
Andrzej Głąbek
4991c487d6 soc: nordic_nrf: Add address validation entries for nRF54H/L dts nodes
Add entries for checking if the recently added dts nodes for nRF54H20
and nRF54L15 have correct base addresses (if they match those provided
by MDK).

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-12 14:27:16 +00:00
Daniel DeGrasse
ac2993493b soc: nxp: imxrt: do not select HAS_PM at family level
Not all SOC cores within the NXP iMX RT family support power
management (for example, the Fusion F1 DSP has no support). Do not
select HAS_PM at the SOC family level, and instead select it at the
series level where applicable

Fixes #69731

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-12 09:46:38 +00:00
Gerard Marull-Paretas
2fe1bb39f2 soc: nordic: vpr: always select HAS_FLASH_LOAD_OFFSET
While not needed when XIP=n, it can be still be selected so that come
defconfigs are simplified.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-12 09:46:04 +00:00
Daniel Fladerer
6d493776e9 soc: arm: nxp_imx: Add GPIO clock enable for i.MX8ML M7 Core Series
Enable clock if GPIO bank is enabled in the devicetree.

Signed-off-by: Daniel Fladerer <d.fladerer@gmx.de>
2024-03-12 09:45:35 +00:00
Pieter De Gendt
42fa87d5a8 soc: nxp: imx: imx8m: Align resource table to 64bit for i.MX 8M
Running samples/subsys/ipc/openamp_rsc_table with some adjustments
sometimes results in linux kernel panics.

After experimenting it appears to be hit or miss depending on the
resource table alignment.
Explicitly aligning to 64bit (the native width), no more kernel panics
were seen.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-03-12 10:44:04 +01:00
Daniel DeGrasse
0bbc67e9d8 soc: nxp: imxrt: renable DCDC adjustment for RT11xx
DCDC adjustment was enabled by default for RT11xx series before HWMv2
transition. Reenable it, as this is needed for some higher power
applications (such as display output)

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-12 10:40:12 +01:00
Guennadi Liakhovetski
0a6e90b3b8 xtensa: make assembly-called functions static
z_mp_entry() and power_gate_exit() are only called from assembly code
in the same file, where they're defined. Make them "static" and add
an attribute to let the compiler know, that they aren't unused.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2024-03-11 14:26:06 +01:00
cyliang tw
e22958ceaf soc: nuvoton: numaker: add support for m2l31x series
Add initial support for nuvoton numaker m2l31x SoC series
including basic init.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2024-03-11 14:22:55 +01:00