Skip to content

Releases: zephyrproject-rtos/zephyr

Zephyr v2.7.2-rc1

15 Apr 11:24
v2.7.2-rc1
Compare
Choose a tag to compare
Zephyr v2.7.2-rc1 Pre-release
Pre-release

Changes since zephyr-v2.7.1:

Alexander Mihajlovic (2):
      drivers: adc: stm32: Add function to enable ADC consistently
      drivers: adc: stm32: Clear ADRDY before waiting

Alexandre Bourdiol (2):
      boards: arm: stm32h7: select direct SMPS for both disco boards
      boards: arm: stm32l562e_dk and nucleo_l552ze_q add openocd support

Andrea Campanella (1):
      drivers: serial: stm32: Add Line Break Detection

Andrei Emeltchenko (2):
      net: tcp: Remove redundant TCP option definitions
      net: tcp: Remove unneeded declaration

Andrzej Głąbek (1):
      drivers: spi_nrfx_spi: Fix compilation error

Binu Jacob (1):
      libc: newlibc: Fix recursive gettimeofday() calls on non-Posix systems

Carlo Caione (2):
      kernel: Reset the switch_handler only in the arch code
      gen_relocate_app: Create files from scratch, do not append

Chen Peng1 (1):
      cmake: save eh_frame section in output with CONFIG_EXCEPTIONS.

Chris Reed (1):
      arm: cortex-m: initialise ptr_esf in get_esf() in fault.c.

Christopher Friedt (3):
      doc: spinlock: ensure spinlock api is added to doxygen
      pthread: cond: fix pthread_cond_wait always returning ETIMEDOUT
      tests: pthread: cond: check return from pthread_cond_wait()

Daniel Nejezchleb (4):
      net: tcp: Fixed forever loop in tcp_resend_data
      net: tcp: Fix possible deadlock in tcp_conn_unref()
      lib/os: fdtable: add locking to posix api
      net: sockets: Fixes net_pkt leak in accept

Dominik Ermel (2):
      mgmt/mcumgr: Correct packet length information
      mgmt/mcumgr: Fix serial packet length not including CRC16

Emil Lindqvist (1):
      logging: fix timestamp func overwrite on log2

Erwan Gouriou (4):
      include/drivers/clock_control: stm32h7: Add missing symbol PLL SRC CSI
      boards: h747/h745: Update dual core flash and debug instructions
      scripts/pylib/twister: Add sn option to stm32cubeprogrgammer runner
      boards: nucleo_wb55rg: Add stm32cubeprogrammer runner

Evgeniy Paltsev (1):
      ARC: nSIM: fix missing core numbers for mdb-hw runner args

Fabio Baltieri (1):
      boards: nucleo_h745zi_q: enable POWER_SUPPLY_DIRECT_SMPS

Flavio Ceolin (2):
      pm: Remove unused fields in pm_device
      test: pm: device: Fix build options

Francois Ramu (3):
      drivers: adc: driver setting the resolution for stm32wl
      drivers: adc: driver setting the oversampling for stm32wl
      dts: arm: stm32l0 LSI clock freq is 37kHz

Gennady Kovalev (1):
      drivers: clock_control: More power supply modes for STM32H7

Georgij Cernysiov (1):
      include: drivers: clock_control: stm32: fix xtpre

Gerard Marull-Paretas (7):
      doc: extensions: doxyrunner: add doxyrunner_outdir_var option
      doc: extensions: doxyrunner: do not modify extension config
      doc: conf: specify which variable is used for output directory
      ci: make git credentials non-persistent
      ci: split Bluetooth workflow
      doc: update requirements
      doc: css: update code documentation directives style

Gerson Fernando Budke (1):
      riscv: linker.ld: Fix undefined reference linker error

Guillaume Lager (2):
      driver: modem: Fix mux device name comparison
      drivers: console: gsm_mux: fix length indicator

Henrik Brix Andersen (1):
      drivers: can: change can_tx_callback_t function signature

Jamie McCrae (3):
      samples: subsys: mgmt: smp_svr: Fix dupicate fs mgmt registration
      boards: bl654_usb: Fix non-mcuboot builds not limiting size
      doc: Add link to J-Link virtual MSD disable for SMP

Jaxson Han (4):
      arm64: Fix booting issue with FVP V8R >= 11.16.16
      cmake: armfvp: Add FVP min version check
      board: arm64: fvp_baser_aemv8r: Update the version requirement
      board: arm64: fvp_baser_aemv8r_smp: Increase CONFIG_MAX_THREAD_BYTES

Jeremy Wood (1):
      drivers: can: m_can: fix reconfiguring bitrate

Johann Fischer (4):
      include: usb: add alignment attribute to macro USBD_CFG_DATA_DEFINE
      drivers: ssd16xx: fix driver initialization
      bluetooth: hci_raw: avoid possible memory overflow in bt_buf_get_tx()
      usb: bluetooth: check buffer tailroom before copying

Jordan Yates (5):
      lora: sx126x: don't re-enable interrupt in sleep
      doc: generate Doxygen tag file
      doc: guides: index: document Doxygen linking
      spi: nrfx_spi*: only run uninit if configured
      wifi: esp_at: claim net_context in rx

Jukka Rissanen (1):
      net: tcp2: Send our MSS to peer

Julien D'ascenzio (3):
      uart_stm32: Fix conflit between poll_out and irq API
      drivers/uart: stm32: fix dead lock on poll_out
      drivers/uart: stm32: don't call k_yield on poll_out

Keith Packard (1):
      arm: Use correct macro for z_interrupt_stacks declaration in stack.h

Krzysztof Chruscinski (11):
      logging: Fix tracking of active messages
      logging: Fix tracking of buffered messages
      lib: os: printk: Minor refactoring
      logging: printk: Fix LOG_PRINTK for v2
      logging: log_output: Fix immediate output for big endian
      tests: logging: log_core_additional: Add panic handler for test backend
      tests: logging: log_api: Add test for LOG_PRINTK
      logging: Improve algorithm for waking up the thread
      logging: Fix counting of buffered messages
      net: ip: route: Fix log_strdup misuse
      lib: os: mpsc_pbuf: Add const to mpsc_pbuf_free argument

Kweh Hock Leong (2):
      net: shell: Fix parser error on net ping command
      net: gptp: Fix type mismatch calculation error in gptp_mi

Manojkumar Subramaniam (3):
      soc: arm: st_stm32: add kconfig entry for STM32 SMPS
      drivers: clock_control: stm32h7: Add logic to handle SMPS config
      soc: arm: st_stm32: use SMPS power supply only if enabled

Marius Scholtz (1):
      modbus: serial: Fix incomplete transmission issue

Michael Schmidt (1):
      drivers: virt_ivshmem: Allow multiple instances of ivShMem devices.

Michel Haber (1):
      timing: use runtime cycles for cortex-m systick

NingX Zhao (1):
      poll: modify the function z_vrfy_k_poll

Patric Karlström (1):
      posix: Make clock_settime/gettime REALTIME thread-safe

Pete Dietl (1):
      drivers: adc: stm32: Disable ADC before calibration

Piotr Pryga (1):
      Bluetooth: controller: Add missing NULL assign to df_cfg in ll_adv_set

Rene Bredlau (1):
      modem: hl7800: use correct timeouts on KTCPSND to avoid internal deadlock

Robert Lubos (13):
      net: http_client: Set body_start pointer unconditionally
      net: sockets: getaddrinfo: Fix possible crash when callback is delayed
      net: sockets: Simplify common getsockname() implementation
      net: route: Fix struct net_route_nexthop leak
      net: route: Verify if neighbor entry is in use when iterating
      net: sockets: Use struct timeval provided by libc
      net: sockets: Report ZSOCK_POLLHUP when socket is in EOF state
      net: sockets: tls: Fix ZSOCK_POLLHUP detection
      net: arp: Fix ARP retransmission source address selection
      net: mqtt: Fix SOCKS5 setsockopt error handling
      net: sockets: Retry net_context_sendmsg if EAGAIN is reported
      net: sockets: Fix userspace accept() verification
      net: tcp: Verify accept callback before use

Ryan McClelland (1):
      cmake: fix multiple shield parsing

Sylvio Alves (1):
      soc: esp32: use PYTHON_EXECUTABLE from build system

Szymon Janc (9):
      Bluetooth: L2CAP: Fix checking if LTK is present
      tests/bluetooth/tester: Add support for rejecting connection parameters
      tests/bluetooth/tester: Fix possible buffer overflow
      tests/bluetooth/tester: Add support for multiple GATT subscriptions
      test/bluetooth/tester: Don't clear auth requirements on L2CAP server
      tests/bluetooth/tester: Allocate L2CAP channel only when needed
      Bluetooth: Host: Validate security on GATT subscription
      tests/bluetooth/tester: Enable security validation for GATT subsciption
      tests/bluetooth/tester: Add support for auto connection establishment

