zephyr/samples/bluetooth/hci_rpmsg
Joakim Andersson 81614307e9 Bluetooth: Add workaround for no command buffer available
Add workaround for no command buffer available when the host is
transmitting Host Number of Completed Packet Commands.
This command does not follow normal flow control of HCI commands and
the controller side HCI drivers that allocates HCI command buffers with
K_NO_WAIT can end up running out of command buffers.

Increase the command buffer count from 2 to 10 for the affected drivers
until the issue has a proper fix.

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2021-08-16 15:12:22 -04:00
..
src
CMakeLists.txt
README.rst
debug_overlay.conf
prj.conf Bluetooth: Add workaround for no command buffer available 2021-08-16 15:12:22 -04:00
sample.yaml

README.rst

.. _bluetooth-hci-rpmsg-sample:

Bluetooth: HCI RPMsg
####################

Overview
********

This sample exposes :ref:`bluetooth_controller` support
to another device or CPU using RPMsg transport which is
a part of `OpenAMP <https://github.com/OpenAMP/open-amp/>`__.

Requirements
************

* A board with :ref:`ipm_api` driver and Bluetooth LE support

Building and Running
********************

This sample can be found under :zephyr_file:`samples/bluetooth/hci_rpmsg`
in the Zephyr tree.

To use this application, you need a board with a Bluetooth controller
and IPM drivers.
You can then build this application and flash it onto your board in
the usual way. See :ref:`boards` for board-specific building and
programming information.

To test this sample, you need a separate device/CPU that acts as Bluetooth
HCI RPMsg peer.
This sample is compatible with the HCI RPMsg driver provided by
Zephyr's Bluetooth :ref:`bt_hci_drivers` core. See the
:kconfig:`CONFIG_BT_RPMSG` configuration option for more information.

You might need to adjust the Kconfig configuration of this sample to make it
compatible with the peer application. For example, :kconfig:`CONFIG_BT_MAX_CONN`
must be equal to the maximum number of connections supported by the peer application.

Refer to :ref:`bluetooth-samples` for general information about Bluetooth samples.