Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
122 commits
Select commit Hold shift + click to select a range
8158e43
Bluetooth: Classic: SDP: Improve SDP discover
lylezhu2012 Sep 5, 2024
9ab7ef3
Bluetooth: HFP_AG: Update SDP discovery
lylezhu2012 Sep 11, 2024
f7b4e0d
Bluetooth: BR: improve br_sufficient_key_size
lylezhu2012 Jun 7, 2024
8e07a33
Bluetooth: SSP: Improve BR SC only mode
lylezhu2012 Jun 6, 2024
87b4b8e
Bluetooth: SDP: Correct record length of service att rsp
lylezhu2012 Dec 6, 2024
f7c41e8
Bluetooth: SDP: Notify result if error rsp is received.
lylezhu2012 Dec 6, 2024
74dc435
Bluetooth: HFP_HF: Improve the feature configuration
lylezhu2012 Jul 25, 2024
c49edd8
Bluetooth: BR: at: add function at_get_string
lylezhu2012 Jul 25, 2024
b57fb06
Bluetooth: HFP_HF: Support unsolicited result code +CLIP
lylezhu2012 Jul 25, 2024
7404c0e
Bluetooth: HFP_HF: Add function bt_hfp_hf_cli
lylezhu2012 Jul 25, 2024
936856d
Bluetooth: HFP_HF: Only send AT+CMEE=1 if AG supports
lylezhu2012 Jul 26, 2024
e1eafb3
Bluetooth: HFP_HF: handle unsolicited result code +VGS/+VGM
lylezhu2012 Sep 2, 2024
330d48d
Bluetooth: HFP_HF: Add function to set vgm and vgs
lylezhu2012 Jul 25, 2024
d1751a8
Bluetooth: HFP_AG: Fix AT+CLIP parse issue
lylezhu2012 Jul 26, 2024
117ade1
Bluetooth: HFP_AG: Change log message to LOG_DBG
lylezhu2012 Jul 26, 2024
a15ae2c
Bluetooth: HFP_AG: Improve the call terminate
lylezhu2012 Jul 26, 2024
52df164
Bluetooth: HFP_HF: Notify in-band ring setting
lylezhu2012 Sep 2, 2024
04533b1
Bluetooth: HFP_AG: Support remote audio volume control
lylezhu2012 Jul 26, 2024
a31cb56
Bluetooth: at: support separator "="
lylezhu2012 Jul 26, 2024
8a95073
Bluetooth: HFP_HF: Optimize initialization after SLC established
lylezhu2012 Jul 26, 2024
e442fed
Bluetooth: HFP_HF: Send AT+VGM and AT+VGS after SLC established
lylezhu2012 Sep 2, 2024
e08643b
Bluetooth: HHF_HF: Support read network operator
lylezhu2012 Jul 26, 2024
837df3b
Bluetooth: HFP_AG: Support network operator update
lylezhu2012 Jul 26, 2024
7a2e710
Bluetooth: HFP_HF: Add a function to accept the call
lylezhu2012 Jul 29, 2024
c7c315d
Bluetooth: HFP_AG: Add dedicated SDP features definition
lylezhu2012 Jul 29, 2024
fe1f18d
Bluetooth: HFP_AG: Improve extended error result codes
lylezhu2012 Jul 29, 2024
6f37011
Bluetooth: HFP_AG: Improve codec negotiation
lylezhu2012 Jul 29, 2024
5bb733a
Bluetooth: HFP_HF: Improve codec negotiation
lylezhu2012 Aug 29, 2024
aeab8b0
Bluetooth: HFP_AG: Improve inband ringtone setting
lylezhu2012 Jul 29, 2024
2831cff
Bluetooth: HFP_HF: Add a function to reject the call
lylezhu2012 Jul 29, 2024
3b85ed0
Bluetooth: HFP_HF: Add a function to terminate the call
lylezhu2012 Jul 29, 2024
987adfb
Bluetooth: HFP_AG: Add number dialing callback
lylezhu2012 Jul 31, 2024
b6f46bd
Bluetooth: HFP_HF: Support phone number calling
lylezhu2012 Sep 2, 2024
c13ac3e
Bluetooth: HFP_HF: Support memory dialing
lylezhu2012 Jul 31, 2024
1ef106f
Bluetooth: HFP_HF: Support last number recalling
lylezhu2012 Jul 31, 2024
2985f97
Bluetooth: HFP_AG: Handle command AT+NREC=0
lylezhu2012 Jul 31, 2024
7a9db2c
Bluetooth: HFP_HF: Turn off AG's EC and NR
lylezhu2012 Jul 31, 2024
daaf49f
Bluetooth: HFP_HF: Hold incoming call
lylezhu2012 Jul 31, 2024
86bd122
Bluetooth: HFP_AG: Hold incoming call
lylezhu2012 Jul 31, 2024
e1f94b4
Bluetooth: HFP_AG: Support Enhanced call status
lylezhu2012 Aug 1, 2024
fef38b7
Bluetooth: HFP_AG: Handle AT+CCWA command
lylezhu2012 Aug 2, 2024
29614b8
Bluetooth: HFP_HF: Code clean
lylezhu2012 Sep 2, 2024
45d9ea0
Bluetooth: HFP_AG: Enable 3-way feature
lylezhu2012 Nov 13, 2024
1cf7025
Bluetooth: HFP_HF: Use HF object to replace conn object
lylezhu2012 Sep 2, 2024
e2735b2
Bluetooth: HFP_AG: Move CLCC status definitions
lylezhu2012 Aug 29, 2024
a8acbfe
Bluetooth: HFP_HF: Enable 3-way feature
lylezhu2012 Sep 2, 2024
f26728c
Bluetooth: HFP_HF: Avoid at status overwrote by sending
lylezhu2012 Aug 20, 2024
fd9408a
Bluetooth: HFP_HF: Fix TX queue broken issue
lylezhu2012 Aug 15, 2024
89d8257
Bluetooth: HFP_HF: Support Voice recognition activation
lylezhu2012 Sep 2, 2024
ac6341b
Bluetooth: HFP_AG: Support Voice recognition activation
lylezhu2012 Sep 2, 2024
198da70
Bluetooth: HFP_HF: Request phone number
lylezhu2012 Sep 2, 2024
4227f82
Bluetooth: HFP_AG: Attach a phone number for a voice tag
lylezhu2012 Sep 2, 2024
79c5ac4
Bluetooth: HFP_HF: Transmit DTMF Code
lylezhu2012 Aug 27, 2024
e666349
Bluetooth: HFP_AG: Handle DTMF code
lylezhu2012 Sep 2, 2024
aacd39a
Bluetooth: HFP_HF: Query subscriber number
lylezhu2012 Aug 27, 2024
5aacf5d
Bluetooth: HFP_AG: Send subscriber number info
lylezhu2012 Aug 27, 2024
7411259
Bluetooth: HFP_AG: Set signal strength
lylezhu2012 Sep 2, 2024
e40fd63
Bluetooth: HFP_AG: Set roaming status
lylezhu2012 Aug 27, 2024
cff4f9b
Bluetooth: HFP_AG: Set battery level
lylezhu2012 Aug 27, 2024
df59c3d
Bluetooth: HFP_AG: Set service availability
lylezhu2012 Aug 27, 2024
01d8b0b
Bluetooth: HFP_HF: Activate/deactivate AG indicators
lylezhu2012 Aug 28, 2024
f49c062
Bluetooth: HFP_AG: Indicators Activation and Deactivation
lylezhu2012 Aug 28, 2024
0fa338a
Bluetooth: HFP_HF: Optimize SLC init procedure
lylezhu2012 Aug 28, 2024
11d179e
Bluetooth: HFP_HF: Support HF Indicators
lylezhu2012 Aug 28, 2024
a16c877
Bluetooth: HFP_AG: Support HF Indicators
lylezhu2012 Aug 29, 2024
0317d34
Bluetooth: HFP_HF: fix typo
lylezhu2012 Aug 29, 2024
1c1782d
Bluetooth: HFP_AG: fix typo
lylezhu2012 Feb 21, 2025
e83bd69
Bluetooth: HFP_HF: Initiate SLC establishment
lylezhu2012 Sep 2, 2024
cda9982
Bluetooth: HFP_AG: Ability to reject call
lylezhu2012 Aug 28, 2024
aebec88
Bluetooth: HFP_HF: Verify ability to reject a call
lylezhu2012 Aug 30, 2024
db8b081
Bluetooth: HFP_AG: Support RFCOMM responder
lylezhu2012 Aug 28, 2024
d4053ab
Bluetooth: HFP_HF: Improve SCO accept
lylezhu2012 Aug 28, 2024
d045932
Bluetooth: shell: Support HFP HF and AG
lylezhu2012 Aug 28, 2024
b9b594d
Bluetooth: Shell: BR: Find HFP_HF records on HFP_AG side
lylezhu2012 Aug 13, 2024
25dbb28
Sample: Bluetooth: HFP_AG: Update the sample
lylezhu2012 Aug 30, 2024
5dcd781
Bluetooth: HFP: Divide hfp_internal.h
lylezhu2012 Aug 30, 2024
a1af78b
Sample: Bluetooth: HFP_HF: Update the sample
lylezhu2012 Aug 30, 2024
abdac25
Bluetooth: HFP_AG: Change "-EOPNOTSUPP" to "-ENOEXEC"
lylezhu2012 Nov 12, 2024
9ae36d0
Bluetooth: HFP_AG: Remove unnecessary lock for feature read access
lylezhu2012 Nov 13, 2024
4ede148
Bluetooth: HFP_AG: Optimize feature access
lylezhu2012 Nov 13, 2024
e0ef7c4
Bluetooth: HFP_AG: Remove unnecessary code line `__fallthrough`
lylezhu2012 Nov 13, 2024
7ac74e4
Bluetooth: HFP_AG: Add ACL conn to the `connected` callback
lylezhu2012 Feb 27, 2025
c044454
Bluetooth: Classic: HFP_AG: Update the callback `sco_disconnected()`
lylezhu2012 Apr 3, 2025
e5a7e78
Bluetooth: Classic: Shell: Change acronyms to uppercase
lylezhu2012 Apr 7, 2025
26621d7
Bluetooth: Classic: HFP_AG: Don't change call status if SLC broken
lylezhu2012 Apr 9, 2025
76ca195
Bluetooth: Classic: Shell: HFP: Clear all calls if SLC is broken
lylezhu2012 Apr 9, 2025
6286494
Bluetooth: Classic: HFP_AG: Fix out of bounds issue
lylezhu2012 Apr 25, 2025
8c27695
Bluetooth: Classic: HFP_HF: Fix out of bounds issue
lylezhu2012 Apr 25, 2025
a2d4835
Bluetooth: Classic: HFP_AG: Support ongoing calls before SLC
lylezhu2012 Apr 9, 2025
a92bf1f
Bluetooth: Classic: HFP_AG: Remove unnecessary `lock/unlock`
lylezhu2012 Apr 16, 2025
eeedc08
Bluetooth: Classic: HFP_HF: Support ongoing calls before SLC
lylezhu2012 Apr 9, 2025
67dcf18
Bluetooth: Classic: Shell: Add command `ongoing_calls`
lylezhu2012 Apr 9, 2025
5116f67
Bluetooth: Classic: HGP_AG: change `get_ongoing_call()` to async mode
lylezhu2012 Apr 17, 2025
b3acbbc
Bluetooth: Class: Shell: HFP_HF: Add `auto_select_codec` command
lylezhu2012 Apr 29, 2025
eb5a01d
Bluetooth: Classic: HFP_HF: Fix out of bounds potential issue
lylezhu2012 Jun 6, 2025
995b56a
Bluetooth: Classic: HFP_AG: Improve the SCO management
lylezhu2012 Apr 16, 2025
4f301fb
bluetooth: classic: hfp: sco_conn is null in hfp sco_disconnected cal…
MarkWangChinese Apr 3, 2025
3c6f646
Bluetooth: Classic: SCO: Add SCO conn connected/disconnected cb
lylezhu2012 Apr 9, 2025
cc803bb
Bluetooth: Classic: HFP_AG: Register SCO connect callback
lylezhu2012 Apr 9, 2025
aaef49f
Bluetooth: Classic: SCO: Modify `bt_sco_chan::ops` with `const`
lylezhu2012 Apr 16, 2025
f75d2d2
Bloetooth: Port: Add defination for _bt_sco_conn_cb_list
expliyh Oct 23, 2025
4e9e28f
Bluetooth: Classic: SCO: Get SCO conn info
lylezhu2012 Jul 31, 2025
48ae8b7
Bluetooth: HFP_AG: Fix SLC connected event early notify issue
lylezhu2012 Sep 23, 2025
e53f7be
Bluetooth: Classic: HFP_HF: Fix `AT+CLCC` can not be sent issue
lylezhu2012 Sep 23, 2025
32f65f3
Bluetooth: Classic: HFP: Fix fixed MTU issue
lylezhu2012 Oct 16, 2025
3cd6b5e
Bluetooth: Classic: HFP_HF: Support users to query current call list
lylezhu2012 Sep 25, 2025
7c15b3b
Bluetooth: Classic: HF: Fix invalid query current calls list issue
lylezhu2012 Sep 25, 2025
4209601
Bluetooth: RFCOMM: Move BT_RFCOMM_BUF_SIZE to rfcomm.h
lylezhu2012 Jan 10, 2025
1929b36
Bluetooth: Host: Remove unnecessary hci_driver.h includes
jhedberg Nov 19, 2024
3b62748
Bluetooth: Host: Deprecate `BT_BUF_ACL_RX_COUNT` symbol
theob-pro Nov 21, 2024
1f5676b
Bluetooth: rfcomm: Support dynamic channel allocation
lylezhu2012 Dec 26, 2024
e3057db
Bluetooth: RFCOMM: Add a argument `server` to `bt_rfcomm_server.accept`
lylezhu2012 Dec 27, 2024
08daa9c
Bluetooth: RFCOMM: Add RPN command sending support
jerryyang35 Apr 25, 2025
e3a09ac
Bluetooth: RFCOMM: Fix CR bit in DISC frame
jerryyang35 May 14, 2025
834deac
Bluetooth: RFCOMM: Fix MTU calculation in rfcomm_connected
jerryyang35 Jun 24, 2025
fbd90c1
Bluetooth: Classic: RFCOMM: Remove TX thread from DLC
lylezhu2012 Aug 1, 2025
9167738
zblue port: remove never used dummy_pool
theob-pro Nov 21, 2024
0d39473
Bluetooth: HFP: Change buffer length type in at_client struct
expliyh Nov 5, 2025
c6bb36c
Bluetooth: AG: Add multi-controller support
expliyh Nov 6, 2025
c8eeca9
zblue port: fix hfp ag name conflict
expliyh Nov 6, 2025
5fd7ac2
zblue port: fix hfp hf name conflict
expliyh Nov 13, 2025
c7df37a
zblue port: add Kconfig to switch zblue API prefix on/off
expliyh Nov 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions doc/releases/migration-guide-4.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,19 @@ Bluetooth Classic
Bluetooth Host
==============