Thomas Stranger (6):
      drivers: flash: stm32: mv security-mode dependent defines to header
      flash: stm32: fix g0 error flags and move ifdef-ery to header
      drivers: flash: stm32: wait for CFGBSY & BSY2 in wait_flash_idle
      drivers: flash: stm32g0: preparation for dual bank handling
      drivers: flash: stm32g0: dual bank handling
      tests: drivers: flash: change integration_platforms

Tomasz Bursztyka (12):
      net/icmpv4: Fix logging messagse
      net/icmpv4: Do not send error on a packet that was broadcasted
      arch/x86: Have a dedicated place for CPUID related functions
      arch/x86: Add a CPUID function to get initial APIC ID
      arch/x86: Fix MSI MAP destination
      net/tcp: Stop TCP state machine breaking when sending locally
      net/context: Close TCP connection properly
      tests/net: TLS test requires more RX PKT and buffers
      tests/net: Switch k_msleep to k_yield for tcp packet scheduling
      tests/net: Put the context down and not only the tcp part in tcp2 test
      test/net: Make sure the tls server socket is accepting before connect
      net/tcp: Use highest priority for TCP internal work queue

Vinayak Kariappa Chettimada (1):
      Bluetooth: Controller: Fix Periodic Adv EVENT_OVERHEAD_START_US jitter

Yong Cong Sin (5):
      drivers: watchdog: STM32G0X: clock DBGMCU before configuring
      net: mgmt: Use mutex for net_mgmt_lock
      kernel: workq: Fix type errors in delayable work handlers
      driver: serial: uart_stm32: Calculate suitable PRESCALER value
      subsys/mgmt/hawkbit: update http response handling

Zephyr v3.0.0

21 Feb 23:17
zephyr-v3.0.0
Compare
Choose a tag to compare

We are pleased to announce the release of Zephyr RTOS version 3.0.0.

The following sections provide detailed lists of changes by component.

Security Vulnerabilities

The following CVEs are addressed by this release:

More detailed information can be found in:
https://docs.zephyrproject.org/latest/security/vulnerabilities.html

Known issues

You can check all currently known issues by listing them using the GitHub
interface and listing all issues with the bug label.

API Changes

Changes in this release

  • Following functions in UART Asynchronous API are using microseconds to represent
    timeout instead of milliseconds:

    • uart_tx
    • art_rx_enable
  • Replaced custom LwM2M float32_value type with a native double type.

  • Added function for getting status of USB device remote wakeup feature.

  • Added ranges and dma-ranges as invalid property to be used with DT_PROP_LEN()
    along reg and interrupts.

  • The existing crc16 and crc16_ansi functions have been
    modified. The former has a new signature. The latter now properly calculates the
    CRC-16-ANSI checksum. A new function, crc16_reflect, has been
    introduced to calculated reflected CRCs.

  • GATT callbacks bt_gatt_..._func_t would previously be called with argument
    conn = NULL in the event of a disconnect. This was not documented as part
    of the API. This behavior is changed so the conn argument is provided as
    normal when a disconnect occurs.

Removed APIs in this release

  • The following Kconfig options related to radio front-end modules (FEMs) were
    removed:

    • CONFIG_BT_CTLR_GPIO_PA
    • CONFIG_BT_CTLR_GPIO_PA_PIN
    • CONFIG_BT_CTLR_GPIO_PA_POL_INV
    • CONFIG_BT_CTLR_GPIO_PA_OFFSET
    • CONFIG_BT_CTLR_GPIO_LNA
    • CONFIG_BT_CTLR_GPIO_LNA_PIN
    • CONFIG_BT_CTLR_GPIO_LNA_POL_INV
    • CONFIG_BT_CTLR_GPIO_LNA_OFFSET
    • CONFIG_BT_CTLR_FEM_NRF21540
    • CONFIG_BT_CTLR_GPIO_PDN_PIN
    • CONFIG_BT_CTLR_GPIO_PDN_POL_INV
    • CONFIG_BT_CTLR_GPIO_CSN_PIN
    • CONFIG_BT_CTLR_GPIO_CSN_POL_INV
    • CONFIG_BT_CTLR_GPIO_PDN_CSN_OFFSET

    This FEM configuration is hardware description, and was therefore moved to
    :ref:devicetree <dt-guide>. See the :dtcompatible:nordic,nrf-radio
    devicetree binding's fem property for information on what to do instead
    on the Nordic open source controller.

  • Removed Kconfig option CONFIG_USB_UART_CONSOLE.
    Option CONFIG_USB_UART_CONSOLE was only relevant for console driver
    when CDC ACM UART is used as backend. Since the behavior of the CDC ACM UART
    is changed so that it more closely mimics the real UART controller,
    option is no longer necessary.

  • Removed Kconfig option CONFIG_OPENOCD_SUPPORT in favor of
    CONFIG_DEBUG_THREAD_INFO.

  • Removed flash_write_protection_set() along with the flash write protection
    implementation handler.

  • Removed CAN_BUS_UNKNOWN and changed the signature of
    :c:func:can_get_state to return an error code instead.

  • Removed DT_CHOSEN_ZEPHYR_CANBUS_LABEL in favor of utilizing
    :c:macro:DEVICE_DT_GET.

  • Removed CONFIG_LOG_MINIMAL. Use CONFIG_LOG_MODE_MINIMAL instead.

Deprecated in this release

  • Removed <power/reboot.h> and <power/power.h> deprecated headers.
    <sys/reboot.h> and <pm/pm.h> should be used instead.
  • :c:macro:USBD_CFG_DATA_DEFINE is deprecated in favor of utilizing
    :c:macro:USBD_DEFINE_CFG_DATA
  • :c:macro:SYS_DEVICE_DEFINE is deprecated in favor of utilizing
    :c:macro:SYS_INIT.
  • :c:func:device_usable_check is deprecated in favor of utilizing
    :c:func:device_is_ready.
  • Custom CAN return codes (:c:macro:CAN_TX_OK, :c:macro:CAN_TX_ERR,
    :c:macro:CAN_TX_ARB_LOST, :c:macro:CAN_TX_BUS_OFF,
    :c:macro:CAN_TX_UNKNOWN, :c:macro:CAN_TX_EINVAL,
    :c:macro:CAN_NO_FREE_FILTER, and :c:macro:CAN_TIMEOUT) are deprecated in
    favor of utilizing standard errno error codes.
  • :c:func:can_configure is deprecated in favor of utilizing
    :c:func:can_set_bitrate and :c:func:can_set_mode.
  • :c:func:can_attach_workq is deprecated in favor of utilizing
    :c:func:can_add_rx_filter_msgq and :c:func:k_work_poll_submit.
  • :c:func:can_attach_isr is is deprecated and replaced by
    :c:func:can_add_rx_filter.
  • :c:macro:CAN_DEFINE_MSGQ is deprecated and replaced by
    :c:macro:CAN_MSGQ_DEFINE.
  • :c:func:can_attach_msgq is deprecated and replaced by
    :c:func:can_add_rx_filter_msgq.
  • :c:func:can_detach is deprecated and replaced by
    :c:func:can_remove_rx_filter.
  • :c:func:can_register_state_change_isr is deprecated and replaced by
    :c:func:can_set_state_change_callback.
  • :c:func:can_write is deprecated in favor of utilizing :c:func:can_send.

