1:orphan:
2
3..
4  See
5  https://docs.zephyrproject.org/latest/releases/index.html#migration-guides
6  for details of what is supposed to go into this document.
7
8.. _migration_4.3:
9
10Migration guide to Zephyr v4.3.0 (Working Draft)
11################################################
12
13This document describes the changes required when migrating your application from Zephyr v4.2.0 to
14Zephyr v4.3.0.
15
16Any other changes (not directly related to migrating applications) can be found in
17the :ref:`release notes<zephyr_4.3>`.
18
19.. contents::
20    :local:
21    :depth: 2
22
23Build System
24************
25
26Kernel
27******
28
29Boards
30******
31
32* mimxrt11x0: renamed lpadc1 to lpadc2 and renamed lpadc0 to lpadc1.
33
34* NXP ``frdm_mcxa166`` is renamed to ``frdm_mcxa346``.
35* NXP ``frdm_mcxa276`` is renamed to ``frdm_mcxa266``.
36
37Device Drivers and Devicetree
38*****************************
39
40.. zephyr-keep-sorted-start re(^\w)
41
42Phy
43===
44
45* Nodes with compatible property :dtcompatible:`st,stm32u5-otghs-phy` now need to select the
46  CLKSEL (phy reference clock) in the SYSCFG_OTGHSPHYCR register using the new property
47  clock-reference. The selection directly depends on the value on OTGHSSEL (OTG_HS PHY kernel
48  clock source selection) located in the RCC_CCIPR2 register.
49
50Sensors
51=======
52
53* Nodes with compatible property :dtcompatible:`invensense,icm42688` now additionally need to also
54  include :dtcompatible:`invensense,icm4268x` in order to work.
55
56Stepper
57=======
58
59* :dtcompatible:`zephyr,gpio-stepper` has been replaced by :dtcompatible:`zephyr,h-bridge-stepper`.
60
61.. zephyr-keep-sorted-stop
62
63Bluetooth
64*********
65
66* :c:struct:`bt_le_cs_test_param` and :c:struct:`bt_le_cs_create_config_params` now require
67  providing both the main and sub mode as a single parameter.
68* :c:struct:`bt_conn_le_cs_config` now reports both the main and sub mode as a single parameter.
69* :c:struct:`bt_conn_le_cs_main_mode` and :c:struct:`bt_conn_le_cs_sub_mode` have been replaced
70  with :c:struct:`bt_conn_le_cs_mode`.
71
72Bluetooth Controller
73====================
74
75* The following Kconfig option have been renamed:
76
77    * :kconfig:option:`CONFIG_BT_CTRL_ADV_ADI_IN_SCAN_RSP` to
78      :kconfig:option:`CONFIG_BT_CTLR_ADV_ADI_IN_SCAN_RSP`
79
80.. zephyr-keep-sorted-start re(^\w)
81
82Bluetooth Audio
83===============
84
85* :c:struct:`bt_audio_codec_cfg` now requires setting the target latency and target PHY explicitly,
86  rather than always setting the target latency to "Balanced" and the target PHY to LE 2M.
87  To keep current functionality, set the ``target_latency`` to
88  :c:enumerator:`BT_AUDIO_CODEC_CFG_TARGET_LATENCY_BALANCED` and ``target_phy`` to
89  :c:enumerator:`BT_AUDIO_CODEC_CFG_TARGET_PHY_2M`.
90  The :c:macro:`BT_AUDIO_CODEC_CFG` macro defaults to these values.
91  (:github:`93825``)
92* Setting the BGS role for GMAP now requires also supporting and implementing the
93  :kconfig:option:`CONFIG_BT_BAP_BROADCAST_ASSISTANT`.
94  See the :zephyr:code-sample:`bluetooth_bap_broadcast_assistant` sample as a reference.
95
96.. zephyr-keep-sorted-stop
97
98Ethernet
99========
100
101* The :dtcompatible:`microchip,vsc8541` PHY driver now expects the reset-gpios entry to specify
102  the GPIO_ACTIVE_LOW flag when the reset is being used as active low. Previously the active-low
103  nature was hard-coded into the driver. (:github:`91726`).
104
105Networking
106**********
107
108* The HTTP server now respects the configured ``_config`` value. Check that
109  you provide applicable value to :c:macro:`HTTP_SERVICE_DEFINE_EMPTY`,
110  :c:macro:`HTTPS_SERVICE_DEFINE_EMPTY`, :c:macro:`HTTP_SERVICE_DEFINE` and
111  :c:macro:`HTTPS_SERVICE_DEFINE`.
112
113.. zephyr-keep-sorted-start re(^\w)
114
115.. zephyr-keep-sorted-stop
116
117Display
118*******
119
120* The RGB565 and BGR565 pixel formats were used interchangeably in the display sample.
121  This has now been fixed. Boards and applications that were tested or developed based on the
122  previous sample may be affected by this change (see :github:`79996` for more information).
123
124* SSD1363's properties using 'greyscale' now use 'grayscale'.
125
126PTP Clock
127*********
128
129* The doc of :c:func:`ptp_clock_rate_adjust` API didn't provide proper and clear function description.
130  Drivers implemented it to adjust rate ratio relatively based on current frequency.
131  Now PI servo is introduced in both PTP and gPTP, and this API function is changed to use for rate
132  ratio adjusting based on nominal frequency. Drivers implementing :c:func:`ptp_clock_rate_adjust`
133  should be adjusted to account for the new behavior.
134
135Other subsystems
136****************
137
138.. zephyr-keep-sorted-start re(^\w)
139
140Logging
141=======
142
143* The UART dictionary log parsing script
144  :zephyr_file:`scripts/logging/dictionary/log_parser_uart.py` has been deprecated. Instead, the
145  more generic script of :zephyr_file:`scripts/logging/dictionary/live_log_parser.py` should be
146  used. The new script supports the same functionality (and more), but requires different command
147  line arguments when invoked.
148
149.. zephyr-keep-sorted-stop
150
151Modules
152*******
153
154* The TinyCrypt library was removed as the upstream version is no longer maintained.
155  PSA Crypto API is now the recommended cryptographic library for Zephyr.
156
157Silabs
158======
159
160* Aligned the name of the Rail options with the other SiSDK related options:
161
162   * :kconfig:option:`CONFIG_RAIL_PA_CURVE_HEADER` to
163     :kconfig:option:`CONFIG_SILABS_SISDK_RAIL_PA_CURVE_HEADER`
164   * :kconfig:option:`CONFIG_RAIL_PA_CURVE_TYPES_HEADER` to
165     :kconfig:option:`CONFIG_SILABS_SISDK_RAIL_PA_CURVE_TYPES_HEADER`
166   * :kconfig:option:`CONFIG_RAIL_PA_ENABLE_CALIBRATION` to
167     :kconfig:option:`CONFIG_SILABS_SISDK_RAIL_PA_ENABLE_CALIBRATION`
168
169* Fixed name of the :kconfig:option:`CONFIG_SOC_*`. These option contained PART_NUMBER in their
170  while they shouldn't.
171
172* The separate ``em3`` power state was removed from Series 2 SoCs. The system automatically
173  transitions to EM2 or EM3 depending on hardware peripheral requests for the oscillators.
174
175Architectures
176*************
177