* :kconfig:option:`CONFIG_BT_BUF_ACL_RX_COUNT` has been deprecated. The number of ACL RX buffers is
now computed internally and is equal to :kconfig:option:`CONFIG_BT_MAX_CONN` + 1. If an application
needs more buffers, it can use the new :kconfig:option:`CONFIG_BT_BUF_ACL_RX_COUNT_EXTRA` to add
additional ones.

e.g. if :kconfig:option:`CONFIG_BT_MAX_CONN` was ``3`` and
:kconfig:option:`CONFIG_BT_BUF_ACL_RX_COUNT` was ``7`` then
:kconfig:option:`CONFIG_BT_BUF_ACL_RX_COUNT_EXTRA` should be set to ``7 - (3 + 1) = 3``.

.. warning::

The default value of :kconfig:option:`CONFIG_BT_BUF_ACL_RX_COUNT` has been set to 0.

Bluetooth Crypto
================

Expand Down
274 changes: 274 additions & 0 deletions doc/releases/migration-guide-4.2.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,274 @@
:orphan:

..
See
https://docs.zephyrproject.org/latest/releases/index.html#migration-guides
for details of what is supposed to go into this document.

.. _migration_4.2:

Migration guide to Zephyr v4.2.0 (Working Draft)
################################################

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