New APIs in this release

  • Serial

    • Added new APIs to support datum wider than 8-bit.

      • :kconfig:CONFIG_UART_WIDE_DATA is added to enable this new APIs.

      • Following functions, mirroring similar functions for 8-bit datum,
        are added:

        • :c:func:uart_tx_u16 to send a given number of datum from buffer.

        • :c:func:uart_rx_enable_u16 to start receiving data.

        • :c:func:uart_rx_buf_rsp_u16 to set buffer for receiving data
          in response to UART_RX_BUF_REQUEST event.

        • :c:func:uart_poll_in_u16 to poll for input.

        • :c:func:uart_poll_out_u16 to output datum in polling mode.

        • :c:func:uart_fifo_fill_u16 to fill FIFO with data.

        • :c:func:uart_fifo_read_u16 to read data from FIFO.

  • Devicetree

    • Added new Devicetree helpers:

      • :c:macro:DT_INST_ENUM_IDX
      • :c:macro:DT_INST_ENUM_IDX_OR
      • :c:macro:DT_INST_PARENT
    • New :ref:devicetree-ranges-property APIs

    • Removed: DT_CHOSEN_ZEPHYR_CANBUS_LABEL; use
      DEVICE_DT_GET(DT_CHOSEN(zephyr_canbus)) to get the device instead, and
      read the name from the device structure if needed.

    • Removed deprecated macros:

      • DT_CLOCKS_LABEL_BY_IDX
      • DT_CLOCKS_LABEL
      • DT_INST_CLOCKS_LABEL_BY_IDX
      • DT_INST_CLOCKS_LABEL_BY_NAME
      • DT_INST_CLOCKS_LABEL
      • DT_PWMS_LABEL_BY_IDX
      • DT_PWMS_LABEL_BY_NAME
      • DT_PWMS_LABEL
      • DT_INST_PWMS_LABEL_BY_IDX
      • DT_INST_PWMS_LABEL_BY_NAME
      • DT_INST_PWMS_LABEL
      • DT_IO_CHANNELS_LABEL_BY_IDX
      • DT_IO_CHANNELS_LABEL_BY_NAME
      • DT_IO_CHANNELS_LABEL
      • DT_INST_IO_CHANNELS_LABEL_BY_IDX
      • DT_INST_IO_CHANNELS_LABEL_BY_NAME
      • DT_INST_IO_CHANNELS_LABEL
      • DT_DMAS_LABEL_BY_IDX
      • DT_INST_DMAS_LABEL_BY_IDX
      • DT_DMAS_LABEL_BY_NAME
      • DT_INST_DMAS_LABEL_BY_NAME
      • DT_ENUM_TOKEN
      • DT_ENUM_UPPER_TOKEN
  • CAN

    • Added :c:func:can_get_max_filters for retrieving the maximum number of RX
      filters support by a CAN controller device.

Kernel

  • Added support for event objects. Threads may wait on an event object such
    that any events posted to that event object may wake a waiting thread if the
    posting satisfies the waiting threads' event conditions.
  • Extended CPU runtime stats to track current, total, peak and average usage
    (as bounded by the scheduling of the idle thread). This permits a developer
    to obtain more system information if desired to tune the system.
  • Added "thread_usage" API for thread runtime cycle monitoring.
  • Fixed timeout issues when SYSTEM_CLOCK_SLOPPY_IDLE is configured.

Architectures

  • ARM

    • AARCH32

      • Converted inline assembler calls to using CMSIS provided functions for
        :c:func:arm_core_mpu_enable and :c:func:arm_core_mpu_disable.
      • Replaced Kconfig CONFIG_CPU_CORTEX_R with CONFIG_ARMV7_R to enable
        differentiation between v7 and v8 Cortex-R.
      • Updated the Cortex-R syscall behavior to match that of the Cortex-M.
    • AARCH64

      • Fixed out-of-bounds error when large number of IRQs are enabled and ignore
        special INTDs between 1020 and 1023
      • Added MPU code for ARMv8R
      • Various MMU fixes
      • Added nocache memory segment support
      • Added Xen hypercall interface for ARM64
      • Fixed race condition on SMP scheduling code.
  • Xtensa

    • Introduced a mechanism to automatically figure out which scratch registers
      are used for internal code, instead of hard-coding. This is to accommodate
      the configurability of the architecture where some registers may exist in
      one SoC but not on another one.

    • Added coredump support for Xtensa.

    • Added GDB stub support for Xtensa.

Bluetooth

  • Updated all experimental features in Bluetooth to use the new EXPERIMENTAL
    selectable Kconfig option

  • Bluetooth now uses logging v2 as with the rest of the tree

  • Audio

    • Implemented the Content Control ID module (CCID)
    • Added support for the Coordinated Set Identification Service (CSIS)
    • Added a Temporary Object Transfer ...
Read more

Zephyr v3.0.0-rc3

11 Feb 23:29
v3.0.0-rc3
Compare
Choose a tag to compare
Zephyr v3.0.0-rc3 Pre-release
Pre-release

Changes since v3.0.0-rc2:


Aleksander Wasaznik (1):
      Bluetooth: Host: L2CAP: Don't send credits if chan is disconnected

Anas Nashif (2):
      actions: west/devicetree: exclude python 3.6 on windows
      actions: twister: build/run module tests and samples

Andrzej Puzdrowski (1):
      manifest: update MCUboot

Bradley Bolen (1):
      arch: arm: core: aarch32: Fix Cortex-M userspace regression

Christopher Friedt (2):
      pthread: cond: fix pthread_cond_wait always returning ETIMEDOUT
      tests: pthread: cond: check return from pthread_cond_wait()

Dan Kalowsky (1):
      release: Zephyr v3.0.0-rc3

Daniel DeGrasse (3):
      samples: task_wdt: Increase min watchdog timeout
      samples: blinky_pwm: decreased min PWM period for blinky sample
      drivers: mcux_gpt_timer: Fix rounding error on tick boundary

Daniel Leung (1):
      soc: xtensa/sample_controller: add snippets to linker script

Daniel Nejezchleb (2):
      net: tcp: Fix possible deadlock in tcp_conn_unref()
      lib/os: fdtable: add locking to posix api

Enjia Mai (1):
      samples: fix the metairq_dispatch sample failed on acrn_ehl_crb

Flavio Ceolin (1):
      scripts: twister: Fix -W help message

Jim Benjamin Luther (1):
      Bluetooth: host: Save CCC data on pairing complete

Johann Fischer (3):
      modbus: do not loop in UART IRQ handler
      sample: modbus: mark MODBUS samples as build only
      tests: modbus: add test fixture

Jordan Yates (1):
      net: buf: remove gcc dependency

Marek Pieta (1):
      Revert "Bluetooth: host: Remove CCC update from GATT connected callback"

Marius Scholtz (1):
      modbus: serial: Fix incomplete transmission issue

Martí Bolívar (1):
      MAINTAINERS: mbolivar-nordic for Devicetree

Maureen Helm (2):
      Revert "logging: Prevent multiple arguments evaluation"
      Revert "tests: logging: log_api: Add test for argument evaluation"

Piotr Golyzniak (1):
      twister: add setting skip reason

Piotr Pryga (1):
      Bluetooth: Host: Fix wrong length of antenna identifiers for CTE RX

Sjors Hettinga (1):
      net: ppp: Properly terminate LCP state at modem side when closing down

Torsten Rasmussen (1):
      cmake: only write devicetree files when there are changes.

Vinayak Kariappa Chettimada (14):
      Bluetooth: Controller: Fix Periodic Sync lost implementation
      Bluetooth: Controller: Add assert to check IQ sample allocation
      Bluetooth: Controller: Add development assert to check auxiliary parent
      Bluetooth: Controller: Add development assert to check aux context
      Bluetooth: Controller: Add assert check to detect sync aux context leak
      Bluetooth: Controller: Remove minor redundant assignment
      Bluetooth: Controller: Periodic Sync Chain reception continuation
      Bluetooth: Controller: Auxiliary PDU reception continuation
      Bluetooth: Controller: Fix reset of is_aux_sched flag
      Bluetooth: Controller: Fix auxiliary context release on scan done
      Bluetooth: Controller: Fix missing auxiliary context done event
      Bluetooth: Controller: Fix missing aux release on abort of LLL sched
      Bluetooth: Controller: Fix scanner window close by using lll_disable
      Bluetooth: Controller: Fix to use non-discardable buffer

Xabier Marquiegui (8):
      samples: net: gptp: Enable deferred log mode
      net: gptp: gptp port role disabled on link down
      samples: net: gptp: add NXP RT series config support
      boards: mimxrt: enable pps output
      driver: eth_mcux: realtime optimizations
      driver: eth_mcux: gptp: enable pps output
      driver: eth_mcux: gptp: limit rate_adjust range
      net: gptp: convert clock sync ratio from float to double

Yuval Peress (3):
      tests: settings: Remove invalid config
      test: settings: functional: fix missing test_main
      tests: settings: Update test project structures

Zephyr v3.0.0-rc2

11 Feb 23:28
v3.0.0-rc2
Compare
Choose a tag to compare
Zephyr v3.0.0-rc2 Pre-release
Pre-release

Changes since v3.0.0-rc1:

Abe Kohandel (1):
bluetooth: ots: directory listing record length

Aleksander Wasaznik (4):
Bluetooth: Host: Handle req alloc failure in bt_gatt_unsubscribe
Bluetooth: Host: Detect deadlock in bt_att_req_alloc
Bluetooth: Host: Update API docs on GATT request failures
Bluetooth: ATT: Fix conn parameter to req cb in att_reset

