Commit graph

5973 commits

Author SHA1 Message Date
Marek Matej
795ac34f29 soc: espressif: Use WiFi config file
Add config file to host WiFi specific settings.
Introduce CONFIG_ESP_WIFI_MAX_THREAD_PRIO to be used
as a cap for the LL driver runtime.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2024-08-09 09:54:36 +02:00
Kai Vehmanen
2fcdbba534 intel_adsp/ace: power: pad the hpsram_mask passed to power_down
The power_down() function will lock dcache for the hpsram_mask
array. On some platforms, the dcache lock will fail if the array
is on cache line that can be used for window register context
saves.

Work around this by aligning and padding the hpsram_mask to cacheline
size.

Link: https://github.com/thesofproject/sof/issues/9268
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2024-08-08 15:38:58 +02:00
Flavio Ceolin
0205c7d511 pm: Remove deprecated symbol references
Do not reference PM_DEVICE_RUNTIME_EXCLUSIVE

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2024-08-08 15:38:04 +02:00
Anke Xiao
f253d36f5d soc: nxp: kinetis: ke1xz: enable spi clock
Add lpspi clock configuration for frdm_ke17z and frdm_ke17z512.

Signed-off-by: Anke Xiao <anke.xiao@nxp.com>
2024-08-08 06:07:51 -04:00
Dino Li
c3a4a1a0f6 drivers: intc_ite_it8xxx2: disable debug mode then reset for tests
After flashed EC image, we needed to manually press the reset button
on it8xxx2_evb. Now, without pressing the button, we can disable
debug mode and trigger a watchdog hard reset for running tests.

After flash EC, running below tests can pass (without pressing the button):
west build -p always -b it8xxx2_evb tests/drivers/watchdog/wdt_basic_api
west build -p always -b it8xxx2_evb tests/kernel/timer/timer_api
west build -p always -b it8xxx2_evb tests/kernel/fatal/exception

Signed-off-by: Dino Li <Dino.Li@ite.com.tw>
Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2024-08-08 06:07:35 -04:00
Richard Wheatley
2db45fca9c soc: ambiq: apollo4x: pinctrl updates
Updated to add more pinctrl facilities

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2024-08-08 06:06:21 -04:00
Manuel Argüelles
fc9a6685f1 soc: nxp: s32: s32k3: add missing EDMA kconfig option
This option is used by some tests to filter by EDMA support.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-08-08 06:06:03 -04:00
Sadik Ozer
7323757e36 soc: Add the MAX32662 SoC
Add MAX32662 Kconfig and dts files

Co-authored-by: Maureen Helm <maureen.helm@analog.com>
Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-08-07 19:04:26 -04:00
Francois Ramu
c8e1fdf296 soc: stm32 devices have lower tick with lower sysclock
For stm32 platforms where the sysclock is less or equal to
32MHz, the Ticks per second is reduced to 8000 (instead of
10000).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-08-07 19:03:18 -04:00
Grzegorz Swiderski
56d241bd48 soc: nordic: Validate PPR CLIC address
Add a missing entry in `validate_base_addresses.c`.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-08-07 19:01:55 -04:00
Anas Nashif
d590c18672 intel_adsp: ace: call soc_num_cpus_init early
Restore order of execution. Code that was run in EARLY init level is now
too late.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-08-07 13:50:53 +02:00
Anas Nashif
dbfbf0edba xtensa: adapt soc code to use prep_c
Many xtensa target jump from soc code directly into cstart and depend on
architecture code being initialized in arch_kernel_init(). Instead of
jumping to cstart, jump to newly introduced prep_c similar to all other
architectures, where common platfotm initialization will happen.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-08-07 13:50:53 +02:00
Felipe Neves
af91d06b00 drivers: mbox: mbox_esp32: add support for esp32 MBOX driver
as an alternative for IPM driver.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2024-08-07 07:17:01 -04:00
Duy Phuong Hoang. Nguyen
0c93268e52 driver: clock: Update clock control driver for RA8
This update is to support clock API for RA8
Move the clock initialize function into clock driver
Peripheral clock now has 2 more property in clock cell for enable
and disable clock to peripheral module