Any other changes (not directly related to migrating applications) can be found in
the :ref:`release notes<zephyr_4.2>`.

.. contents::
:local:
:depth: 2

Build System
************

Kernel
******

Boards
******

* All boards based on Nordic ICs that used the ``nrfjprog`` Nordic command-line
tool for flashing by default have been modified to instead default to the new
nRF Util (``nrfutil``) tool. This means that you may need to `install nRF Util
<https://www.nordicsemi.com/Products/Development-tools/nrf-util>`_ or, if you
prefer to continue using ``nrfjprog``, you can do so by invoking west while
specfying the runner: ``west flash -r nrfjprog``. The full documentation for
nRF Util can be found
`here <https://docs.nordicsemi.com/bundle/nrfutil/page/README.html>`_.

* All boards based on a Nordic IC of the nRF54L series now default to not
erasing any part of the internal storage when flashing. If you'd like to
revert to the previous default of erasing the pages that will be written to by
the firmware to be flashed you can use the new ``--erase-pages`` command-line
switch when invoking ``west flash``.
Note that RRAM on nRF54L devices is not physically paged, and paging is
only artificially provided, with a page size of 4096 bytes, for an easier
transition of nRF52 software to nRF54L devices.

* The config option :kconfig:option:`CONFIG_NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME` has been deprecated
in favor of :kconfig:option:`CONFIG_NATIVE_SIM_SLOWDOWN_TO_REAL_TIME`.