Alexander Mihajlovic (2):
soc: stm32l0: Clear LPSDSR when exiting STOP mode
usb: Add macro for user defined string descriptors

Anas Nashif (4):
cmake: fix path in comment
ci: disable cbprintf tag filtering
tests: settings: provide correct test prototypes
tests: settings: provide correct test prototypes

Andrea Campanella (1):
drivers: serial: stm32: Add Line Break Detection

Andrei-Edward Popa (5):
boards: arm: rpi_pico: added zephyr shell
drivers: serial: rpi_pico: check if baudrate was set by the API function
drivers: serial: added UART interrupts for Raspberry Pi Pico board
boards: arm: rpi_pico: added UART interrupt driven config
drivers: serial: rpi_pico: replaced high level API functions

Andrey Borisovich (1):
soc: xtensa: Replaced /dev/null in scripts

Andries Kruithof (2):
Bluetooth: controller: llcp: update lll_scan_aux for new LLCP
Bluetooth: tests: edtt: fix buffer overflow error

Andrzej Głąbek (4):
drivers: flash: nrf_qspi_nor: Fix setting of the base clock divider
drivers: uart_nrfx_uarte: Fix RX auto disabling routine
tests: uart_async_api: Add multiple_rx_enable test case
drivers: spi_nrfx_spi: Fix compilation error

Andrzej Puzdrowski (6):
test/subsys/storage/stream_flash: fix build size issue
tests/subsys: CONFIG_TEST_FLASH_DRIVERS=y only for qemu_x86
drivers/flash/flash_ite_i8xxx2: remove write_protection handler
tests/subsys/fs/multi-fs: remove write_protection flash handler
drivers/flash: remove flash_write_protection API
release-note: Record on removal of the flash write protection API

Andy Ross (5):
soc/intel_adsp: DMA Stability fix for cavstool
soc/intel_adsp: Add cAVS IPC register interface
tests/kernel/interrupt: Don't wait so long just for a tick
test/kernel/mbox: Drop needless 1cpu from test cases
subsys/pm: C99-legalize declaration of CPU power states

Arnaud Mouiche (1):
c++: fix missing extern "C" closing }

Asbjørn Sæbø (2):
Bluetooth: Audio: Align time-outs in babblesim tests
Bluetooth: Audio: Fix timeout message in BabbleSim tests

Attie Grande (5):
drivers: adc: adc_sam0: Fix interpretation of channels
samples: drivers: adc: Revise handling of configurable inputs
samples: drivers: adc: Add a device tree overlay for atsamd21_xpro
soc: atmel_sam0: Implement fixup.h for ADC driver
drivers: adc: adc_sam0: Change local variables to lower case

Aymeric Aillet (2):
doc: release: 3.0: Add new R-Car platform drivers
doc: release: 3.0: Add new I2C switch support

Berend Ozceri (1):
mgmt: smp: Fix NULL pointer dereferences in UDP transport.

Bradley Bolen (3):
arch: arm: core: aarch32: Fix the syscall design for Cortex-R
arch: arm: core: aarch32: Change Cortex-R config check
arch: arm: core: aarch32: Use cmsis functions

Carles Cufi (7):
Bluetooth: host: Document skip range in bt_le_per_adv_sync_param
doc: guides: Building the documentation
include: sys: crc: Clarify documentation of two crc functions
tests: unit: crc: Add tests for common checksums
mgmt: mcumgr: Replace use of crc16 with crc16_itu_t
lib: os: crc: Rework the crc16() implementation
modbus: Get rid of custom CRC16 function

Carlo Caione (1):
syscon: Compile the generic driver only when selected

Chen Peng1 (1):
twister: ignore unencodable unicode of west flash command.

Christian Taedcke (1):
drivers: spi_gecko: fix duplicated variable declaration

Christopher Friedt (1):
doc: spinlock: ensure spinlock api is added to doxygen

Dan Kalowsky (1):
release: Zephyr 3.0.0-rc2

Daniel DeGrasse (8):
drivers: dma: mcux_lpc_dma: Fix data variable name
drivers: usb_dc_mcux: Move mcux callback handler out of ISR context
drivers: regulator: Remove non-const usage of config struct
drivers: regulator: pmic: remove unneeded NULL check
boards: teensy41: Enable DAT3 pull detection for USDHC
soc: rt10xx: Set divisor for sys pll (PLL2) PFD0
drivers: usdhc: Add log for DAT3 detection
boards: mimxrt1170_evk_cm7: Reduce DAT3 power toggle delay

Daniel Leung (19):
cmake: compiler/xcc: omit -g if needed for Clang
tests: condvar_api: fix empty loop error for XCC
xtensa: xcc: add a dummy atexit()
tests: semaphore: fix empty loop error for XCC
cpp: BUILD_ASSERT() uses static_assert() iff C++11
clock: Z_TIMEOUT_NO_WAIT initializer to {0}
kernel: C++ friendly version of Z_WORK_USER_INITIALIZER
doc: release: 3.0: make API changes sub-headers visible
doc: release: 3.0: add info for Xtensa
doc: release: 3.0: mention new UART API
cmake: compiler/xcc: override and clear debug property for clang
Revert "cmake: compiler/xcc: omit -g if needed for Clang"
cmake: force assembler ID to be GNU for GCC-based XCC
doc: toolchain: add a few words about XCC
samples: logging/syst: add more lines to show string processing
lib/os: cbprintf_packaged: add ability to use external formatter
logging: syst: fix logging v2 with strings as arguments
samples: logging/syst: expand to doing v1/v2 immediate/deferred
tests: k_heap_api: make alloc pending tests a bit more robust

Daniel Nejezchleb (3):
net: sockets: Fixes net_pkt leak in accept
net: tcp: Fixed forever loop in tcp_resend_data
net: tcp: Fix possible deadlock in tcp_conn_unref()

David Leach (4):
drivers: counter: mcux_ctimer: fix config used as non-const
samples: grove_display: Exclude ip_k66f from sample build
doc: release: Update 3.0 release notes with NXP changes
dts: rt11xx: Fix invalid SAI4 address

Dominik Ermel (4):
mgmg/mcumgr/lib: Image upload size no longer needs flash alignment
mgmt/mcumgr/lib: Return error on bad SMP header
mgmt/mcumgr/lib: Fix no check on message
mgmt/mcumgr/lib: Fix message_size not updated

Ederson de Souza (2):
kernel/init.c: Initialise logging subsystem after arch
Revert "tests/kernel/obj_tracking: Filter cAVS 2.5 builds to prevent DSP host hangs"

Efrain Calderon (2):
net: coap: Update coap context using payload length
test: net: coap: update tests

Emil Gydesen (11):
Bluetooth: Samples: Add controller Kconfig requirement for ISO samples
Bluetooth: Tests: Fix ctrl iso audio dependency
Bluetooth: Audio: Add BAP unicast server support
Bluetooth: Audio: Add BAP unicast client support
Bluetooth: Audio: Add BAP unicast audio BSIM tests
Bluetooth: Samples: Add unicast audio client and server samples
Bluetooth: Audio: Add BAP broadcast source support
Bluetooth: Audio: Add BAP broadcast sink support
Bluetooth: Audio: Add broadcast audio BSIM tests
Bluetooth: shell: Add LE Audio shell commands
Bluetooth: Audio: Add BT_WARN for missing stream callbacks

Enjia Mai (1):
boards: intel_adsp_cavs18: add test coverage

Erwan Gouriou (13):
samples/compression/l4z: Increase min_ram
samples: lora: Add harnesses for execution with twister
doc/release-notes: V3.0: STM32 add-on
tests/drivers: gpio_basic_api: Add overlay to test nucleo_wl55jc
boards: nucleo_wl55jc: Fix openocd configuration
west.yml: Use fixed STM32Cube STM32WL for exti
west.yml: Fix issue with stm32wb ble library
tests/lib: devicetree: Remove references to deprecated macros
include/devicetree: clocks.h: Remove deprecated macros
include/devicetree: pwms.h: Remove deprecated macros
include/devicetree: io-channels.h: Remove deprecated macros
include/devicetree: dma.h: Remove deprecated macros
include: devicetree.h: Remove deprecated macros

Flavio Ceolin (12):
github: Update github security page
pm: Fix multithread issue with force state
pm: Just check the forced flag
pm: Clear the forced flag in the error path
tests: pinctrl: Fix typo on test name
tests: spi_loopback: Make test name consistent
tests: accel: Make test name consistent
tests: sensor: generic: Make test name consistent
tests: Fix drivers tests tag
security: docs: Add CVE-2021-3835
security: docs: Add CVE-2021-3861
doc: releases: 3.0: Add security notes

