Migration guide to Zephyr v4.1.0 (Working Draft)
This document describes the changes required when migrating your application from Zephyr v4.0.0 to Zephyr v4.1.0.
Any other changes (not directly related to migrating applications) can be found in the release notes.
Build System
Kernel
Boards
Modules
Mbed TLS
If a platform has a CSPRNG source available (i.e.
CONFIG_CSPRNG_ENABLED
is set), then the Kconfig optionCONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG
is the default choice for random number source instead ofCONFIG_MBEDTLS_PSA_CRYPTO_LEGACY_RNG
. This helps in reducing ROM/RAM footprint of the Mbed TLS library.
Trusted Firmware-M
LVGL
The config option
CONFIG_LV_Z_FLUSH_THREAD_PRIO
is now calledCONFIG_LV_Z_FLUSH_THREAD_PRIORITY
and its value is now interpreted as an absolute priority instead of a cooperative one.
Device Drivers and Devicetree
Controller Area Network (CAN)
Display
Enhanced Serial Peripheral Interface (eSPI)
GNSS
Input
Interrupt Controller
LED Strip
Sensors
Serial
Stepper
Renamed the
compatible
fromzephyr,gpio-steppers
tozephyr,gpio-stepper
.
Regulator
Bluetooth
Bluetooth HCI
Bluetooth Mesh
Bluetooth Audio
Bluetooth Classic
Bluetooth Host
Bluetooth Crypto
Networking
Other Subsystems
Flash map
hawkBit
MCUmgr
Modem
Architectures
native/POSIX
CONFIG_NATIVE_APPLICATION
has been deprecated. Out-of-tree boards using this option should migrate to the native_simulator runner (GitHub #81232). For an example of how this was done with a board in-tree check GitHub #61481.For the native_sim target
CONFIG_NATIVE_SIM_NATIVE_POSIX_COMPAT
has been switched ton
by default, and this option has been deprecated. Ensure your code does not use theCONFIG_BOARD_NATIVE_POSIX
option anymore (GitHub #81232).