* The DT binding :dtcompatible:`zephyr,native-posix-cpu` has been deprecated in favor of
:dtcompatible:`zephyr,native-sim-cpu`.

* Zephyr now supports version 1.11.2 of the :zephyr:board:`neorv32`. NEORV32 processor (SoC)
implementations need to be updated to this version to be compatible with Zephyr v4.2.0.

* The :zephyr:board:`neorv32` now targets NEORV32 processor (SoC) templates via board variants. The
old ``neorv32`` board target is now named ``neorv32/neorv32/up5kdemo``.

* ``arduino_uno_r4_minima``, ``arduino_uno_r4_wifi``, and ``mikroe_clicker_ra4m1`` have migrated to
new FSP-based configurations.
While there are no major functional changes, the device tree structure has been significantly revised.
The following device tree bindings are now removed:
``renesas,ra-gpio``, ``renesas,ra-uart-sci``, ``renesas,ra-pinctrl``,
``renesas,ra-clock-generation-circuit``, and ``renesas,ra-interrupt-controller-unit``.
Instead, use the following replacements:
- :dtcompatible:`renesas,ra-gpio-ioport`
- :dtcompatible:`renesas,ra-sci-uart`
- :dtcompatible:`renesas,ra-pinctrl-pfs`
- :dtcompatible:`renesas,ra-cgc-pclk-block`