Francois Ramu (3):
drivers: uart stm32 F4X, F1X, F2X have a sw sequence to clear error flags
drivers: flash: stm32 qspi flash driver valid read or write operations
tests: drivers: flash running on disco stm32 board with qspi

Georgij Cernysiov (1):
include: drivers: clock_control: stm32: fix xtpre

Gerard Marull-Paretas (17):
ci: run apt-get update before install
boards: xtensa: intel_s1000_crb: enable gpio0
tests: boards: intel_s1000_crb: fix k_sleep arguments
doc: getting_started: linux: reference to the 3rd party compilers page
doc: release-notes: add power management release notes
doc: release-notes: add deprecated device API macros/functions
doc: release-notes: add new Devicetree macros
doc: release-notes: add documentation highlights
doc: release-notes: add pin control
doc: release-notes: add GigaDevice changes
boards: cc1352r1_la...

Read more

Zephyr v3.0.0-rc1

25 Jan 16:29
v3.0.0-rc1
Compare
Choose a tag to compare
Zephyr v3.0.0-rc1 Pre-release
Pre-release

Please find the complete change log since v2.7.0 available for download here

Zephyr v2.7.1

15 Dec 18:54
zephyr-v2.7.1
Compare
Choose a tag to compare

Changes since zephyr-v2.7.0:

Alexandre Bourdiol (4):
      include: drivers: clock_control: stm32u5 missing MSIS define
      drivers: clock_control: stm32u5: rework MSIS as system clock source
      drivers: clock_control: stm32u5: keep reset values of MSI trimming
      drivers: clock_control: stm32u5: set voltage scaling VOS for MSIS

Anas Nashif (37):
      ci: add code coverage action
      actions: optimize clang actions
      action: configure git user
      actions: fix typo in clang action
      action: codecov: do not run on weekends
      actions: bluetooth: fix job names and description
      actions: bluetooth: rename action and make it obvious
      actions: compliance: minor improvements
      actions: conflict: update version
      actions: follow namespace for job names
      actions: run code coverage only on main tree
      actions: clang: do not rebase, use commit range
      actions: clang: fix typo
      actions: retry west update on various workflows
      actions: clang: use ccache
      actions: clang: set reporting before calling twister
      ci: hotfix: disable test exclusion by tags
      actions: run twister using github action
      actions: clang: add branch name to ccache key
      actions: twister: add a cancel job very early on
      actions: twister: adapt events to branch
      doc: replace buildkite with github actions
      actions: twister/clang: cleanup test plan generation
      actions: check of testplan exists
      actions: twister: remove cleanup job
      actions: twister: apply a new strategy from smaller test plans
      actions: twister: run tests on all platforms when changed
      actions: twister: load modules from cache
      actions: twister: upload testplan as an artifact
      actions: twister: do not schedule on non main branches
      actions: twister: limit daily job to 60 builders
      ci: test_plan: fix pylint warnings
      actions: fix filtering for clang action
      actions: twister: determine nodes in python script
      actions: twister: remove existing ccache directory
      scripts: gen_app_partitions: do not load empty files
      tests: m2gl025_miv: exclude slow platform from some tests

Andrzej Głąbek (4):
      samples: hci_spi: Decrease maximum number of BT connections
      drivers: spi_context: Do not use transfer timeout in slave mode
      drivers: spi_context: Fix handling of zero-length buffers
      drivers: spi_context: Correct alignment of LOG_DBG() parameters

Andy Ross (1):
      kernel/sched: Fix race with thread return values

Christopher Friedt (5):
      libc: minimal: add qsort to the minimal libc
      tests: libc: minimal: Add tests for qsort()
      release: v2.7.1 release notes
      release: additional entries in release notes
      release: Bump release to 2.7.1

Daniel DeGrasse (2):
      soc: rt6xx: Default flexspi logging to disabled
      drivers: mcux_flexspi: Default logging to disabled when XIP is used

Daniel Leung (1):
      toolchain: xcc: add macro __in_section_unique_named()

Daniel N. Hansten (1):
      drivers: led: pca9633: add support for multiple devices

Dominik Ermel (1):
      west.yml: Update mcumgr to backport fix for issue #38502

Enjia Mai (1):
      tests: subsys: libcxx: extend the timeout for cpp.libcxx.newlib_nano

Evgeniy Paltsev (4):
      ARC: forbid FIRQ or multiple register banks w/ 1 IRQ priority level
      tests: fix tracing.osawareness.openocd for SMP platforms
      tests: fix tracing.osawareness.openocd when thread names disabled
      tests: tracing.osawareness.openocd cleanup

Francois Ramu (2):
      drivers: clock control disable AHB3 clock in stm32_clock_control_off
      drivers: uart stm32 flushing Rx register once the RXNE irq is enabled

Gerard Marull-Paretas (1):
      sensor: qdec_nrfx: fix PM callback signature

Henrik Brix Andersen (5):
      runners: canopen: poll for flash ready
      drivers: can: flexcan: fix timing parameter limits
      drivers: pwm: mcux: ftm: return -EBUSY if PWM capture in progress
      boards: arm: waveshare_open103z: disable CAN bus tests
      drivers: can: fix can_configure() when CAN-FD is enabled

Ilhan Ates (1):
      Bluetooth: tester: Add directed adv support

Ilya Makarov (1):
      Bluetooth: host: Fix MIC generation in Bluetooth CCM encryption

Jacob Siverskog (2):
      bluetooth: host: reset channel request on send failure
      bluetooth: host: avoid freeing structure that's part of a linked list

Jakub Rzeszutko (1):
      shell: fix assert in panic mode

Jamie McCrae (2):
      boards: arm: bl5340_dvk: Fix broken image
      boards: arm: bt610: Rename from bt6x0

Johan Lundin (1):
      Bluetooth: Host: Set SID in bt_le_per_adv_sync_recv_info

Johann Fischer (3):
      usb: function_rndis: align rndis_cmd_pool to request buffer size
      usb: function_rndis: do not force USB_COMPOSITE_DEVICE for IAD
      drivers: ieee802154_dw1000: use dedicated workqueue

Julien D'ascenzio (1):
      drivers/uart: stm32: fix a bug during transmission

Krzysztof Chruscinski (2):
      logging: Cleaning references to tracing in logging
      kernel: timer: Call user handler without spinlock

Krzysztof Kopyściński (1):
      bluetooth: tester: allow to set DisplayYesNo IO capability

Lingao Meng (2):
      Bluetooth: Mesh: Fix missing enable adv thread
      [backport v2.7-branch] bluetooth: mesh: Fix incorrect return value

Lucas Dietrich (1):
      drivers: can: Fixed timeout values comparison

Manivannan Sadhasivam (1):
      modules: loramac-node: Fix the build issue for US915 and AU915 regions

Marcin Niestroj (1):
      samples: sockets: http_get: increase main thread stack size

Marek Pieta (1):
      bluetooth: att: Fix indication handling

Martin Jäger (2):
      task_wdt: ensure hw wdt is started before being fed
      task_wdt: fix overflow in current_ticks making wdt get stuck

Maureen Helm (2):
      drivers: serial: Refactor drivers to use shared init priority Kconfig
      soc: arm: Configure serial driver init priority for NXP SoCs

Pieter De Gendt (1):
      net: openthread: Fix alarm timers reference calculation

Piotr Pryga (4):
      BLuetooth: controller: hci: fix wrong sync handle in IQ samples report
      Bluetooth: controller: ULL: fix dequeue of IQ samples reports
      Bluetooth: host: Add handling of failures in per sync established evt
      Bluetooth: controller: enable missing RSSI while periodic adv sync

Rafał Kuźnia (1):
      drivers: ieee802154: nrf5: fix NULL pointer dereference

Robert Lubos (4):
      samples: net: http_get: Update root CA certificate
      net: sockets: tls: Fix TCP disconnect detection in poll()
      net: lwm2m: Fix removed engine_observer_list usage
      tests: net: all: Add LwM2M to build all test

Ryan Erickson (1):
      modem: hl7800: fix IPv6 socket creation

Stephanos Ioannidis (2):
      riscv: Fix C++ exception handling info linking
      tests: cpp: libcxx: Set minimum RAM requirement for full newlib test

Sylvio Alves (1):
      samples: shell_module: fix missing qsort reference

