:orphan: .. _zephyr_4.0: Zephyr 4.0.0 (Working Draft) ############################ We are pleased to announce the release of Zephyr version 4.0.0. Major enhancements with this release include: An overview of the changes required or recommended when migrating your application from Zephyr v3.7.0 to Zephyr v4.0.0 can be found in the separate :ref:`migration guide`. The following sections provide detailed lists of changes by component. Security Vulnerability Related ****************************** The following CVEs are addressed by this release: More detailed information can be found in: https://docs.zephyrproject.org/latest/security/vulnerabilities.html API Changes *********** * Removed deprecated arch-level CMSIS header files ``include/zephyr/arch/arm/cortex_a_r/cmsis.h`` and ``include/zephyr/arch/arm/cortex_m/cmsis.h``. ``cmsis_core.h`` needs to be included now. * Removed deprecated ``ceiling_fraction`` macro. :c:macro:`DIV_ROUND_UP` needs to be used now. * Deprecated ``EARLY``, ``APPLICATION`` and ``SMP`` init levels can no longer be used for devices. Removed APIs in this release ============================ * Macro ``K_THREAD_STACK_MEMBER``, deprecated since v3.5.0, has been removed. Use :c:macro:`K_KERNEL_STACK_MEMBER` instead. Deprecated in this release ========================== * Deprecated the :c:func:`net_buf_put` and :c:func:`net_buf_get` API functions in favor of :c:func:`k_fifo_put` and :c:func:`k_fifo_get`. Architectures ************* * ARC * ARM * ARM64 * RISC-V * Xtensa Kernel ****** Bluetooth ********* * Audio * Host * Added API :c:func:`bt_gatt_get_uatt_mtu` to get current Unenhanced ATT MTU of a given connection (experimental). * HCI Drivers Boards & SoC Support ******************** * Added support for these SoC series: * Made these changes in other SoC series: * NXP S32Z270: Added support for the new silicon cut version 2.0. Note that the previous versions (1.0 and 1.1) are no longer supported. * Added support for these boards: * Made these board changes: * :ref:`native_posix` has been deprecated in favour of :ref:`native_sim`. * Added support for the following shields: Build system and Infrastructure ******************************* Documentation ************* * Added two new build commands, ``make html-live`` and ``make html-live-fast``, that automatically locally host the generated documentation. They also automatically rebuild and rehost the documentation when changes to the input ``.rst`` files are detected on the filesystem. Drivers and Sensors ******************* * ADC * Battery * CAN * Charger * Clock control * Counter * DAC * Disk * Display * Ethernet * LiteX: Renamed the ``compatible`` from ``litex,eth0`` to :dtcompatible:`litex,liteeth`. * Flash * GNSS * GPIO * Hardware info * I2C * I2S * I3C * Input * LED * lp5569: added ``charge-pump-mode`` property to configure the charge pump of the lp5569. * lp5569: added ``enable-gpios`` property to describe the EN/PWM GPIO of the lp5569. * LED Strip * LoRa * Mailbox * MDIO * MFD * Modem * MIPI-DBI * MSPI * Pin control * PWM * Regulators * Reset * RTC * RTIO * SDHC * Sensors * Serial * LiteX: Renamed the ``compatible`` from ``litex,uart0`` to :dtcompatible:`litex,uart`. * SPI * USB * Video * Watchdog * Wi-Fi Networking ********** * ARP: * CoAP: * Connection manager: * DHCPv4: * DHCPv6: * DNS/mDNS/LLMNR: * gPTP/PTP: * HTTP: * IPSP: * IPv4: * IPv6: * LwM2M: * Location object: optional resources altitude, radius, and speed can now be used optionally as per the location object's specification. Users of these resources will now need to provide a read buffer. * Misc: * MQTT: * Network Interface: * OpenThread * PPP * Shell: * Sockets: * Syslog: * TCP: * Websocket: * Wi-Fi: * zperf: USB *** Devicetree ********** Kconfig ******* Libraries / Subsystems ********************** * Debug * Demand Paging * Formatted output * Management * MCUmgr * Added support for :ref:`mcumgr_smp_group_10`, which allows for listing information on supported groups. * Logging * Modem modules * Power management * Crypto * CMSIS-NN * FPGA * Random * SD * State Machine Framework * Storage * LittleFS: The module has been updated with changes committed upstream from version 2.8.1, the last module update, up to and including the released version 2.9.3. * Task Watchdog * POSIX API * LoRa/LoRaWAN * ZBus HALs **** * Nordic * STM32 * ADI * Espressif MCUboot ******* OSDP **** Trusted Firmware-M ****************** LVGL **** Tests and Samples ***************** Issue Related Items ******************* Known Issues ============