* Nucleo WBA52CG board (``nucleo_wba52cg``) is not supported anymore since it is NRND
(Not Recommended for New Design) and it is not supported anymore in the STM32CubeWBA from
version 1.1.0 (July 2023). The migration to :zephyr:board:`nucleo_wba55cg` (``nucleo_wba55cg``)
is recommended and it could be done without any change.

Device Drivers and Devicetree
*****************************

DAI
===

* Renamed the devicetree property ``dai_id`` to ``dai-id``.
* Renamed the devicetree property ``afe_name`` to ``afe-name``.
* Renamed the devicetree property ``agent_disable`` to ``agent-disable``.
* Renamed the devicetree property ``ch_num`` to ``ch-num``.
* Renamed the devicetree property ``mono_invert`` to ``mono-invert``.
* Renamed the devicetree property ``quad_ch`` to ``quad-ch``.
* Renamed the devicetree property ``int_odd`` to ``int-odd``.

DMA
===

* Renamed the devicetree property ``nxp,a_on`` to ``nxp,a-on``.
* Renamed the devicetree property ``dma_channels`` to ``dma-channels``.

Counter
=======

* ``counter_native_posix`` has been renamed ``counter_native_sim``, and with it its
kconfig options and DT binding. :dtcompatible:`zephyr,native-posix-counter` has been deprecated
in favor of :dtcompatible:`zephyr,native-sim-counter`.
And :kconfig:option:`CONFIG_COUNTER_NATIVE_POSIX` and its related options with
:kconfig:option:`CONFIG_COUNTER_NATIVE_SIM` (:github:`86616`).

Entropy
=======

* ``fake_entropy_native_posix`` has been renamed ``fake_entropy_native_sim``, and with it its
kconfig options and DT binding. :dtcompatible:`zephyr,native-posix-rng` has been deprecated
in favor of :dtcompatible:`zephyr,native-sim-rng`.
And :kconfig:option:`CONFIG_FAKE_ENTROPY_NATIVE_POSIX` and its related options with
:kconfig:option:`CONFIG_FAKE_ENTROPY_NATIVE_SIM` (:github:`86615`).