Szymon Janc (14):
      tests: bluetooth: tester: Fix NULL pointer dereference in error path
      bluetooth: Fix L2CAP CoC response code if LTK is present
      tests: bluetooth: tester: Fix not marking chan as unused on disconnect
      tests: bluetooth: tester: Add support for L2CAP channels options
      bluetooth: host: Add support for SMP error code 0x0f
      tests: bluetooth: tester: Add support for pairing failed event
      tests: bluetooth: tester: Increase ATT prepare write buffers count
      tests: bluetooth: tester: Add support for security_changed callback
      tests: bluetooth: tester: Adjust Directed Advertising to latest BTP
      tests: bluetooth: tester: Add support for advertising with target RPA
      Bluetooth: Disconnect L2CAP channel if peer sent too much data
      bluetooth: ATT: Ignore signed writes on EATT bearer
      tests: bluetooth: tester: Fix memory corruption in reconfigured_cb
      test/bluetooth/tester: Re-pair on lost bond

Timo Teräs (1):
      drivers: uart_ns16550: Fix dts hw_flow_control mapping to config

Torsten Rasmussen (3):
      cmake: CMake compile features support
      scripts: support compile_commands.json in gen_app_partitions.py
      twister: remove CMAKE_EXPORT_COMPILE_COMMANDS=1

Vinayak Kariappa Chettimada (2):
      Bluetooth: Controller: Fix missing DTM Tx/Rx reset on HCI Reset Command
      Bluetooth: Controller: Fix DTM HCI command returned error codes

Zephyr v1.14.3

16 Nov 13:10
v1.14.3
Compare
Choose a tag to compare

This is an LTS maintenance release with fixes.

Security Vulnerability Related

The following security vulnerabilities (CVEs) were addressed in this
release:

  • CVE-2020-10066
  • CVE-2020-10069
  • CVE-2020-13601
  • CVE-2020-13602

More detailed information can be found in:
https://docs.zephyrproject.org/latest/security/vulnerabilities.html

Issues Fixed

These GitHub issues were addressed since the previous 1.14.0 tagged
release:

  • #18334 - DNS resolution is broken for some addresses in master/2.0-pre
  • #19917 - Bluetooth: Controller: Missing LL_ENC_RSP after HCI LTK Negative Reply
  • #21107 - LL_ASSERT and 'Imprecise data bus error' in LL Controller
  • #21257 - tests/net/net_pkt failed on mimxrt1050_evk board.
  • #21299 - bluetooth: Controller does not release buffer on central side after peripheral reset
  • #21601 - '!radio_is_ready()' failed
  • #21756 - tests/kernel/obj_tracing failed on mec15xxevb_assy6853 board.
  • #22968 - Bluetooth: controller: LEGACY: ASSERTION failure on invalid packet sequence
  • #23069 - Bluetooth: controller: Assert in data length update procedure
  • #23109 - LL.TS Test LL/CON/SLA/BV-129-C fails (split)
  • #23805 - Bluetooth: controller: Switching to non conn adv fails for Mesh LPN
  • #24601 - Bluetooth: Mesh: Config Client's net_key_status pulls two key indexes, should pull one.
  • #25518 - settings_fcb: Fix storing the data
  • #25519 - wrong debug function cause kinds of building error
  • #26080 - gPTP time sync fails if having more than one port
  • #28151 - gPTP should allow user setting of priority1 and priority2 fields used in BMCA
  • #28177 - gPTP gptp_priority_vector struct field ordering is wrong
  • #29386 - unexpected behavior when doing syscall with 7 or more arguments
  • #29858 - Bluetooth: Mesh: RPL cleared on LPN disconnect
  • #32430 - Bluetooth: thread crashes when configuring a non 0 Slave Latency
  • #32898 - Bluetooth: controller: Control PDU buffer leak into Data PDU buffer pool
  • #18598 - tests/net/trickle failed on multiple platforms
  • #22751 - STM32F407 I2C driver hangs
  • #24300 - tests/net/trickle failed on frdm_k64f and sam_e70_xplained with v1.14 branch.
  • #24750 - need API to get list of succeed initialization device or add initialization status flag in struct device
  • #24970 - ieee802154 l2: no length check in frame validation
  • #25314 - Bluetooth: controller: legacy: Backport conformance test related changes
  • #25350 - Bluetooth: controller: Data transmission delayed by slave latency
  • #26499 - usermode: random: backport random syscall
  • #26595 - tests/kernel/obj_tracing thread counting issue with 1.14 branch.
  • #27771 - iotdk: cpu_stats function doesn't work as expected
  • #35983 - Bluetooth: controller: Check length field of scan response data

Zephyr v2.7.0

17 Oct 02:10
zephyr-v2.7.0
Compare
Choose a tag to compare

We are pleased to announce the release of Zephyr RTOS version 2.7.0 (LTS2).

Major enhancements since v2.6.0 include:

  • Bluetooth Audio, Direction Finding, and Mesh improvements
  • Support for Bluetooth Advertisement PDU Chaining
  • Added support for armclang / armlinker toolchain
  • Added support for MWDT C / C++ toolchain
  • Update to CMSIS v5.8.0 (Core v5.5.0, DSP v1.9.0)
  • Support for M-Profile Vector Extensions (MVE) on ARMv8.1-M
  • Improved thread safety for Newlib and C++ on SMP-capable systems
  • IEEE 802.15.4 Software Address Filtering
  • New Action-based Power Management API
  • USB Device Framework now includes all Chapter 9 defines and structures
  • Generic System Controller (syscon) driver and emulator
  • Linker Support for Tightly-Coupled Memory in RISC-V
  • Additional Blocking API calls for LoRa
  • Support for extended PCI / PCIe capabilities, improved MIS-X support
  • Added Support for Service Type Enumeration (STE) with mDNS / DNS Service Discovery
  • Added Zephyr Thread Awareness for OpenOCD to West
  • EEPROM now can be emulated in flash
  • Added both Ethernet MDIO and Ethernet generic PHY drivers

Additional Major enhancements since v1.14.0 (LTS1) include:

  • The kernel now supports both 32- and 64-bit architectures
  • We added support for SOCKS5 proxy
  • Introduced support for 6LoCAN, a 6Lo adaption layer for Controller Area Networks
  • We added support for Point-to-Point Protocol (PPP)
  • We added support for UpdateHub, an end-to-end solution for over-the-air device updates
  • We added support for ARM Cortex-R Architecture
  • Normalized APIs across all architectures
  • Expanded support for ARMv6-M architecture
  • Added support for numerous new boards and shields
  • Added numerous new drivers and sensors
  • Added BLE support on Vega platform
  • Memory size improvements to Bluetooth host stack
  • We added initial support for 64-bit ARMv8-A architecture
  • CANopen protocol support through 3rd party CANopenNode stack
  • LoRa support was added along with the SX1276 LoRa modem driver
  • A new Zephyr CMake package has been introduced
  • A new Devicetree API which provides access to virtually all DT nodes and properties
  • The kernel timeout API has been overhauled
  • A new k_heap/sys_heap allocator, with improved performance
  • Zephyr now integrates with the TF-M (Trusted Firmware M) PSA-compliant framework
  • The Bluetooth Low Energy Host now supports LE Advertising Extensions
  • The CMSIS-DSP library is now included and integrated
  • Introduced initial support for virtual memory management
  • Added Bluetooth host support for periodic advertisement and isochronous channels.
  • Added a new TCP stack which improves network protocol testability
  • Introduced a new toolchain abstraction with initial support for GCC and LLVM/Clang
  • Moved to using C99 integer types and deprecate Zephyr integer types
  • Introduced support for the SPARC architecture and the LEON implementation
  • Added Thread Local Storage (TLS) support
  • Added support for per thread runtime statistics
  • Added support for building with LLVM on X86
  • Added new synchronization mechanisms using Condition Variables
  • Add support for demand paging, initial support on X86
  • Logging subsystem overhauled
  • Added support for 64-bit ARCv3
  • Split ARM32 and ARM64, ARM64 is now a top-level architecture
  • Added initial support for Arm v8.1-m and Cortex-M55
  • Removed legacy TCP stack support which was deprecated in 2.4
  • Tracing subsystem overhaul / added support for Percepio Tracealyzer
  • Device runtime power management (PM) completely overhauled
  • Automatic SPDX SBOM generation has been added to West
  • Added an example standalone Zephyr application

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

Known issues

You can check all currently known issues by listing them using the GitHub
interface and listing all issues with the bug label.

API Changes