Signed-off-by: Duy Phuong Hoang. Nguyen <duy.nguyen.xa@renesas.com>
2024-08-07 07:16:45 -04:00
Yiding Jia
eb351436ad drivers: pinctrl: rp2040: oe-override option
This change adds the device tree property for specifying oe-override
(output-enable override behavior), as well as defines for possible values
of the property.

RP2040 GPIOs can be configured to automatically invert the output-enable
signal from the selected peripheral function. This is useful for tasks like
writing efficient PIO code, such as in the i2c example in the rp2040
datasheet.


Signed-off-by: Yiding Jia <yiding.jia@gmail.com>
2024-08-07 07:16:28 -04:00
Sadik Ozer
a055587721 soc: Add the MAX32675 SoC
Add MAX32675 Kconfig and dts files

Co-authored-by: Maureen Helm <maureen.helm@analog.com>
Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-08-06 17:18:02 -04:00
Sylvio Alves
c374d3147b linker: esp32: fix cpp rom region
cplusplus-rom linker initialization was wrongly placed
in RAM area when it should be in ROM area.

Fixes #75853

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-08-06 17:17:24 -04:00
Gerard Marull-Paretas
4bc55acaff soc: nordic: vpr: allow building VPR launcher for FLPR
VPR launcher can also be used for FLPR.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-06 14:32:40 +02:00
Gerard Marull-Paretas
3f3ffb91ad soc: nordic: nrf54h20: define CPUFLPR core
So that FLPR core can be used.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-06 14:32:40 +02:00
Gerard Marull-Paretas
5e3188605e drivers: pinctrl: nrf: add support for nordic,clock-enable
Driver will be capable of retrieving such property from DT and apply it
accordingly.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-06 14:32:40 +02:00
Gerard Marull-Paretas
1eddb047f9 soc: nordic: nrf53: deprecate SOC_DCDC_NRF53X*
Regulators can now be configured using DT.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-06 09:17:10 +01:00
Gerard Marull-Paretas
2c3270db43 soc: nordic: nrf53: allow configuring regulators using DT
Instead of Kconfig options which are about to be deprecated.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-06 09:17:10 +01:00
Gerard Marull-Paretas
aaacd682cc soc: nordic: nrf52: deprecate SOC_DCDC_NRF52X[_HV]
Main supply can now be configured using DT.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-06 09:17:10 +01:00
Gerard Marull-Paretas
e189fb0720 soc: nordic: nrf52: add support for DT-based regulators config
In addition to Kconfig options (soon to be deprecated), allow
configuring the regulators using DT.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-06 09:17:10 +01:00
Apoorv Singh
e02a5fb139 soc: nxp:imxrt Register log module to soc.c
Previously, the `soc.c` files for the IMXRT11xx, IMXRT5xx/CM33, and
IMXRT6xx/CM33 did not register the log module. This caused build
errors when DEBUG logging was enabled, as the `power.c` file attempted
to access a non-existent SOC log module for debug messages.

This commit fixes the issue by registering the log module in the
`soc.c` files for the specified SoCs, thereby resolving the build
errors.

Signed-off-by: Apoorv Singh <apoorv.singh@gin.de>
2024-08-05 16:26:58 +02:00
Apoorv Singh
8cc8a4f909 soc: nxp: imxrt: Fix formatting in soc.c files
Fix formatting for `soc.c` files for the IMXRT11xx, IMXRT5xx/CM33, and
IMXRT6xx/CM33 by running 'clang-format'.

Signed-off-by: Apoorv Singh <apoorv.singh@gin.de>
2024-08-05 16:26:58 +02:00
Manuel Argüelles
896d8d6896 drivers: counter: nxp: convert STM to native driver
Convert NXP System Timer Module driver to a native driver.

