The HCI commands and events have slightly different requirements
(e.g. max sizes, or the fact that events don't need any user data) so
it makes sense to keep them separate. The total count is kept at 8 (2
+ 6) but the ACL_OUT count is modified to not exceed the event count
(to avoid inability of handling bursts of Number of Completed Packets
events). The ACL_IN count is also modified to keep these symmetric for
now.
Change-Id: Ia1915a596424425525b6df67e0ddce47a7f618f3
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
BLUETOOTH_DEBUG and BLUETOOTH_DEBUG_HCI_CORE options are also useful
for Broadcaster and Observer roles and should not depends on connection
support.
Change-Id: Ice1142f3dcc5d73e5460449cc1444a1345eb624a
Signed-off-by: Szymon Janc <ext.szymon.janc@tieto.com>
There's no need to maintain a separate module for this anymore.
Subsequent patches will have further simplifications thanks to this
being now handled in a single c-file.
Change-Id: I4510c9f72b121e1e5fd19eeb8b5d5ddf2f4bfffe
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
We need to have a generic buffer API in order to efficiently transfer
data between different subsystems. The first such case will be the
Networking and Bluetooth subsystems where 6LoWPAN data will be passed
back and forth.
The needed API needs to provide enough flexibility for different
buffer sizes as well as custom protocol-specific context data.
The implementation offered in this patch follows the general design of
the existing Networking and Bluetooth buffer implementations by using
a backing array of buffer which is fed into a "free buffers" FIFO for
management. The main difference is that the API allows specifying
variable sized buffers for each created pool, as well as a minimum
amount of "user data" that's allocated as part of each buffer.
There's also an optional destroy callback that's e.g. useful for HCI
flow control in Bluetooth (for notifying the controller of available
buffers).
Change-Id: I00b7007135a0ff35219f38f48658f31728fbb7ca
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This adds an option to enable L2CAP dynamic channel support, fixed
channels are not affected by it.
Change-Id: If36bece46b7b94142ea1ac976b878d1b5ae6a578
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Change all the Intel and Wind River code license from BSD-3 to Apache 2.
Change-Id: Id8be2c1c161a06ea8a0b9f38e17660e11dbb384b
Signed-off-by: Javier B Perez Hernandez <javier.b.perez.hernandez@linux.intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
This allows to not compile SMP support for devices that don't
require pairing. It is required to support SMP channel and reply
with error for any command received even if pairing is not supported.
To handle this cleanly a null smp implementation is used that case.
Change-Id: I656a52dac882839db904eee65f25a4e29ea2d8c2
Signed-off-by: Szymon Janc <ext.szymon.janc@tieto.com>
This allows to not compile data signing support if it is not
required. Reduces image size of peripheral sample app from
45772 to 44436 bytes.
Change-Id: I2cd3515973d1a70f478cbd68426ec84fd1645d19
Signed-off-by: Szymon Janc <ext.szymon.janc@tieto.com>
This allows to specify which roles are supported. Broadcaster and
Observer roles are always supported.
Image size reduction for samples apps:
beacon 43148 -> 15196
central 46892 -> 46356
peripheral 47532 -> 45940
Change-Id: If260c13d63651b9b54df5bafc2c412b01dcb1eb0
Signed-off-by: Szymon Janc <ext.szymon.janc@tieto.com>
These features set are not experimental anymore.
Change-Id: Ia9e4803982f625157e78c8002c38fed1e95c4892
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
This makes menu cleaner and easier to follow what options
are Bluetooth specific. It is now similar to IP configuration.
Change-Id: Ic2f6002ab30093bed62e71fe268a576d69a9cd0d
Signed-off-by: Szymon Janc <ext.szymon.janc@tieto.com>
Make menuconfig screen more logical placing self-tests option inside
Bluetooth block. Currently self-tests looks not belonging to
Bluetooth.
Change-Id: I1ad2826b1dd09fb7c9b67aace1ad5f280543104d
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Adds fiber which starts with some specified delay.
If the fiber is not cancelled, bt_disconnect is called to
cancel creation of connection.
Change-Id: I06667d970ba3398f205f19f1d2e76ab6c283f274
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
In a case there no crypto library, AES-CMAC Message Authentication Code
might be calculated with the help of Host Controller LE Encrypt command.
Change-Id: If7073bf4baa3f86c04728712f6789cc269673da7
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
This makes sure that keys.c doesn't always have its BT_DBG logs
enabled.
Change-Id: Ia97149f08a448f55a15c3282f72afb23c495b715
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
BLUETOOTH_UART and BLUETOOTH_DEBUG_UART defined twice.
Change-Id: I77f0e87a7f6132514696ef854c183037a540acba
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit add license headers to Kconfig files.
Change-Id: I79e60263b8c7b696463ecc84b8ad411af5415117
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
This commit organizes the bluetooth Ksymbols in:
- Driver symbols at drivers/bluetooth/Kconfig
- Stack symbols at net/bluetooth/Kconfig
Change-Id: I8ebadeb8ac7f8a769d7620e4e44077a05915dc86
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>