Ethernet
========

* Removed Kconfig option ``ETH_STM32_HAL_MII`` (:github:`86074`).
PHY interface type is now selected via the ``phy-connection-type`` property in the device tree.

* The :dtcompatible:`st,stm32-ethernet` driver now requires the ``phy-handle`` phandle to be
set to the according PHY node in the device tree (:github:`87593`).

* The Kconfig options ``ETH_STM32_HAL_PHY_ADDRESS``, ``ETH_STM32_CARRIER_CHECK``,
``ETH_STM32_CARRIER_CHECK_RX_IDLE_TIMEOUT_MS``, ``ETH_STM32_AUTO_NEGOTIATION_ENABLE``,
``ETH_STM32_SPEED_10M``, ``ETH_STM32_MODE_HALFDUPLEX`` have been removed, as they are no longer
needed, and the driver now uses the ethernet phy api to communicate with the phy driver, which
is resposible for configuring the phy settings (:github:`87593`).

* ``ethernet_native_posix`` has been renamed ``ethernet_native_tap``, and with it its
kconfig options: :kconfig:option:`CONFIG_ETH_NATIVE_POSIX` and its related options have been
deprecated in favor of :kconfig:option:`CONFIG_ETH_NATIVE_TAP` (:github:`86578`).

Enhanced Serial Peripheral Interface (eSPI)
===========================================

* Renamed the devicetree property ``io_girq`` to ``io-girq``.
* Renamed the devicetree property ``vw_girqs`` to ``vw-girqs``.
* Renamed the devicetree property ``pc_girq`` to ``pc-girq``.
* Renamed the devicetree property ``poll_timeout`` to ``poll-timeout``.
* Renamed the devicetree property ``poll_interval`` to ``poll-interval``.
* Renamed the devicetree property ``consec_rd_timeout`` to ``consec-rd-timeout``.
* Renamed the devicetree property ``sus_chk_delay`` to ``sus-chk-delay``.
* Renamed the devicetree property ``sus_rsm_interval`` to ``sus-rsm-interval``.

GPIO
====

* To support the RP2350B, which has many pins, the Raspberry Pi-GPIO configuration has
been changed. The previous role of :dtcompatible:`raspberrypi,rpi-gpio` has been migrated to
:dtcompatible:`raspberrypi,rpi-gpio-port`, and :dtcompatible:`raspberrypi,rpi-gpio` is
now left as a placeholder and mapper.
The labels have also been changed along, so no changes are necessary for regular use.

Sensors
=======

* ``ltr`` vendor prefix has been renamed to ``liteon``, and with it the
:dtcompatible:`ltr,f216a` name has been replaced by :dtcompatible:`liteon,ltrf216a`.
The choice :kconfig:option:`DT_HAS_LTR_F216A_ENABLED` has been replaced with
:kconfig:option:`DT_HAS_LITEON_LTRF216A_ENABLED` (:github:`85453`)

Serial
=======

* ``uart_native_posix`` has been renamed ``uart_native_pty``, and with it its
kconfig options and DT binding. :dtcompatible:`zephyr,native-posix-uart` has been deprecated
in favor of :dtcompatible:`zephyr,native-pty-uart`.
:kconfig:option:`CONFIG_UART_NATIVE_POSIX` and its related options with
:kconfig:option:`CONFIG_UART_NATIVE_PTY`.
The choice :kconfig:option:`CONFIG_NATIVE_UART_0` has been replaced with
:kconfig:option:`CONFIG_UART_NATIVE_PTY_0`, but now, it is also possible to select if a UART is
connected to the process stdin/out instead of a PTY at runtime with the command line option
``--<uart_name>_stdinout``.
:kconfig:option:`CONFIG_NATIVE_UART_AUTOATTACH_DEFAULT_CMD` has been replaced with
:kconfig:option:`CONFIG_UART_NATIVE_PTY_AUTOATTACH_DEFAULT_CMD`.
:kconfig:option:`CONFIG_UART_NATIVE_WAIT_PTS_READY_ENABLE` has been deprecated. The functionality
it enabled is now always enabled as there is no drawbacks from it.
:kconfig:option:`CONFIG_UART_NATIVE_POSIX_PORT_1_ENABLE` has been deprecated. This option does
nothing now. Instead users should instantiate as many :dtcompatible:`zephyr,native-pty-uart` nodes
as native PTY UART instances they want. (:github:`86739`)