Deprecated in this release

  • DT_ENUM_TOKEN and DT_ENUM_UPPER_TOKEN,
    were deprecated in favor of utilizing
    DT_STRING_TOKEN and DT_STRING_UPPER_TOKEN

  • BT_CONN_ROLE_MASTER and BT_CONN_ROLE_SLAVE
    have been deprecated in favor of
    BT_CONN_ROLE_CENTRAL and BT_CONN_ROLE_PERIPHERAL

  • BT_LE_SCAN_OPT_FILTER_WHITELIST
    has been deprecated in favor of
    BT_LE_SCAN_OPT_FILTER_ACCEPT_LIST

  • The following whitelist functions have been deprecated:
    bt_le_whitelist_add
    bt_le_whitelist_rem
    bt_le_whitelist_clear
    in favor of
    bt_le_filter_accept_list_add
    bt_le_filter_accept_list_remove
    bt_le_filter_accept_list_clear

Modified in this release

  • The following Bluetooth macros and structures in :file:hci.h have been
    modified to align with the inclusive naming in the v5.3 specification:

    • BT_LE_FEAT_BIT_SLAVE_FEAT_REQ is now BT_LE_FEAT_BIT_PER_INIT_FEAT_XCHG
    • BT_LE_FEAT_BIT_CIS_MASTER is now BT_LE_FEAT_BIT_CIS_CENTRAL
    • BT_LE_FEAT_BIT_CIS_SLAVE is now BT_LE_FEAT_BIT_CIS_PERIPHERAL
    • BT_FEAT_LE_SLAVE_FEATURE_XCHG is now BT_FEAT_LE_PER_INIT_FEAT_XCHG
    • BT_FEAT_LE_CIS_MASTER is now BT_FEAT_LE_CIS_CENTRAL
    • BT_FEAT_LE_CIS_SLAVE is now BT_FEAT_LE_CIS_PERIPHERAL
    • BT_LE_STATES_SLAVE_CONN_ADV is now BT_LE_STATES_PER_CONN_ADV
    • BT_HCI_OP_LE_READ_WL_SIZE is now BT_HCI_OP_LE_READ_FAL_SIZE
    • bt_hci_rp_le_read_wl_size is now bt_hci_rp_le_read_fal_size
    • bt_hci_rp_le_read_wl_size::wl_size is now bt_hci_rp_le_read_fal_size::fal_size
    • BT_HCI_OP_LE_CLEAR_WL is now BT_HCI_OP_LE_CLEAR_FAL
    • BT_HCI_OP_LE_ADD_DEV_TO_WL is now BT_HCI_OP_LE_REM_DEV_FROM_FAL
    • bt_hci_cp_le_add_dev_to_wl is now bt_hci_cp_le_add_dev_to_fal
    • BT_HCI_OP_LE_REM_DEV_FROM_WL is now BT_HCI_OP_LE_REM_DEV_FROM_FAL
    • bt_hci_cp_le_rem_dev_from_wl is now bt_hci_cp_le_rem_dev_from_fal
    • BT_HCI_ROLE_MASTER is now BT_HCI_ROLE_CENTRAL
    • BT_HCI_ROLE_SLAVE is now BT_HCI_ROLE_PERIPHERAL
    • BT_EVT_MASK_CL_SLAVE_BC_RX is now BT_EVT_MASK_CL_PER_BC_RX
    • BT_EVT_MASK_CL_SLAVE_BC_TIMEOUT is now BT_EVT_MASK_CL_PER_BC_TIMEOUT
    • BT_EVT_MASK_SLAVE_PAGE_RSP_TIMEOUT is now BT_EVT_MASK_PER_PAGE_RSP_TIMEOUT
    • BT_EVT_MASK_CL_SLAVE_BC_CH_MAP_CHANGE is now BT_EVT_MASK_CL_PER_BC_CH_MAP_CHANGE
    • m_* structure members are now c_*
    • s_* structure members are now p_*
  • The CONFIG_BT_PERIPHERAL_PREF_SLAVE_LATENCY Kconfig option is now
    CONFIG_BT_PERIPHERAL_PREF_LATENCY

  • The CONFIG_BT_CTLR_SLAVE_FEAT_REQ_SUPPORT Kconfig option is now
    CONFIG_BT_CTLR_PER_INIT_FEAT_XCHG_SUPPORT

  • The CONFIG_BT_CTLR_SLAVE_FEAT_REQ Kconfig option is now
    CONFIG_BT_CTLR_PER_INIT_FEAT_XCHG

Changes in this release

Removed APIs in this release

  • Removed support for the deprecated DEVICE_INIT and DEVICE_AND_API_INIT macros.

  • Removed support for the deprecated BUILD_ASSERT_MSG macro.

  • Removed support for the deprecated GET_ARG1, GET_ARG2 and GET_ARGS_LESS_1 macros.

  • Removed support for the deprecated Kconfig PRINTK64 option.

  • Removed support for the deprecated bt_set_id_addr function.

  • Removed support for the Kconfig USB option. Option USB_DEVICE_STACK
    is sufficient to enable USB device support.

  • Removed CONFIG_OPENTHREAD_COPROCESSOR_SPINEL_ON_UART_ACM and
    CONFIG_OPENTHREAD_COPROCESSOR_SPINEL_ON_UART_DEV_NAME Kconfig options
    in favor of chosen node zephyr,ot-uart.

  • Removed CONFIG_BT_UART_ON_DEV_NAME Kconfig option
    in favor of direct use of chosen node zephyr,bt-uart.

  • Removed CONFIG_BT_MONITOR_ON_DEV_NAME Kconfig option
    in favor of direct use of chosen node zephyr,bt-mon-uart.

  • Removed CONFIG_MODEM_GSM_UART_NAME Kconfig option
    in favor of direct use of chosen node zephyr,gsm-ppp.

  • Removed CONFIG_UART_MCUMGR_ON_DEV_NAME Kconfig option
    in favor of direct use of chosen node zephyr,uart-mcumgr.

  • Removed CONFIG_UART_CONSOLE_ON_DEV_NAME Kconfig option
    in favor of direct use of chosen node zephyr,console.

  • Removed CONFIG_UART_SHELL_ON_DEV_NAME Kconfig option
    in favor of direct use of chosen node zephyr,shell-uart.

Stable API changes in this release

  • Bluetooth

    • Added multiple to the bt_gatt_read_params - this
      structure contains two members: handles, which was moved from
      bt_gatt_read_params, and variable.

Kernel

Architectures

  • ARC

    • Add SMP support to ARCv3 HS6x
    • Add MWDT C library support
    • Add basic C++ support with MWDT toolchain
    • Add MPUv3 and MPUv6 support
    • Remove dead PM code from ARC core interrupt controller driver
    • Add updating arc connect debug mask dynamically
  • ARM

    • AARCH32

      • Updated CMSIS version to 5.8.0
      • Added support for FPU in QEMU for Cortex-M, allowing to build and execute
        tests in CI with FPU and FPU_SHARING options enabled.
      • Added MPU support for Cortex-R
    • AARCH64

  • RISC-V

    • Added support to RISC-V CPU devicetree compatible bindings
    • Added support to link with ITCM & DTCM sections
  • x86

Bluetooth

  • Updated all APIs and internal implementation to be conformant with the new
    inclusive terminology in version 5.3 of the Bluetooth Core Specification

  • Audio

    • Added the Microphone Input Control Service and client.
    • Changed the connected isochronous API to use a group-based opaque struct
    • Split the configuration options into connected and broadcast groups
    • Added...
Read more

Zephyr v2.7.0-rc5

12 Oct 18:47
v2.7.0-rc5
Compare
Choose a tag to compare
Zephyr v2.7.0-rc5 Pre-release
Pre-release

Changes since v2.7.0-rc4:

Anas Nashif (1):
      tests: logging: remove definition of SYS_CLOCK_HW_CYCLES_PER_SEC

Andrzej Głąbek (2):
      doc: release: Add release notes for ADC, DMIC, I2S, and PWM drivers
      drivers: pwm_nrfx: Fix handling of zero length periods

Andy Ross (1):
      tests/msgq_usage: Correct memory usage for cache-incoherent platforms

Benedikt Schmidt (1):
      docs: Improve documentation of bootloader usage

Bradley Bolen (1):
      doc: release: 2.7: Add release note for aarch32

Carles Cufi (1):
      doc: release notes: Add Bluetooth relnotes for 2.7.0

Christopher Friedt (2):
      net: mdns + dns_sd: fix regression that breaks ptr queries
      release: Zephyr 2.7.0-rc5

David Leach (1):
      doc: release: 2.7: Add NXP SoC changes

Erwan Gouriou (1):
      boards: b_u585i_iot02a: Fix ref man reference

Evgeniy Paltsev (3):
      ARC: HS6x: nSIM: drop unsupported dcache_uncached_region from mdb.args
      DOC: ARC: update arc status page
      doc: release notes: ARC

