Lines Matching +full:sector +full:- +full:0 +full:a +full:- +full:pages

3 .. _zephyr_4.0:
5 Zephyr 4.0.0
8 We are pleased to announce the release of Zephyr version 4.0.0.
13 A newly introduced :ref:`secure storage<secure_storage>` subsystem allows the use of the
15 is now the standard way to provide device-specific protection to data at rest. (:github:`76222`)
18 :ref:`ZMS <zms_api>` is a new key-value storage subsystem compatible with all non-volatile storage
23 A new :ref:`comparator<comparator_api>` device driver subsystem for analog comparators has been
25 runtime configuration through vendor specific APIs. Initially the :dtcompatible:`nordic,nrf-comp`,
26 :dtcompatible:`nordic,nrf-lpcomp` and :dtcompatible:`nxp,kinetis-acmp` are supported.
29 It is now possible to interact with stepper motors using a standard API thanks to the new
31 Initially implemented drivers include a simple :dtcompatible:`zephyr,gpio-steppers` and a complex
32 sensor-less stall-detection capable with integrated ramp-controller :dtcompatible:`adi,tmc5041`.
35 A new :ref:`haptics_api` device driver subsystem allows unified access to haptic controllers,
43 A `Prometheus`_ metrics library has been added to the networking stack. It provides a way to
49 navigation. These include a new :ref:`interactive board catalog <boards>` and an interactive
50 directory for :zephyr:code-sample-category:`code samples <samples>`.
59 v3.7.0 to Zephyr v4.0.0 can be found in the separate :ref:`migration guide<migration_4.0>`.
70 * :cve:`2024-8798`: Under embargo until 2024-11-22
71 * :cve:`2024-10395`: Under embargo until 2025-01-23
72 * :cve:`2024-11263` `Zephyr project bug tracker GHSA-jjf3-7x72-pqm9
73 <https://github.com/zephyrproject-rtos/zephyr/security/advisories/GHSA-jjf3-7x72-pqm9>`_
84 * ``CBPRINTF_PACKAGE_COPY_*`` macros, deprecated since Zephyr 3.5.0, have been removed.
86 * ``_ENUM_TOKEN`` and ``_ENUM_UPPER_TOKEN`` macros, deprecated since Zephyr 2.7.0,
89 * Removed deprecated arch-level CMSIS header files
131 * Added support of device memory attributes on Cortex-M (arm_mpu_v8)
142 * RISC-V
148 has an additional field ``csf`` that points to the callee-saved-registers upon an fatal error,
149 which can be accessed in :c:func:`k_sys_fatal_error_handler` by ``esf->csf``.
190 * Added API :c:func:`bt_gatt_get_uatt_mtu` to get current Unenhanced ATT MTU of a given
193 The option allows using a separate workqueue for connection TX notify processing
198 * Added a warning to :c:func:`bt_conn_le_create` and :c:func:`bt_conn_le_create_synced` if
208 * Added support for non-bondable mode (SSP)
213 * Added support for Multi-Command Packet (l2cap)
217 * Improved the SMP code to check if remote supports CID 0x0007
231 * Introduced a mesh-specific workqueue to increase reliability of the mesh messages
239 * Added ESP32-C2 and ESP8684 SoC support.
243 * Added NXP i.MX93's Cortex-M33 core
253 * Added ESP32 WROVER-E-N16R4 variant.
272 * Nordic nRF54H: Added support for the FLPR (Fast Lightweight Processor) RISC-V CPU.
285 * :zephyr:board:`BeagleBone AI-64 <beaglebone_ai64>` (``beaglebone_ai64``)
288 * :zephyr:board:`Espressif ESP32-C3-DevKitC <esp32c3_devkitc>` (``esp32c3_devkitc``)
289 * :zephyr:board:`Espressif ESP32-C3-DevKit-RUST <esp32c3_rust>` (``esp32c3_rust``)
290 * :zephyr:board:`Espressif ESP32-S3-EYE <esp32s3_eye>` (``esp32s3_eye``)
291 * :zephyr:board:`Espressif ESP8684-DevKitM <esp8684_devkitm>` (``esp8684_devkitm``)
298 * :zephyr:board:`NXP FRDM-MCXA156 <frdm_mcxa156>` (``frdm_mcxa156``)
299 * :zephyr:board:`NXP FRDM-MCXC242 <frdm_mcxc242>` (``frdm_mcxc242``)
300 * :zephyr:board:`NXP FRDM-MCXC444 <frdm_mcxc444>` (``frdm_mcxc444``)
301 * :zephyr:board:`NXP FRDM-MCXN236 <frdm_mcxn236>` (``frdm_mcxn236``)
302 * :zephyr:board:`NXP FRDM-MCXW71 <frdm_mcxw71>` (``frdm_mcxw71``)
304 * :zephyr:board:`NXP MIMXRT1180-EVK <mimxrt1180_evk>` (``mimxrt1180_evk``)
305 * :ref:`PHYTEC phyBOARD-Nash i.MX93 <phyboard_nash>` (``phyboard_nash``)
321 * :zephyr:board:`Renode Cortex-R8 Virtual <cortex_r8_virtual>` (``cortex_r8_virtual``)
322 * :zephyr:board:`Seeed XIAO ESP32-S3 Sense Variant <xiao_esp32s3>`: ``xiao_esp32s3``.
323 * :ref:`sensry.io Ganymed Break-Out-Board (BOB) <ganymed_bob>` (``ganymed_bob``)
324 * :zephyr:board:`SiLabs SiM3U1xx 32-bit MCU USB Development Kit <sim3u1xx_dk>` (``sim3u1xx_dk``)
328 * :zephyr:board:`ST Nucleo H755ZI-Q <nucleo_h755zi_q>` (``nucleo_h755zi_q``)
333 * :zephyr:board:`ST STM32U083C-DK <stm32u083c_dk>` (``stm32u083c_dk``)
335 * :zephyr:board:`vcc-gnd YD-STM32H750VB <yd_stm32h750vb>` (``yd_stm32h750vb``)
336 …* :zephyr:board:`WeAct Studio STM32F405 Core Board V1.0 <weact_stm32f405_core>` (``weact_stm32f405…
357 * ``mps3/an547/ns`` to ``mps3/corstone300/an547/ns`` for non-secure.
376 * :ref:`ADI EVAL-ADXL362-ARDZ <eval_adxl362_ardz>`
377 * :ref:`ADI EVAL-ADXL372-ARDZ <eval_adxl372_ardz>`
382 * :ref:`ST X-NUCLEO-WB05KN1: BLE expansion board <x-nucleo-wb05kn1>`
393 * ``--dts``
394 * ``--dtc-flags``
395 * ``--bindings-dirs``
396 * ``--dts-out``
397 * ``--edt-pickle-out``
398 * ``--vendor-prefixes``
399 * ``--edtlib-Werror``
406 * Added support for RAM-load MCUboot operating mode in build system, including sysbuild support.
408 * Added a script parameter to Twister to enable HW specific arguments, such as a system specific
414 * Added a new :ref:`interactive board catalog <boards>` enabling users to search boards by criteria
416 * Added a new :zephyr:code-sample-category:`interactive code sample catalog <samples>` for quickly
418 * Added :rst:dir:`zephyr:board` directive and :rst:role:`zephyr:board` role to mark Sphinx pages as
419 board documentation and reference them from other pages. Most existing board documentation pages
421 * Added :rst:dir:`zephyr:code-sample-category` directive to describe and group code samples in the
423 * Added a link to the source code of the driver matching a binding's compatible string (when one can
425 * Added a button to all code sample README pages allowing to directly browse the sample's source
427 * Moved Zephyr C API documentation out of main documentation. API references now feature a rich
429 * Added two new build commands, ``make html-live`` and ``make html-live-fast``, that automatically
439 * Fixed calibration scheme in ESP32-S3.
441 * Added initial support for Renesas RA8 ADC driver (:dtcompatible:`renesas,ra-adc`)
442 * Added driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-adc`).
443 * Added support for NXP S32 SAR_ADC (:dtcompatible:`nxp,s32-adc-sar`)
448 * Added initial support for Renesas RA CANFD (:dtcompatible:`renesas,ra-canfd-global`,
449 :dtcompatible:`renesas,ra-canfd`)
450 * Added Flexcan support for S32Z27x (:dtcompatible:`nxp,flexcan`, :dtcompatible:`nxp,flexcan-fd`)
451 * Improved NXP S32 CANXL error reporting (:dtcompatible:`nxp,s32-canxl`)
459 * STM32H7: PLL FRACN can now be configured (see :dtcompatible:`st,stm32h7-pll-clock`)
460 * Added initial support for Renesas RA clock control driver (:dtcompatible:`renesas,ra-cgc-pclk`,
461 :dtcompatible:`renesas,ra-cgc-pclk-block`, :dtcompatible:`renesas,ra-cgc-pll`,
462 :dtcompatible:`renesas,ra-cgc-external-clock`, :dtcompatible:`renesas,ra-cgc-subclk`,
463 :dtcompatible:`renesas,ra-cgc-pll-out`)
464 …* Silabs: Added support for Series 2+ Clock Management Unit (see :dtcompatible:`silabs,series-cloc…
469 * Added a driver for the Wolfson WM8904 audio codec (:dtcompatible:`wolfson,wm8904`)
475 * Added support for Nordic nRF COMP (:dtcompatible:`nordic,nrf-comp`)
476 * Added support for Nordic nRF LPCOMP (:dtcompatible:`nordic,nrf-lpcomp`)
477 * Added support for NXP Kinetis ACMP (:dtcompatible:`nxp,kinetis-acmp`)
481 * Added initial support for Renesas RA8 AGT counter driver (:dtcompatible:`renesas,ra-agt`)
482 * Added driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-counter`).
486 …rt for late and short relative alarms area to NXP nxp_sys_timer (:dtcompatible:`nxp,s32-sys-timer`)
517 * Added driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-dma`).
524 (:dtcompatible:`zephyr,sim-eeprom`).
528 * Added initial support for Renesas RA8 Entropy driver (:dtcompatible:`renesas,ra-rsip-e51a-trng`)
529 * Added driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-trng`).
533 * Added a :c:func:`get_phy` function to the ethernet driver api, which returns the phy device
534 associated to a network interface.
546 * Added support for the ``zephyr,random-mac-address`` property.
565 * NXP ENET_QOS: Fixed check for ``zephyr,random-mac-address`` property.
574 * Driver can now be configured to use a preemptive RX thread priority, which could be useful
576 * Added support for DT-defined mdio.
586 … * Fixed generic phy_mii driver not using the value of the ``no-reset`` property from Devicetree.
592 * Fixed issue relating to strap-in override bits.
598 device tee when SFDP at run-time has been enabled (:github:`80383`)
608 * Fixed a Flash Simulator issue where offsets were assumed to be absolute instead of relative
612 * Added possibility to run STM32H7 flash driver from Cortex-M4 core.
614 …al support for Renesas RA8 Flash controller driver (:dtcompatible:`renesas,ra-flash-hp-controller`)
615 * Added driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-flash-controller`).
616 * Added support for W25Q512JV and W25Q512NW-IQ/IN to NXP's MCUX Flexspi driver
617 * Renamed the binding :dtcompatible:`nxp,iap-msf1` to :dtcompatible:`nxp,msf1` for accuracy
621 …* tle9104: Add support for the parallel output mode via setting the properties ``parallel-out12`` …
622 ``parallel-out34``.
624 * Converted the NXP wake-up drivers to native Zephyr code
628 * Introduced a haptics device driver subsystem selected with :kconfig:option:`CONFIG_HAPTICS`
630 …* Added a sample for the DRV2605 haptic driver to trigger ROM events (:zephyr:code-sample:`drv2605…
634 * Added initial support for Renesas RA8 I2C driver (:dtcompatible:`renesas,ra-iic`)
638 * Added ESP32-S3 and ESP32-C3 driver support.
642 * Added support for SETAASA optimization during initialization. Added a
643 ``supports-setaasa`` property to ``i3c-devices.yaml``.
644 * Added sending DEFTGTS if any devices that support functioning as a secondary
652 * Added shell commands for setting the I3C speed, sending HDR-DDR, raising IBIs,
662 * New feature: :dtcompatible:`zephyr,input-double-tap`.
666 * Added power management support to all keyboard matrix drivers, added a
667 ``no-disconnect`` property to :dtcompatible:`gpio-keys` so it can be used
671 * Added a new framework for touchscreen common properties and features
684 * Implemented a function to set pending interrupts for Arm GIC
685 …* Added a safe configuration option so multiple OS'es can share the same GIC and avoid reconfiguri…
690 * lp5562: added ``enable-gpios`` property to describe the EN/VCC GPIO of the lp5562.
692 * lp5569: added ``charge-pump-mode`` property to configure the charge pump of the lp5569.
694 * lp5569: added ``enable-gpios`` property to describe the EN/PWM GPIO of the lp5569.
704 * Added driver support for ESP32 and ESP32-S3 SoCs.
722 * Added support for the U-Blox LARA-R6 modem.
725 * MIPI-DBI
727 * Added bitbang MIPI-DBI driver, supporting 8080 and 6800 mode
728 (:dtcompatible:`zephyr,mipi-dbi-bitbang`).
729 * Added support for STM32 FMC memory controller (:dtcompatible:`st,stm32-fmc-mipi-dbi`).
733 * MIPI-CSI
740 * Added SCMI-based driver for NXP i.MX
749 * Added initial support for Renesas RA8 PWM driver (:dtcompatible:`renesas,ra8-pwm`)
750 * Added driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-pwm`).
751 …* Fixed a build issue of the NXP TPM driver for variants without the capability to combine channels
767 * Improved NXP's SAI driver to use a default clock if none is provided in the DT
768 * Fixed a bug in the NXP SAI driver that caused a crash on a FIFO under- and overrun
769 * Fixed a bug that reset the NXP ESAI during initialization (unnecessary)
774 * Added ESP32-S3 driver support.
784 :dtcompatible:`jedec,jc-42.4-temp` compatible string instead to the ``microchip,mcp9808``
832 * Added Würth Elektronik HIDS-2525020210002
833 :dtcompatible:`we,wsen-hids-2525020210002` humidity sensor driver.
847 * Added initial support for Renesas RA8 SPI driver (:dtcompatible:`renesas,ra8-spi-b`)
849 * Silabs: Added support for EUSART (:dtcompatible:`silabs,gecko-spi-eusart`)
858 * Added support for gpio-stepper-controller (:dtcompatible:`zephyr,gpio-steppers`)
859 * Added stepper api test-suite
860 * Added stepper shell test-suite
864 * Silabs: Added support for Sleeptimer (:dtcompatible:`silabs,gecko-stimer`)
878 …* Introduced API for :ref:`multi-heap<memory_management_shared_multi_heap>` video buffer allocatio…
880 …* Introduced bindings for common video link properties in ``video-interfaces.yaml``. Migration to …
883 * Added a sample for capturing video and displaying it with LVGL
884 (:zephyr:code-sample:`video-capture-to-lvgl`)
887 * Added support for ESP32-S3 LCD-CAM interface (:dtcompatible:`espressif,esp32-lcd-cam`)
894 * Added an NXP's smartdma based video driver (:dtcompatible:`nxp,video-smartdma`)
900 * Added 1-Wire master driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-w1`)
904 * Added driver for Analog Devices MAX32 SoC series (:dtcompatible:`adi,max32-watchdog`).
907 * Wi-Fi
909 * Add Wi-Fi Easy Connect (DPP) support.
910 * Add support for Wi-Fi credentials library.
912 * Add Wi-Fi snippet support for networking samples.
913 * Add build testing for various Wi-Fi config combinations.
914 * Add regulatory domain support to Wi-Fi shell.
915 * Add WPS support to Wi-Fi shell.
916 * Add 802.11r connect command usage in Wi-Fi shell.
918 * Allow user to reset Wi-Fi statistics in Wi-Fi shell.
919 * Display RTS threshold in Wi-Fi shell.
922 * Fix memory leak in hostap when doing a disconnect.
923 * Fix setting of frequency band both in AP and STA mode in Wi-Fi shell.
924 * Fix correct channel scan range in Wi-Fi 6GHz.
925 * Fix scan results printing in Wi-Fi shell.
926 * Increase main and shell stack sizes for Wi-Fi shell sample.
927 * Increase the maximum count of connected STA to 8 in Wi-Fi shell.
928 * Relocate AP and STA Wi-Fi sample to samples/net/wifi directory.
929 * Run Wi-Fi tests together with network tests.
930 * Updated ESP32 Wi-Fi driver to reflect actual negotiated PHY mode.
931 * Add ESP32-C2 Wi-Fi support.
934 * Added nRF70 Wi-Fi driver.
943 * Fixed a bug where LL address endianness was swapped twice when deciphering a frame.
958 * Added a new sample demonstrating downloading a resource with GET request.
962 * Fixed a bug where CoAP block numbers were limited to ``uint8_t``.
977 * Fixed a bug where system workqueue could be blocked indefinitely by DHCPv4 client.
981 * Fixed a bug where system workqueue could be blocked indefinitely by DHCPv6 client.
989 * Fixed error being reported for mDNS queries with query count equal to 0.
1012 * Fixed possible busy-looping in case of errors in the HTTP server sample.
1029 * Added a public header for Multicast Listener Discovery APIs.
1036 * Added onlink and forwarding check to IPv6-prepare
1042 resources will now need to provide a read buffer.
1046 * Added support for accepting SenML-CBOR floats decoded as integers.
1049 * Regenerated generated code files using zcbor 0.9.0 for lwm2m_senml_cbor.
1058 resources will now need to provide a read buffer.
1063 * Fixed a bug where DISCONNECTED event was not always emitted when needed.
1068 * Added a new library implementing Prometheus monitoring support.
1072 postfix in non-hexadecimal format.
1092 * Updated MQTT tests to be self-contained, no longer requiring external broker.
1108 * Fixed missing mutex locks in a few net_if functions.
1112 * Fixed compiler warnings when building with ``-Wtype-limits``.
1160 * Fixed possible busy-looping when polling TLS socket for POLLOUT event.
1173 * Wi-Fi:
1175 * Add a 80211R fast BSS transition argument usage to the wifi shell's connect command.
1178 …* Fixed the dormant state in the NXP WiFi driver to be set to off once a connection to an AP is ac…
1193 * Made USB device stack high-bandwidth aware
1199 * Added support for string-array and array type properties to be enums.
1209 * Renamed ``power-domain`` base property to ``power-domains``,
1210 and introduced ``power-domain-names`` property. ``#power-domain-cells`` is now required as well.
1221 * Added west runner for probe-rs, a Rust-based embedded toolkit.
1227 * Added on-demand memory mapping support (:kconfig:option:`CONFIG_DEMAND_MAPPING`).
1270 * Added initial ESP32-C6 power management interface to allow light and deep-sleep features.
1274 * Mbed TLS was updated to version 3.6.2 (from 3.6.0). The release notes can be found at:
1276 * https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-3.6.1
1277 * https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-3.6.2
1280 was added to allow ``psa_get_random()`` to make use of non-cryptographically
1311 * Added multiple shell command to configure the CPU mask affinity / pinning a thread in
1312 runtime, do ``kernel thread -h`` for more info.
1313 * ``kernel reboot`` shell command without any additional arguments will now do a cold reboot
1331 when a user wants to directly use file system libraries, bypassing the File System
1334 * FAT FS: Added :kconfig:option:`CONFIG_FS_FATFS_LBA64` to enable support for the 64-bit LBA
1340 * FAT FS: Added :kconfig:option:`CONFIG_FS_FATFS_HAS_RTC` that enables RTC usage for time-stamping
1348 the requested erase range and possibly allowed erasing any page on a device (:github:`79800`).
1350 * Shell: Fixed an issue were a failed file system mount attempt using the shell would make it
1353 …* :ref:`ZMS<zms_api>`: Introduction of a new storage system that is designed to work with all type…
1354 non-volatile storage technologies. It supports classical on-chip NOR flash as well as
1355 new technologies like RRAM and MRAM that do not require a separate erase operation at all.
1361 * Added support for a "user event" trace, with the purpose to allow driver or
1411 * Shared memory and mailbox-based transport
1418 * Updated nrfx to version 3.7.0.
1419 * Added OS agnostic parts of the nRF70 Wi-Fi driver.
1431 * Added STM32U0 Cube package (1.1.0)
1434 * Added STM32WB0 Cube package (1.0.0)
1446 * Updated the NXP S32ZE HAL drivers to version 2.0.0
1450 * Updated Series 2 to Simplicity SDK 2024.6, while Series 0/1 continue to use Gecko SDK 4.4.
1466 * Added sysbuild support to the hello-world sample.
1469 * Added check for unexpected flash sector size.
1481 * Added non-bootable flag to imgtool.
1495 * Fixed bootutil issue with not zeroing AES and SHA-256 contexts with mbedTLS.
1496 * Fixed boot_serial ``format`` and ``incompatible-pointer-types`` warnings.
1502 * Fixed issue with properly retrieving image headers after interrupted swap-scratch in bootutil.
1503 * The MCUboot version in this release is version ``2.1.0+0-dev``.
1510 Trusted Firmware-M (TF-M)
1513 * TF-M was updated to version 2.1.1 (from 2.1.0).
1514 …The release notes can be found at: https://trustedfirmware-m.readthedocs.io/en/tf-mv2.1.1/releases…
1526 to a specific boundary.
1532 * Updated the zcbor library to version 0.9.0.
1533 Full release notes at https://github.com/NordicSemiconductor/zcbor/blob/0.9.0/RELEASE_NOTES.md
1534 Migration guide at https://github.com/NordicSemiconductor/zcbor/blob/0.9.0/MIGRATION_GUIDE.md
1539 * You can now decide at run-time whether the decoder should enforce canonical encoding.
1541 * Allow --file-header to accept a path to a file with header contents
1548 native_posix as a platform remains tested though.
1549 * Extended the tests of counter_basic_api with a testcase for counters without alarms
1551 * Extended net/vlan to add IPv6 prefix config to each vlan-iface
1552 * Enhanced the camera fixture test by adding a color bar to enable automation
1553 * Added a number crunching (maths such as FFT, echo cancellation) sample using an optimized
1558 * Added :zephyr:code-sample:`smf_calculator` sample demonstrating the usage of the State Machine fr…
1559 in combination with LVGL to create a simple calculator application.
1560 * Consolidated display sample where possible to use a single testcase for all shields
1568 - :github:`71042` stream_flash: stream_flash_init() size parameter allows to ignore partition layout
1569 - :github:`67407` stream_flash: stream_flash_erase_page allows to accidentally erase stream
1570 - :github:`80875` stepper_api: incorrect c-prototype stepper.h and absence of NULL check stepper_sh…