Timer
=====

* ``native_posix_timer`` has been renamed ``native_sim_timer``, and so its kconfig option
:kconfig:option:`CONFIG_NATIVE_POSIX_TIMER` has been deprecated in favor of
:kconfig:option:`CONFIG_NATIVE_SIM_TIMER`, (:github:`86612`).

Modem
=====

* Removed Kconfig option :kconfig:option:`CONFIG_MODEM_CELLULAR_CMUX_MAX_FRAME_SIZE` in favor of
:kconfig:option:`CONFIG_MODEM_CMUX_WORK_BUFFER_SIZE` and :kconfig:option:`CONFIG_MODEM_CMUX_MTU`.


Stepper
=======

* Refactored the ``stepper_enable(const struct device * dev, bool enable)`` function to
:c:func:`stepper_enable` & :c:func:`stepper_disable`.

Bluetooth
*********

Bluetooth Audio
===============

* ``CONFIG_BT_CSIP_SET_MEMBER_NOTIFIABLE`` has been renamed to
:kconfig:option:`CONFIG_BT_CSIP_SET_MEMBER_SIRK_NOTIFIABLE``. (:github:`86763``)

Bluetooth Host
==============

* The symbols ``BT_LE_CS_TONE_ANTENNA_CONFIGURATION_INDEX_<NUMBER>`` in
:zephyr_file:`include/zephyr/bluetooth/conn.h` have been renamed
to ``BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A<NUMBER>_B<NUMBER>``.

* The ISO data paths are not longer setup automatically, and shall explicitly be setup and removed
by the application by calling :c:func:`bt_iso_setup_data_path` and
:c:func:`bt_iso_remove_data_path` respectively. (:github:`75549`)

* ``BT_ISO_CHAN_TYPE_CONNECTED`` has been split into ``BT_ISO_CHAN_TYPE_CENTRAL`` and
``BT_ISO_CHAN_TYPE_PERIPHERAL`` to better describe the type of the ISO channel, as behavior for
each role may be different. Any existing uses/checks for ``BT_ISO_CHAN_TYPE_CONNECTED``
can be replaced with an ``||`` of the two. (:github:`75549`)

Bluetooth Classic
=================

* The parameters of HFP AG callback ``sco_disconnected`` of the struct :c:struct:`bt_hfp_ag_cb`
have been changed to SCO connection object ``struct bt_conn *sco_conn`` and the disconnection
reason of the SCO connection ``uint8_t reason``.

Networking
**********

* The struct ``net_linkaddr_storage`` has been renamed to struct
:c:struct:`net_linkaddr` and the old struct ``net_linkaddr`` has been removed.
The struct :c:struct:`net_linkaddr` now contains space to store the link
address instead of having pointer that point to the link address. This avoids
possible dangling pointers when cloning struct :c:struct:`net_pkt`. This will
increase the size of struct :c:struct:`net_pkt` by 4 octets for IEEE 802.15.4,
but there is no size increase for other network technologies like Ethernet.
Note that any code that is using struct :c:struct:`net_linkaddr` directly, and
which has checks like ``if (lladdr->addr == NULL)``, will no longer work as expected
(because the addr is not a pointer) and must be changed to ``if (lladdr->len == 0)``
if the code wants to check that the link address is not set.

* TLS credential type ``TLS_CREDENTIAL_SERVER_CERTIFICATE`` was renamed to
more generic :c:enumerator:`TLS_CREDENTIAL_PUBLIC_CERTIFICATE` to better
reflect the purpose of this credential type.

* The MQTT public API function :c:func:`mqtt_disconnect` has changed. The function
now accepts additional ``param`` parameter to support MQTT 5.0 case. The parameter
is optional and not used with older MQTT versions - MQTT 3.1.1 users should pass
NULL as an argument.

SPI
===

* Renamed the device tree property ``port_sel`` to ``port-sel``.
* Renamed the device tree property ``chip_select`` to ``chip-select``.

Other subsystems
****************

Modules
*******

Architectures
*************
3 changes: 3 additions & 0 deletions doc/releases/release-notes-4.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@ Bluetooth