Flavio Ceolin (8):
      doc: security: Update information about CVE-2021-3581
      doc: security: Update information about CVE-2021-3319
      doc: security: Update information about CVE-2021-3625
      doc: security: Update information about CVE-2021-3510
      doc: security: Update information about CVE-2021-3436
      doc: release: 2.7: add release notes for security
      doc: release: 2.7: add release notes for PM
      pm: Fix device resume order

Igor Knippenberg (2):
      drivers: sensors: fdc2x1x: removed unused fdc2x1x_data
      samples: sensors: fdc2x1x: fixed bugs in pm_info()

Johann Fischer (5):
      doc: release-notes-2.7: update release notes for disk drivers
      doc: release-notes-2.7: add release notes for MODBUS
      doc: usb: refactor USB device support documentation structure
      doc: usb: add CDC ACM device support documentation
      doc: release-notes-2.7: add release notes for USB

Kumar Gala (2):
      samples/subsys/mgmt/osdp: Fix build issues
      arm: aarch32: mpu: Fix build issue with assert

Lauren Murphy (1):
      doc: misc fixes

Martí Bolívar (6):
      Revert "tests: devicetree: test supported devices API"
      Revert "device: supported devices visitor API"
      Revert "device: iterable supported devices"
      Revert "device: simplify structure of handles array"
      device: add fudge factor for handle padding
      doc: devicetree release notes for 2.7

Maureen Helm (1):
      doc: release: Add sensor release notes for v2.7.0

Peter Mitsis (1):
      tracing: fix k_thread_abort tracing references

Piotr Pryga (10):
      Bluetooth: hci: Add helper macros for ver of disallowed CTE types
      Bluetooth: hci: Add handling of allowed CTE types for per sync create
      Bluetooth: radio: move radio_df_cte_inline_set_enabled to radio.c
      Bluetooth: controller: rework per scan lll to allow filt by CTE type
      Bluetooth: controller: ULL: add per sync filtering by CTE type
      samples: Bluetooth: df: enable filtering of per adv by CTE type
      Bluetooth: controller: Add per sync filt by CTE type for SOC w/o DFE
      tests: Bluetooth: bsim_test_iso: Change wait time in BIG receiver
      Bluetooth: controller: Make per adv filtering by CTE cond compilable
      Bluetooth: controller: df: fix handling of max count of IQ reports

Robert Melchers (1):
      net: ethernet: ARP addresses being filled with mcast addresses

Szymon Janc (2):
      bluetooth: Add support for reconfiguring L2CAP channels
      tests: bluetooth: tester: Add support for L2CAP channel reconfiguration

Tim Lin (1):
      ITE: drivers/i2c: returning negative values for error

Vinayak Kariappa Chettimada (5):
      Bluetooth: Controller: Fix assertion failed [evdone]
      Bluetooth: Controller: Fix HCI command parameter check failures
      tests: Bluetooth: bsim: Use separate DUT and TST EDTT builds
      manifest: EDTT: Update revision
      tests: Bluetooth: mesh: Remove explicit disable of CSA#2

Zephyr v2.7.0-rc4

02 Oct 11:16
v2.7.0-rc4
Compare
Choose a tag to compare
Zephyr v2.7.0-rc4 Pre-release
Pre-release

Changes since v2.7.0-rc3:

Agata Ponitka (1):
      Bluetooth: Tester: Add the OOB Authentication method

Aleksander Wasaznik (1):
      Bluetooth: Host: Fix resource leak in bt_gatt_unsubscribe

Alexandre Bourdiol (1):
      tests: kernel: sched: schedule_api: enlarge timeslice criterion

Andrzej Głąbek (3):
      soc: nrf53: Add missing HAS_HW_NRF_* entries
      drivers: i2s_nrfx: Do not enforce two channels for I2S format
      drivers: i2s_nrfx: Fix a few minor fixes

Carlo Caione (1):
      reserved-memory: Fix layering violation

Chen Peng1 (1):
      timer: mask interrupts in timer's timeout handler.

Christopher Friedt (3):
      net: dns_sd, mdns: support service type enumeration
      tests: net: dns_sd, mdns: support service type enumeration
      release: Zephyr 2.7.0-rc4

Daniel Leung (3):
      doc: release: 2.7: add release notes for serial
      doc: release: 2.7: add release notes for PCI/PCIe
      doc: release: 2.7: add release notes for IPM

Emil Gydesen (1):
      Bluetooth: ISO: Remove bt_conn_unref for ISO deferred work

Enjia Mai (1):
      docs: acrn: update the documentation of setting the ACRN hypervisor

Erwan Gouriou (6):
      drivers/gpio: stm32f1: AFIO init should happen before GPIO inits
      tests/drivers: gpio_basic_api: Upudate nucleo_f103rb configuration
      boards: nucleo_l073rz: Set LSI as LPTIM clock source
      boards: stm32u5: Fix instructions to use openocd
      doc: release notes: STM32 updates for v2.7.0
      doc: release notes: Shields updates for v2.7.0

Fabio Baltieri (3):
      samples: canopennode: fix the sample path
      samples: modbus: rtu_server: drop unused variable
      samples: modbus: update/fix samples.yaml configs

Francois Ramu (1):
      drivers: adc: stm32 adc disable causing endless loop

Gerard Marull-Paretas (2):
      pm: stop handling devices on PM_STATE_RUNTIME_IDLE
      tests: pm: power_mgmt: use PM_STATE_SUSPEND_TO_IDLE

Henrik Brix Andersen (1):
      twister: ignore ROM region overflows

Joakim Andersson (3):
      Bluetooth: host: compile out check for multiple identities
      Bluetooth: host: Verify valid local identity loaded from settings
      Bluetooth: host: Access local IRKs consistently

Krzysztof Chruscinski (1):
      lib: os: mpsc_pbuf: Add const qualifier to API calls

Pavel Vasilyev (1):
      Bluetooth: Mesh: Return ETIMEDOUT if k_sem_take call times out

Peter Mitsis (2):
      kernel: fix deadline typo
      doc: Add deadline scheduling information

Piotr Golyzniak (1):
      twister: Fix missing testcases with error status

Piotr Pryga (2):
      Bluetooth: controller: Fix ASSERT caused by ULL releasing chain PDUs
      tests: Bluetooth: df: Add test to verify correctness of relase of PDUs

Ramiro Merello (1):
      subsys/fs/nvs: nvs_write return missing documentation

Robert Lubos (4):
      net: context: Do not overflow net_pkt when using msghdr
      net: mqtt: Handle incomplete zsock_sendmsg write
      net: sockets: tls: Ignore empty iovec entries in sendmsg
      doc: release: 2.7: Add release notes for networking

Szymon Janc (1):
      tests: bluetooth: tester: Add support for L2CAP Credits command

Torsten Rasmussen (9):
      scripts: twister: print message from CMake verify toolchain on failures
      drivers: create BT_DRIVERS Kconfig entry
      drivers: net: adding NET_DRIVERS menuconfig
      modules: hal_nxp: removing always empty zephyr_library
      drivers: ethernet: remove dedicated drivers__ethernet__native_posix lib
      drivers: gpio: remove unused GPIO selection
      drivers: console: remove unused CONSOLE selection
      Revert "drivers: pinmux: build as static library"
      devicetree: remove support for DTC_OVERLAY_FILE in environment

Vinayak Kariappa Chettimada (17):
      Bluetooth: Controller: Fix repeated per sync drift compensations
      Bluetooth: Controller: Fix imprecise data bus error in periodic sync
      Bluetooth: Controller: Update Bluetooth version to 5.3
      Bluetooth: Controller: Minor rename of ULL internal function
      Bluetooth: Controller: Explicitly typecast void return for memcpy calls
      Bluetooth: Controller: Minor indentation fixes
      Bluetooth: controller: Fix populate offset in latest advertising PDU
      Bluetooth: Controller: Add advertiser clock accuracy value
      Bluetooth: Controller: Add FIXME for Per Adv chain channel use
      Bluetooth: Controller: Fix Extended Advertising channel use
      Bluetooth: Controller: Use defines for aux pointer offset unit value
      Bluetooth: Controller: Separate address get and read functions
      Bluetooth: Controller: Fix multiple peripheral connection deadlock
      Bluetooth: Controller: Allow resolving list update during passive scan
      Bluetooth: Controller: Use defines for scanning state types
      Bluetooth: Controller: Fix to ignore aux ptr in scannable advertising
      Bluetooth: Controller: Fix assert on aux LLL scheduled chain reception