Commit graph

4428 commits

Author SHA1 Message Date
Hou Zhiqiang 5062c51c49 soc: mimx8m: set the UART devices RDC permission
Add SoC initialization to set the UART RDC permission in the early
phase, so that the it can be used by Zephyr on Cortex-A cores.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2024-03-28 16:01:30 -05:00
Hou Zhiqiang 657e7edd96 soc: mimx8m: add MMU mapping for RDC MMIO
Add MMU mapping for RDC MMIO on i.MX8M SoCs.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2024-03-28 16:01:30 -05:00
Marcin Szymczyk 1de13cc96a soc: nordic: vpr: finish pending transactions before calling wfi
To minimize time the CPU spends when preparing for sleep, make sure
the pending transactions are finished before calling `wfi`.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2024-03-28 14:47:40 +00:00
Daniel DeGrasse 5e241970f5 soc: nxp: rw: enable DMIC clock at boot
Enable DMIC clock at boot, so that RW DMIC IP will be useable by driver

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-28 09:44:25 +00:00
Laurentiu Mihalcea 9517639390 nxp: imx8ulp: change SOC name to MIMX8UD7
The SOC name `imx8ulp` has been just a placeholder until
support for the SOC's ADSP (since this is the only core
that's supported in Zephyr) could be added to the NXP HAL.
Now that the support has been added, to make use of it, the
SOC name `imx8ulp` has to be changed to `mimx8ud7`. As such,
this commit does the following:
	1) Introduces SOC part number configuration - needed
	by some HAL headers.
	2) Replaces all occurrences of `imx8ulp` (as the SOC
	name) with `mimx8ud7`.
	3) Enables `CONFIG_HAS_MCUX`.
	4) Aligns all `CONFIG_SOC_` configurations with the
	new SOC name.
	5) Updates SOF hash. This is needed to fix build issues
	caused by this name change. This is not done in a separate
	commit to preserve bisectability.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2024-03-28 09:41:15 +00:00
Daniel Leung b69d2486fe kernel: rename Z_KERNEL_STACK_BUFFER to K_KERNEL_STACK_BUFFER
Simple rename to align the kernel naming scheme. This is being
used throughout the tree, especially in the architecture code.
As this is not a private API internal to kernel, prefix it
appropriately with K_.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-03-27 19:27:10 -04:00
Raffael Rostagno b17712364c drivers: systimer: Removed mention to ESP32C3
Removed mention to C3 SoC, so files are not SoC specific. Ready for C6
integration.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2024-03-27 15:18:45 +00:00
Jamie McCrae fe8816f278 soc: renesas: rcar_gen3: Fix Kconfigs
Fixes Kconfigs to not use another SOC_SERIES Kconfig name

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-26 09:29:03 +00:00
Mahesh Mahadevan b0dbd9a87e soc: mcxnx4x: Add FlexSPI support
Add support for FlexSPI

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-03-25 18:40:14 -04:00
Jon Ringle c69986da4c soc: atmel: saml2x: Don't do a GCLK SWRST
Doing a `GCLK->CTRLA.bit.SWRST = 1` will cause boot chaining to hang.
Setting the CPU clock to run from OSCULP32K during initialization is
all that is needed.

Signed-off-by: Jon Ringle <jringle@gridpoint.com>
2024-03-25 16:19:08 +01:00
Mykola Kvach 5554fd17b6 soc: rcar_gen3: set correct NUM_IRQS for ARM64 R-Car Gen3 boards
Align number of interrupts for ARM64 R-Car Gen3 boards with
the documentation.

Signed-off-by: Mykola Kvach <mykola_kvach@epam.com>
2024-03-25 10:06:20 +00:00
Daniel Leung 6ea749de52 arch: rename arch_start_cpu() to arch_cpu_start()
Rename arch_start_cpu() to arch_cpu_start() so it belongs to
the "cpu" namespace.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-03-25 09:58:35 +00:00
Marcin Szkudlinski 3fde2c50c6 tracing: add intel ADSP memory window backend
This commits adds a tracing backend based on
Intel ADSP debug memory window

Signed-off-by: Marcin Szkudlinski <marcin.szkudlinski@intel.com>
2024-03-25 09:33:41 +01:00
Flavio Ceolin 6b9d01f995 intel_adsp/ace: power: No pending transaction before power gate
Issue an upstream read transaction through uncached memory to flush
out all pending transactions before power down the host domain.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2024-03-22 21:29:33 -04:00
Declan Snyder 711375695e soc: nxp: rw: Support Reset cause setting
Support reset causes on RW SOC

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-22 15:58:03 -05:00
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