Bluetooth: Use non-flushable pb flag by default for ACL data on capable chipsets.
authorNick Pelly <npelly@google.com>
Wed, 9 Dec 2009 03:42:21 +0000 (19:42 -0800)
committerNick Pelly <npelly@google.com>
Tue, 9 Mar 2010 20:09:56 +0000 (12:09 -0800)
commita47633bdbcc9b87f2a72e9bdf317f05e2e6c8051
tree92267d8ff16c999977ffb60b2db511599bae4c79
parent71682ea19f8d5d96034ce113acbbf83ac58173e6
Bluetooth: Use non-flushable pb flag by default for ACL data on capable chipsets.

With Bluetooth 2.1 ACL packets can be flushable or non-flushable. This commit
makes ACL data packets non-flushable by default on compatible chipsets, and
adds the L2CAP_LM_FLUSHABLE socket option to explicitly request flushable ACL
data packets for a given L2CAP socket. This is useful for A2DP data which can
be safely discarded if it can not be delivered within a short time (while
other ACL data should not be discarded).

Note that making ACL data flushable has no effect unless the automatic flush
timeout for that ACL link is changed from its default of 0 (infinite).

Change-Id: Ie3d4befdeaefb8c979de7ae603ff5ec462b3483c
Signed-off-by: Nick Pelly <npelly@google.com>
include/net/bluetooth/hci.h
include/net/bluetooth/hci_core.h
include/net/bluetooth/l2cap.h
net/bluetooth/hci_core.c
net/bluetooth/l2cap.c