Migration guide to Zephyr v4.3.0 (Working Draft)

This document describes the changes required when migrating your application from Zephyr v4.2.0 to Zephyr v4.3.0.

Any other changes (not directly related to migrating applications) can be found in the release notes.

Build System

Kernel

Boards

  • mimxrt11x0: renamed lpadc1 to lpadc2 and renamed lpadc0 to lpadc1.

  • NXP frdm_mcxa166 is renamed to frdm_mcxa346.

  • NXP frdm_mcxa276 is renamed to frdm_mcxa266.

  • Panasonic panb511evb is renamed to panb611evb.

Device Drivers and Devicetree

Phy

  • Nodes with compatible property st,stm32u5-otghs-phy now need to select the CLKSEL (phy reference clock) in the SYSCFG_OTGHSPHYCR register using the new property clock-reference. The selection directly depends on the value on OTGHSSEL (OTG_HS PHY kernel clock source selection) located in the RCC_CCIPR2 register.

Sensors

Stepper

Bluetooth

Bluetooth Controller

Bluetooth Audio

Bluetooth HCI

  • The deprecated ipm value was removed from bt-hci-bus devicetree property. ipc should be used instead.

Ethernet

  • The microchip,vsc8541 PHY driver now expects the reset-gpios entry to specify the GPIO_ACTIVE_LOW flag when the reset is being used as active low. Previously the active-low nature was hard-coded into the driver. (GitHub #91726).

Networking

Display

  • The RGB565 and BGR565 pixel formats were used interchangeably in the display sample. This has now been fixed. Boards and applications that were tested or developed based on the previous sample may be affected by this change (see GitHub #79996 for more information).

  • SSD1363’s properties using ‘greyscale’ now use ‘grayscale’.

PTP Clock

  • The doc of ptp_clock_rate_adjust() API didn’t provide proper and clear function description. Drivers implemented it to adjust rate ratio relatively based on current frequency. Now PI servo is introduced in both PTP and gPTP, and this API function is changed to use for rate ratio adjusting based on nominal frequency. Drivers implementing ptp_clock_rate_adjust() should be adjusted to account for the new behavior.

Other subsystems

Logging

Secure storage

  • The size of psa_storage_uid_t, used to identify storage entries, was changed from 64 to 30 bits. This change breaks backward compatibility with previously stored entries for which authentication will start failing. Enable CONFIG_SECURE_STORAGE_64_BIT_UID if you are updating an existing installation from an earlier version of Zephyr and want to keep the pre-existing entries. (GitHub #94171)

Shell

  • The MQTT topics related to SHELL_BACKEND_MQTT have been renamed. Renamed <device_id>_rx to <device_id>/sh/rx and <device_id>_tx to <device_id>/sh/rx. The part after the <device_id> is now configurable via SHELL_MQTT_TOPIC_RX_ID and SHELL_MQTT_TOPIC_TX_ID. This allows keeping the previous topics for backward compatibility. (GitHub #92677).

Modules

  • The TinyCrypt library was removed as the upstream version is no longer maintained. PSA Crypto API is now the recommended cryptographic library for Zephyr.

Silabs

Architectures