Timer prescaler in tests is updated because short relative alarms
sometimes give false positives.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-08-05 07:35:57 -05:00
Benedikt Streicher
ed018f82f5 soc: ti: simplelink: cc13x2_cc26x2: allow basic BT without zepyhr stack
Allow developer to use the baremetal Bluetooth functionalities of the
CC13X2 and CC26X2 series SoCs without having to use the full Zephyr
Bluetooth stack.

Signed-off-by: Benedikt Streicher <streicher.b@posteo.de>
2024-08-04 16:25:01 -05:00
Manuel Argüelles
b8928dfc3f drivers: watchdog: convert NXP SWT to native driver
Convert NXP SWT watchdog driver to a native driver and extend the
SWT supported functionalities and configuration options.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-08-03 05:58:46 -05:00
Manuel Argüelles
7704d4eba4 soc: nxp: s32: convert power mng to native drivers
Convert power management to native drivers retaining existing
functionalities. Presently only SoC reset support and power control
initialization is supported, but these drivers will be extended to
support power management as well.

MC_ME and MC_RGM peripherals are common enough to be reused by other NXP
S32 devices, whereas PMC has specific implementations for each SoC
series.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-08-02 21:51:12 -05:00
Markus Lassila
c44968486d soc: nordic: Fix APPROTECT with TF-M
Allow CONFIG_NRF_APPROTECT_LOCK and
CONFIG_NRF_SECURE_APPROTECT_LOCK with TF-M with all the SOC's
that support TF-M.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2024-08-02 18:50:11 -05:00
Manuel Argüelles
db07ff36a6 soc: nxp: s32: fix siul2 instance for input pinmuxing
Split SIUL2 instance index for the MSCR and IMCR registers as required
by some pins. Pinmux macros definitions in hal_nxp must be updated
accordingly.

Fixes #76147

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-08-02 13:41:15 +02:00
Gero Schwäricke
776ecbca0f soc: espressif: esp32: add WROVER-E-N16R4 SiP variant
It seems this SiP variant is not sold by espressif directly, but it is
used by the Odroid Go. The Odroid Go documentation calls this a "custom"
model [1].

There already exists a SiP specific device tree include file:

  zephyr/dts/xtensa/espressif/esp32/esp32_wrover_e_n16r4.dtsi

[1] https://wiki.odroid.com/odroid_go/odroid_go#specifications

Signed-off-by: Gero Schwäricke <gero.schwaericke@posteo.de>
2024-08-02 03:30:25 -04:00
Krzysztof Chruściński
c84c2fc37d soc: nordic: common: dmm: Initialize dmm as early as possible
DMM shall be initialized as early as possible to allow drivers to
use it. For example, uart may need it early since it starts
RX during initilization in some configurations.

Making dmm_init() public and calling it in soc init function.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-08-01 12:38:44 +02:00
cyliang tw
5b921c53b0 soc: nuvoton: numaker: add poweroff for m46x
Add support of sys_poweroff API on m46x series.
It could support SPD standby or DPD deep power down mode.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2024-08-01 12:37:47 +02:00
Anke Xiao
643e464c76 modules: Kconfig.mcux: remove HAS_MCUX_ACMP
Remove the ‘HAS_MCUX_ACMP’ Kconfig, and also remove it from
driver and soc Kconfig files. It is not needed since we already
depend on 'ACMP' enabled in the dt file, the 'HAS_MCUX_ACMP'
kconfig is a relic of the past before devicetree was stable.

