Bluetooth: mgmt: Add device disconnect reason
authorMikel Astiz <mikel.astiz@bmw-carit.de>
Thu, 9 Aug 2012 07:52:30 +0000 (09:52 +0200)
committerGustavo Padovan <gustavo.padovan@collabora.co.uk>
Tue, 21 Aug 2012 17:54:40 +0000 (14:54 -0300)
commitf0d6a0ea330617454032d6e2ed48759858a44427
treed11edf124abaef7d14f39fb9d0678376800fac72
parentfa1bd91809d58b3c183611556219fafd93c08625
Bluetooth: mgmt: Add device disconnect reason

MGMT_EV_DEVICE_DISCONNECTED will now expose the disconnection reason to
userland, distinguishing four possible values:

0x00 Reason not known or unspecified
0x01 Connection timeout
0x02 Connection terminated by local host
0x03 Connection terminated by remote host

Note that the local/remote distinction just determines which side
terminated the low-level connection, regardless of the disconnection of
the higher-level profiles.

This can sometimes be misleading and thus must be used with care. For
example, some hardware combinations would report a locally initiated
disconnection even if the user turned Bluetooth off in the remote side.

Signed-off-by: Mikel Astiz <mikel.astiz@bmw-carit.de>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
include/net/bluetooth/hci_core.h
include/net/bluetooth/mgmt.h
net/bluetooth/hci_event.c
net/bluetooth/mgmt.c