Enhance the TF-A build system to support board-specific build parameters
through TFA_EXTRA_ARGS mechanism.
Changes:
- Add TFA_EXTRA_ARGS variable support for board-specific parameters
- Implement proper string-to-list conversion for make argument expansion
This allows individual board configurations to specify platform-specific
TF-A build parameters without modifying the core TF-A build logic.
Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
Select cache_lmem component for MCXE24X devices.
This exposes the LMEM cache API needed by the Zephyr driver
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Fixes an issue where input events which have the sync flag set but are
neither X/Y coordiante updates nor press/release updates triggers a false
reporting of input to LVGL.
Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
Add flash controller driver for the on-chip C40 flash controller
The driver is backed by the MCUX C40 HAL and implements
read/erase/program, page layout, and an optional protection policy
that can lock well-known regions (IVT/MCUboot) derived from devicetree.
Key details:
- Selects FLASH_HAS_DRIVER_ENABLED / FLASH_HAS_EXPLICIT_ERASE /
FLASH_HAS_PAGE_LAYOUT.
- Runs erase/program from SRAM when XIP by relocating both the shim and
the MCUX HAL source if CODE_DATA_RELOCATION_SRAM=y.
- Optional protection pass at init (FLASH_MCUX_C40_APPLY_PROTECTION),
which aligns windows to sector boundaries and applies lock/unlock
using the HAL. This is useful on XIP systems to keep IVT/bootloader
ranges read-only; can be disabled if a bootloader or security policy
manages protection instead.
Files:
- drivers/flash/flash_mcux_c40.c (new)
- drivers/flash/CMakeLists.txt (+zephyr_code_relocate when needed,
Compliance fixes)
- drivers/flash/Kconfig.mcux (enable flash driver, reloc & protection)
- modules/hal_nxp/mcux/mcux-sdk-ng/drivers/drivers.cmake
Signed-off-by: Sumit Batra <sumit.batra@nxp.com>
The supplicant currently supports TLS 1.3 only for EAP-TLS. To prevent
TLS handshake failures in PEAP-TLS phase2, add the flag
'tls_disable_tlsv1_3=1' to phase2 configuration, ensuring TLS 1.3 is
disabled for inner authentication.
Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
Adds a Kconfig option LV_Z_POINTER_FROM_CHOSEN_TOUCH which automatically
creates a lvgl input pointer device from the chosen zephyr,touch node.
Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
The 250745e198 OT stack upmerge pulled upstream commit 079852b67e9b
("[uptime] enforce `UPTIME` feature for MTD and FTD builds (#11354)")
which made `OPENTHREAD_CONFIG_UPTIME_ENABLE` mandatory for MTD builds.
Update the module configuration accordingly to fix a build failure with
CONFIG_OPENTHREAD_MTD=y.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
This patch removes the use of sscanf to maintain compatibility with
tests that use the minimal cpp library. The expected version is now
defined using multiple individual values rather than a single
formatted string.
Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
Replace zephyr_compile_definitions with zephyr_library_compile_definitions
to avoid setting options globally.
Signed-off-by: Mark Wang <yichang.wang@nxp.com>
Some of the socket calls still used POSIX symbols, replace these
by native Zephyr network API calls.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
New nrfx release contains major rework of nrfx drivers
instantiation making it easier to integrate with dts nodes.
Now, nrfx driver instances can no longer be `const`
because they contain driver runtime state.
Additionally, all nrfx drivers return `errno` error codes
instead of deprecated `nrfx_err_t`.
Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
SiFli HAL is using HAL_Delay_us to delay for certain microseconds.
This is a weak function. I overwrites this function with Zephyr k_sleep.
Signed-off-by: Gang He <ganghe@sifli.com>
Move lz4 to become external module. It is not in the default manifest
anymore (through submanifests) and will need to be added if application
requires it per the docs.
Samples will be moved to the module itself.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Do not delete the thread from within the thread callback function,
secure thread_delete against trying to delete a terminated thread.
Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
In this commit, `net_socket_service_register` is called when a platform
module that has sockets is deinitialized, and it's socket/sockets are
closed.
This commit also handles a case when a module tries to join a multicast
group and a subscription, from another module, is already present.
Also, covered network namespace changes done in #99169
Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
OpenThread interface is initialized beform Wi-Fi interface.
`otPlatTrelEnable` is called by OpenThread stack when it's interface is
being initialized. Given this scenario, socket operation, like `bind`,
will fail. There is also no mean to get a valid pointer to backbone
interface. This is why, `trel_plat_init` was declared and called when
backbone interface reported connectivity.
This commit handles the `ot trel disable/ot trel enable` scenario that
can be initialized from CLI. `otPlatTrelEnable` will be called, but
`trel_plat_init` will not be called anymore, leaving trel socket without
any options set, and `net_socket_service_register` is not called
anymore, to handle incoming traffic.
Now, when `otPlatTrelEnable` is called, it will verify if Wi-Fi
interface is connected and will call `trel_plat_init` if needed.
Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
west: update hal_nxp to integrate mcux: middleware: ieee_802_15_4 MAC: Add
CONFIG_NXP_IEEE802154_MAC
zephyr: blobs: add MCXW71 & MCXW72 BLE controller and Host libraries
(ieee-802.15.4-mac) to MCUXSDK 25.09.00 release
This new version of the BLE controller is for ZigBee support and
implements ieee-802.15.4 MAC interface.
Update connectivity framework for MCXW71 & MCXW72 BLE controller
(ieee-802.15.4 MAC) from MCUXSDK 25.09 release.
Signed-off-by: Guillaume Legoupil <guillaume.legoupil@nxp.com>
C99 has been the minimum required C standard version for Zephyr since
its inception. After multiple attempts and discussions, a decision has
been made to upgrade to C17 going forward.
This commits replaces the default C standard from C99 to C17 in the
configuration and build system, and deprecates support for the older
standards.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
- Updates Bluetooth driver to include bluetooth firmware for B1 device
revision.
- Changes build behavior to allow building without blobs being fetched
to allow CI to verify build.
- Adds cmake warning if blobs are not present.
Signed-off-by: John Batch <john.batch@infineon.com>
Updated platform code to make use of number of socket services defined
in Kconfig. In this way, hardcoded values are avoided.
Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
ARMv9-A is AArch64-only and does not support AArch32 execution states
at EL1/EL2/EL3. Configure TF-A build to disable AArch32 register
context (CTX_INCLUDE_AARCH32_REGS=0) when building for ARMv9-A platforms.
This fixes TF-A boot failures on ARMv9-A non-secure variants where
TF-A would panic with:
ERROR: EL1 supports AArch64-only. Please set build flag
CTX_INCLUDE_AARCH32_REGS = 0
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Updates DMA includes from the modules needed for DMA PDL based driver
implementation.
Cleans up cmake to use only USE_INFINEON_DMA Kconfig option to select
dma files from PDL/HAL.
Signed-off-by: John Batch <john.batch@infineon.com>
Explicitly disable the SECURE_UART TFM define when
`CONFIG_TFM_LOG_LEVEL_SILENCE=y`. The secure UART is only enabled by
default on nRF platforms to match the current TF-M defaults.
Signed-off-by: Jordan Yates <jordan@embeint.com>
In this commit, a new callback for NAT64 messages is added.
This is done to avoid passing the received message to rx queue of
external network interface.
As cidr is set from host's IPV4 address, this packet would have been
dropped when parsed, as source address was the same with the host
address and packet was not marked as loopback.
Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
This commit enables IPV4 messages exchange between interfaces by adding
NAT64 support at platform level.
Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
Nothing in Zephyr uses SOF, it is the other way round, SOF uses
Zephyr, creating a cyclic dependency in some cases making it difficult
to apply changes to areas used by SOF upstream.
Part of #91061
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Add support to handle domain match and suffix match parameters
for proper server certification validation.
Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
* ARM Cortex-M3 processor
* Up to 32 kB Flash and 4 kB RAM memory
* Energy efficient and autonomous peripherals
* Ultra low power Energy Modes
* Fast wake-up
Signed-off-by: Lukas Woodtli <woodtli.lukas@gmail.com>
The LoRaWAN subsystem does not require 2KiB of system workqueue,
testing on nrf54l15 flpr (RISCV) CPU (with custom cryptography code)
shows it uses about 700 bytes of the system workqueue, therefore it
is assumed that the real requirement for 2KiB is the software
cryptography features, not the LoRaWAN stack itself, and the
cryptography parts of LoRaWAN can be replaced with alternatives
that do not need this high of a memory requirement, so the
requirement has been moved to the specific Kconfig for software
cryptography instead
Signed-off-by: Jamie McCrae <spam@helper3000.net>
When OpenThread iface is brought up `ot ifconfig up` there are several
modules that will attempt to open a platform socket and perform bind
and bind to netif operation.
Since now, `sockfd_upd` structure was initialized after the backbone
interface announced connectivity, but this implies that OpenThread
interface will always be brought up only after this event, which is not
true, or imposed.
Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
Use the newly created CONFIG_CSPRNG_NEEDED to simplify the enablement of
CSPRNG for the PSA Crypto Core.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
The initial goal of CONFIG_CSPRNG_AVAILABLE was to declare that there was
an entropy node declared in the DT so that if CONFIG_ENTROPY_GENERATOR
was enabled, then the corresponding driver could be enabled.
This works in most of the cases, but not all. A counter example is the
"entropy_bt_hci" driver which is only enabled if CONFIG_BT_HCI_HOST is also
enabled. This means that in a build where the BT stack is not enabled
that driver won't be enabled even if the DT node is still present.
An example of this are the nrf5340[dk|bsim] boards.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>