* Host

* :kconfig:option:`CONFIG_BT_BUF_ACL_RX_COUNT` has been deprecated and
:kconfig:option:`CONFIG_BT_BUF_ACL_RX_COUNT_EXTRA` has been added.

* HCI Drivers

Boards & SoC Support
Expand Down
1 change: 0 additions & 1 deletion drivers/bluetooth/hci/h4_ifx_cyw43xxx.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
#include <zephyr/kernel.h>
#include <zephyr/device.h>
#include <zephyr/bluetooth/bluetooth.h>
#include <zephyr/drivers/bluetooth/hci_driver.h>
#include <zephyr/drivers/gpio.h>
#include <zephyr/drivers/uart.h>

Expand Down
6 changes: 6 additions & 0 deletions include/zephyr/bluetooth/bluetooth.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@
#ifndef ZEPHYR_INCLUDE_BLUETOOTH_BLUETOOTH_H_
#define ZEPHYR_INCLUDE_BLUETOOTH_BLUETOOTH_H_

#ifdef CONFIG_ZBLUE_API_PREFIX_ENABLE
#define Z_API(func) z_##func
#else
#define Z_API(func) func
#endif /* CONFIG_ZBLUE_API_PREFIX_ENABLE */

/**
* @brief Bluetooth APIs
* @defgroup bluetooth Bluetooth APIs
Expand Down
30 changes: 29 additions & 1 deletion include/zephyr/bluetooth/buf.h
Original file line number Diff line number Diff line change
Expand Up @@ -85,13 +85,41 @@ struct bt_buf_data {
#define BT_BUF_ISO_RX_COUNT 0
#endif /* CONFIG_BT_ISO */

/* see Core Spec v6.0 vol.4 part E 7.4.5 */
#define BT_BUF_ACL_RX_COUNT_MAX 65535

#if defined(CONFIG_BT_CONN) && defined(CONFIG_BT_HCI_HOST)
/* The host needs more ACL buffers than maximum ACL links. This is because of
* the way we re-assemble ACL packets into L2CAP PDUs.
*
* We keep around the first buffer (that comes from the driver) to do
* re-assembly into, and if all links are re-assembling, there will be no buffer
* available for the HCI driver to allocate from.
*
* TODO: When CONFIG_BT_BUF_ACL_RX_COUNT is removed,
* remove the MAX and only keep (CONFIG_BT_MAX_CONN + 1)
*/
#define BT_BUF_ACL_RX_COUNT \
(MAX(CONFIG_BT_BUF_ACL_RX_COUNT, (CONFIG_BT_MAX_CONN + 1)) + \
CONFIG_BT_BUF_ACL_RX_COUNT_EXTRA)
#else
#define BT_BUF_ACL_RX_COUNT 0
#endif /* CONFIG_BT_CONN && CONFIG_BT_HCI_HOST */

#if defined(CONFIG_BT_BUF_ACL_RX_COUNT) && CONFIG_BT_BUF_ACL_RX_COUNT > 0
#warning "CONFIG_BT_BUF_ACL_RX_COUNT is deprecated, see Zephyr 4.1 migration guide"
#endif /* CONFIG_BT_BUF_ACL_RX_COUNT && CONFIG_BT_BUF_ACL_RX_COUNT > 0 */

BUILD_ASSERT(BT_BUF_ACL_RX_COUNT <= BT_BUF_ACL_RX_COUNT_MAX,
"Maximum number of ACL RX buffer is 65535, reduce CONFIG_BT_BUF_ACL_RX_COUNT_EXTRA");

/** Data size needed for HCI ACL, HCI ISO or Event RX buffers */
#define BT_BUF_RX_SIZE (MAX(MAX(BT_BUF_ACL_RX_SIZE, BT_BUF_EVT_RX_SIZE), \
BT_BUF_ISO_RX_SIZE))

/** Buffer count needed for HCI ACL, HCI ISO or Event RX buffers */
#define BT_BUF_RX_COUNT (MAX(MAX(CONFIG_BT_BUF_EVT_RX_COUNT, \
CONFIG_BT_BUF_ACL_RX_COUNT), \
BT_BUF_ACL_RX_COUNT), \
BT_BUF_ISO_RX_COUNT))

/** Data size needed for HCI Command buffers. */
Expand Down
Loading
Loading