Signed-off-by: Anke Xiao <anke.xiao@nxp.com>
2024-08-01 12:37:23 +02:00
Gerard Marull-Paretas
4c84a6f658 soc: nordic: nrf53: introduce deprecated BOARD_ENABLE_CPUNET
So that existing code does not break when this option gets removed from
boards.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-01 08:56:56 +01:00
Gerard Marull-Paretas
f611fdd6ad soc: nordic: nrf53: add option to enable cpunet
When not using BT, users may want to enable the cpunet core. Until now,
this has been done at board level (so duplicating unnecessary code)
using CONFIG_BOARD_ENABLE_CPUNET. The board-level options were usually
enabled automatically for BT, however, this was unnecessary as BT driver
already takes care of the setup.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-08-01 08:56:56 +01:00
Manuel Argüelles
6c7d836b0c drivers: nxp: convert SIUL2 drivers to native
Convert pin control, GPIO and external interrupt controller drivers
based on SIUL2 peripheral to native drivers. This must be done in a
single commit to preserve atomicity, as these drivers depend on each
other.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-07-31 10:08:24 +02:00
Rahul Arasikere
cc11b26a7d soc: st: stm32f765xx: Correct total number of IRQS.
The total number of IRQs for this chip is 110.
Refer to the reference manual table 46 for IRQs.

Signed-off-by: Rahul Arasikere <arasikere.rahul@gmail.com>
2024-07-30 18:28:53 +01:00
Fin Maaß
1cc82003e7 soc: riscv: litex: use value from dts
use value from dts for
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-07-29 14:29:20 +02:00
Sreeram Tatapudi
eebc998a5a drivers: flash: Support for IFX QSPI Flash driver
Initial version

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2024-07-29 14:14:10 +02:00
Jiafei Pan
ea1a0a6950 board: imx93_evk: enable ENET support for Cortex-A Core
Add ENET 1G support on Cortex-A Core, enable it in DTS.
Updated board document for supported features.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-07-28 07:31:32 +03:00
Tim Lin
6a4a164b54 soc: it8xxx2: linker: Move zephyr library to RAM to enhance performance
Place zephyr library in ILM. This can improve performance.

test:
Print the message 10000 times with 1ms sleep interval to compare the
time difference before and after adding RAM code on the it82002bw evb.

                         RAM code size     save time
original:                1954 bytes
libzephyr.a:            +16974 bytes      -608ms

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-07-27 20:49:47 +03:00
Tim Lin
2ab908bcf2 soc: it8xxx2: linker: Move kernel library to RAM to enhance performance
Place kernel library in ILM. This can improve performance.

test:
Print the message 10000 times with 1ms sleep interval to compare the
time difference before and after adding RAM code on the it82002bw evb.

                         RAM code size    save time
original:                1954 bytes
libkernel.a:            +8941 bytes      -649ms

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-07-27 20:49:47 +03:00
Tim Lin
c5cf53b690 soc: it8xxx2: linker: Move serial library to RAM to enhance performance
Place serial library in ILM. This can improve performance.

test:
Print the message 10000 times with 1ms sleep interval to compare the
time difference before and after adding RAM code on the it82002bw evb.

                         RAM code size    save time
original:                1954 bytes
libdrivers__serial.a:   +2282 bytes      -226ms

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2024-07-27 20:49:47 +03:00
Pieter De Gendt
ad63ca284e kconfig: replace known integer constants with variables
Make the intent of the value clear and avoid invalid ranges with typos.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-07-27 20:49:15 +03:00
Rubin Gerritsen
893c4ed4f9 modules: hal_nordic: Support EGU130 driver instance
Adds the glue code to enable this.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2024-07-27 15:15:07 +03:00
Manuel Argüelles
ec7289039b soc: s32k3: fix RAM retention
Initialize TCM and SRAM contents only after a destructive reset (e.g.
PoR reset). SRAM retains content during functional reset through a
hardware mechanism, therefore accesses do not cause content
corruption errors.

Fixes #75912

Signed-off-by: Manuel Argüelles <marguelles.dev@gmail.com>
2024-07-27 15:14:01 +03:00
Manuel Argüelles
a8ebb05506 soc: nxp: s32k1: obtain system clock freq from dt
In S32K1 devices, Arm Systick clock frequency is equal to the
CPU core clock frequency, and its value can be obtained from
devicetree.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-07-27 15:07:00 +03:00