Tedd Ho-Jeong An [Mon, 21 Sep 2020 19:00:27 +0000 (12:00 -0700)]
gobex: Add SPDX License Identifier
This patch adds SPDX License Identifier and removes the license text.
-------------------------------------
License COUNT
-------------------------------------
GPL-2.0-or-later : 12
License: GPL-2.0-or-later
gobex/gobex-defs.h
gobex/gobex-transfer.c
gobex/gobex.c
gobex/gobex-apparam.h
gobex/gobex-header.h
gobex/gobex-header.c
gobex/gobex.h
gobex/gobex-packet.h
gobex/gobex-defs.c
gobex/gobex-debug.h
gobex/gobex-apparam.c
gobex/gobex-packet.c
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Mon, 21 Sep 2020 19:35:09 +0000 (12:35 -0700)]
gdbus: Add SPDX License Identifier
This patch adds SPDX License Identifier and removes the license text.
-------------------------------------
License COUNT
-------------------------------------
GPL-2.0-or-later : 6
License: GPL-2.0-or-later
gdbus/mainloop.c
gdbus/object.c
gdbus/polkit.c
gdbus/client.c
gdbus/watch.c
gdbus/gdbus.h
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Mon, 21 Sep 2020 19:00:25 +0000 (12:00 -0700)]
emulator: Add SPDX License Identifier
This patch adds SPDX License Identifier and removes the license text.
-------------------------------------
License COUNT
-------------------------------------
LGPL-2.1-or-later : 20
GPL-2.0-or-later : 2
License: LGPL-2.1-or-later
emulator/server.c
emulator/amp.c
emulator/hciemu.c
emulator/vhci.c
emulator/btdev.c
emulator/serial.h
emulator/le.h
emulator/le.c
emulator/main.c
emulator/amp.h
emulator/hciemu.h
emulator/bthost.h
emulator/btdev.h
emulator/vhci.h
emulator/serial.c
emulator/phy.c
emulator/smp.c
emulator/phy.h
emulator/bthost.c
emulator/server.h
License: GPL-2.0-or-later
emulator/b1ee.c
emulator/hfp.c
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Mon, 21 Sep 2020 19:00:24 +0000 (12:00 -0700)]
client: Add SPDX License Identifier
This patch adds SPDX License Identifier and removes the license text.
-------------------------------------
License COUNT
-------------------------------------
GPL-2.0-or-later : 11
License: GPL-2.0-or-later
client/adv_monitor.c
client/adv_monitor.h
client/advertising.h
client/display.c
client/main.c
client/display.h
client/agent.h
client/gatt.c
client/agent.c
client/advertising.c
client/gatt.h
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Mon, 21 Sep 2020 19:00:23 +0000 (12:00 -0700)]
btio: Add SPDX License Identifier
This patch adds SPDX License Identifier and removes the license text.
-------------------------------------
License COUNT
-------------------------------------
GPL-2.0-or-later : 2
License: GPL-2.0-or-later
btio/btio.h
btio/btio.c
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Mon, 21 Sep 2020 19:00:22 +0000 (12:00 -0700)]
attrib: Add SPDX License Identifier
This patch adds SPDX License Identifier and removes the license text.
-------------------------------------
License COUNT
-------------------------------------
GPL-2.0-or-later : 13
License: GPL-2.0-or-later
attrib/att-database.h
attrib/gattrib.h
attrib/gatttool.h
attrib/gatt-service.c
attrib/interactive.c
attrib/utils.c
attrib/gatt.c
attrib/gattrib.c
attrib/gatt-service.h
attrib/att.c
attrib/gatt.h
attrib/att.h
attrib/gatttool.c
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Mon, 21 Sep 2020 19:37:46 +0000 (12:37 -0700)]
android: Add SPDX License Identifier
This patch adds SPDX License Identifier and removes the license text.
-------------------------------------
License COUNT
-------------------------------------
Apache-2.0 : 80
LGPL-2.1-or-later : 42
GPL-2.0-or-later : 9
License: Apache-2.0
android/bluetoothd-wrapper.c
android/tester-hidhost.c
android/tester-map-client.c
android/hal-audio-aptx.c
android/hal-audio.c
android/hal-handsfree-client.c
android/tester-gatt.c
android/hal-pan.c
android/hal-socket.c
android/tester-hdp.c
android/tester-pan.c
android/tester-avrcp.c
android/hal-a2dp-sink.c
android/hal-gatt.c
android/hal-avrcp.c
android/tester-a2dp.c
android/hal-audio.h
android/hal-bluetooth.c
android/tester-socket.c
android/hal-health.c
android/hal-a2dp.c
android/hal-ipc.c
android/hal-avrcp-ctrl.c
android/hal-sco.c
android/hal-ipc.h
android/tester-main.c
android/hal-audio-sbc.c
android/hal-utils.c
android/hal-map-client.c
android/hal-handsfree.c
android/hal-log.h
android/hal.h
android/hal-utils.h
android/tester-bluetooth.c
android/hal-hidhost.c
android/audio_utils/resampler.h
android/audio_utils/resampler.c
android/system/audio.h
android/hardware/bt_sock.h
android/hardware/bt_gatt_client.h
android/hardware/bt_hh.h
android/hardware/bluetooth.h
android/hardware/hardware.h
android/hardware/bt_hf_client.h
android/hardware/bt_rc.h
android/hardware/bt_hf.h
android/hardware/bt_pan.h
android/hardware/bt_gatt_types.h
android/hardware/hardware.c
android/hardware/audio_effect.h
android/hardware/audio.h
android/hardware/bt_gatt_server.h
android/hardware/bt_gatt.h
android/hardware/bt_hl.h
android/hardware/bt_mce.h
android/hardware/bt_av.h
android/client/if-hh.c
android/client/if-sco.c
android/client/pollhandler.h
android/client/haltest.c
android/client/tabcompletion.c
android/client/if-hf-client.c
android/client/history.h
android/client/if-audio.c
android/client/terminal.h
android/client/if-av.c
android/client/if-main.h
android/client/if-av-sink.c
android/client/terminal.c
android/client/if-mce.c
android/client/if-hf.c
android/client/pollhandler.c
android/client/if-sock.c
android/client/if-rc-ctrl.c
android/client/if-rc.c
android/client/history.c
android/client/if-pan.c
android/client/if-gatt.c
android/client/if-bt.c
android/client/if-hl.c
License: LGPL-2.1-or-later
android/sco.h
android/socket.c
android/tester-main.h
android/hidhost.h
android/map-client.h
android/utils.h
android/hal-msg.h
android/health.h
android/avrcp-lib.c
android/bluetoothd-snoop.c
android/a2dp.c
android/bluetooth.h
android/a2dp-sink.c
android/handsfree-client.c
android/audio-msg.h
android/main.c
android/pan.c
android/ipc-tester.c
android/health.c
android/socket.h
android/handsfree.h
android/avrcp-lib.h
android/a2dp-sink.h
android/system-emulator.c
android/gatt.c
android/avrcp.h
android/pan.h
android/test-ipc.c
android/hidhost.c
android/a2dp.h
android/avrcp.c
android/sco-msg.h
android/bluetooth.c
android/map-client.c
android/handsfree-client.h
android/ipc.c
android/handsfree.c
android/gatt.h
android/ipc.h
android/ipc-common.h
android/compat/wordexp.h
android/cutils/properties.h
License: GPL-2.0-or-later
android/avdtp.h
android/avctp.c
android/avdtptest.c
android/sco.c
android/log.c
android/avdtp.c
android/avctp.h
android/compat/readline/history.h
android/compat/readline/readline.h
Change-Id: I838215f902a81a7f789345a2bd47e2685e331619
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Luiz Augusto von Dentz [Fri, 18 Sep 2020 01:03:31 +0000 (18:03 -0700)]
avdtp: Fix not checking if stream is already set as pending open
When receiving a Open command the stream will be set as pending_open but
the remote may attempt to send yet another Open command in the meantime
resulting in another setup and yet another timer leaving the old timer
active which will likely cause a crash when it expires.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Abhishek Pandit-Subedi [Fri, 11 Sep 2020 17:03:17 +0000 (10:03 -0700)]
doc: Add Suspend and Resume events
Add Controller Suspend Event and Controller Resume Event to identify
suspend or resume of the Bluetooth stack has occurred.
Also update Device Disconnected Event to indicate a new disconnect
reason: "Connection terminated by local host for suspend"
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Wed, 16 Sep 2020 22:34:53 +0000 (15:34 -0700)]
sixaxis: Fix crash caused by return of udev_device_get_property_value
This adds a NULL check before calling sscanf().
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Joseph Hwang [Fri, 21 Aug 2020 06:16:43 +0000 (23:16 -0700)]
doc/gatt-api: Add new error for StartNotify
When a device is disconnecting, StartNotify is not allowed. This adds a
new error type to the doc.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Joseph Hwang [Fri, 21 Aug 2020 06:16:42 +0000 (23:16 -0700)]
gatt: StartNotify is not allowed when device is disconnecting
This patch fixed a bluetoothd crash in register_notify_cb(). The
crash is incurred by an exception that under some situation, a
characteristic may be freed when register_notify_cb() is invoked.
When a device is disconnecting, the device interface would hold valid
for a while until the disconnection procedure between the client and
the server is completed. If another process happens to request to start
notification of a characteristic on the disconnecting device, it may
incur a problem. In this case, the client would still send the
StartNotify request since the characteristic object is still valid.
However, the characteristic may be freed soon and become invalid
when the corresponding callback function is invoked later. This
leads to the bluetoothd crash due to the segmentation fault.
To handle the exception, if another process requests to start
notification when the device is disconnecting, it should reject the
request.
Tested on Chrome OS that this patch fixes bluetoothd crash in
register_notify_cb().
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Howard Chung [Wed, 16 Sep 2020 07:16:52 +0000 (15:16 +0800)]
core: Add AdvertisementMonitor to bluetooth.conf
AdvertisementMonitor must be included in bluetooth.conf in order to
be able to call Release
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Howard Chung [Wed, 16 Sep 2020 07:16:51 +0000 (15:16 +0800)]
client: Expose ADV monitor objects
This adds logic to expose user-defined advertisement monitor to dbus and
also implements methods for exposed objects.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Howard Chung [Wed, 16 Sep 2020 07:16:50 +0000 (15:16 +0800)]
client: Implement more interfaces of ADV monitor in bluetoothctl
This patch creates a submenu in bluetoothctl and implements several
commands.
new commands:
[bluetooth]# menu monitor
[bluetooth]# add-or-pattern 1 2 ab0011
Advertisement Monitor 0 added
[bluetooth]# add-or-pattern-rssi -80, ,5 1 2 aa 3 4 ff
Advertisement Monitor 1 added
[bluetooth]# get-pattern all
Advertisement Monitor 0
path: /org/bluez/adv_monitor_app/0
type: or_patterns
pattern 1:
start position: 1
AD data type: 2
content: ab0011
Advertisement Monitor 1
path: /org/bluez/adv_monitor_app/1
type: or_patterns
rssi:
high threshold: -50
high threshold timer: 5
low threshold: -80
low threshold timer: 5
pattern 1:
start position: 1
AD data type: 2
content: aa
pattern 2:
start position: 3
AD data type: 4
content: ff
[bluetooth]# get-supported-info
Supported Features:
Supported Moniter Types: or_patterns
[bluetooth]# remove-pattern 0
Monitor 0 deleted
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Howard Chung [Wed, 16 Sep 2020 07:16:49 +0000 (15:16 +0800)]
client: Implement basic interface of ADV monitor in bluetoothctl
This patch implements some basic functions for ADV monitor in
bluetoothctl
[bluetooth]# show
...
Advertisement Monitor Features:
SupportedMonitorTypes: or_patterns
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Luiz Augusto von Dentz [Tue, 15 Sep 2020 17:45:06 +0000 (10:45 -0700)]
adapter: Add btd_ prefix to has_kernel_feature
APIs exposed to plugins shall have btd_ prefix.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Tue, 15 Sep 2020 03:04:19 +0000 (11:04 +0800)]
device: don't wait for timeout if RemoveDevice is called
RemoveDevice on adapter interface used to remove a device, even when
the device is connected. However, since the introduction of the new
30 seconds timeout when setting a device as temporary, RemoveDevice
doesn't immediately remove a connected device, but only disconnects
it and waits for the timer to expire before effectively removes it.
This patch removes the device as soon as it gets disconnected,
provided the disconnection is triggered by a call to RemoveDevice.
The regular timeout still applies for other cases.
Tested manually by calling RemoveDevice on a connected device,
and with ChromeOS autotest setup.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Abhishek Pandit-Subedi [Fri, 11 Sep 2020 22:30:37 +0000 (15:30 -0700)]
policy: Reconnect audio on controller resume
During system suspend, all peer devices are disconnected. On resume, HID
devices will reconnect but audio devices stay disconnected. As a quality
of life improvement, mark audio devices that were disconnected due to
suspend and attempt to reconnect them when the controller resumes (after
a delay for better co-existence with Wi-Fi).
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Abhishek Pandit-Subedi [Fri, 11 Sep 2020 22:30:36 +0000 (15:30 -0700)]
policy: Enable reconnect for a2dp-sink in defaults
Add a2dp-sink to default reconnects list.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Abhishek Pandit-Subedi [Fri, 11 Sep 2020 22:30:35 +0000 (15:30 -0700)]
adapter: Handle controller resume and notify drivers
Register for controller resume notification and notify the adapter
drivers when it occurs. Also adds the resume event kernel feature to
make sure the kernel supports this event.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Abhishek Pandit-Subedi [Fri, 11 Sep 2020 22:30:34 +0000 (15:30 -0700)]
adapter: Refactor kernel feature globals
Move all the kernel specific feature globals into a single
kernel_features bitfield and replace all uses with the bitfield instead.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:51:33 +0000 (23:51 -0700)]
doc: Update Advertisement Monitor API description
This modifies the following description to Advertisement Monitor API.
- Add org.bluez.Error.Failed to RegisterMonitor() method.
- Add more description about the usage of RegisterMonitor() and
UnregisterMonitor() methods.
- Add description about the ranges for the fields in property
RSSIThresholdsAndTimers.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:51:31 +0000 (23:51 -0700)]
adv_monitor: Handle D-Bus proxy event of an ADV monitor
This adds two handlers, one for adding and one for removing, of D-Bus proxy
events. The handler of property changes is set to NULL as intended,
since for simplicity no further changes on monitor's properties would
affect the ongoing monitoring.
The following test steps were performed with bluetoothctl.
- After registering the root path, expose two monitors and verify that
the proxy added event are received.
- Have two monitors added, unexpose the monitors, and verify that the
proxy removed events are received for those two monitors.
- Have two monitors added, unregister the monitors and verify that the
proxy removed events are received for those two monitors.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Luiz Augusto von Dentz [Mon, 14 Sep 2020 19:43:09 +0000 (12:43 -0700)]
gdbus: Make g_dbus_proxy_get_path take const proxy
This makes g_dbus_proxy_get_path take const proxy since it doesn't
change anything on the proxy and avoid pointless casts.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:51:29 +0000 (23:51 -0700)]
adv_monitor: Handle D-Bus client ready events
This adds a handler of client ready events. The handler replies to the
RegisterMonitor() method call.
The following tests were performed.
- Call RegisterMonitor() and expect to receive a return.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:51:27 +0000 (23:51 -0700)]
adv_monitor: Implement UnregisterMonitor()
This implements the UnregisterMonitor() method handler of ADV monitor
manager interface.
The following tests were performed.
- Issue a UnregisterMonitor() call with a nonexistent path and expect
org.bluez.Error.DoesNotExist as the return.
- Issue a UnregisterMonitor() call with a invalid path and expect
org.bluez.Error.InvalidArguments as the return.
- Issue RegisterMonitor() with a path, issue UnregisterMonitor() and
expect a successful method call return.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:51:25 +0000 (23:51 -0700)]
adv_monitor: Implement RegisterMonitor()
This implements the RegisterMonitor() method handler of ADV monitor
manager interface.
The following tests were performed.
- Issue a RegisterMonitor() call with a valid path and expect a
success as return.
- Issue a RegisterMonitor() call with an invalid path and expect
org.bluez.Error.InvalidArguments as return.
- Issue two Registermonitor() calls with the same path and expect
org.bluez.Error.AlreadyExists.
- Verify the values of the registered paths with logging.
- Verify D-Bus disconnection callback was triggered when the client detach
from D-Bus.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:51:23 +0000 (23:51 -0700)]
adv_monitor: Implement Get functions of Adv monitor manager properties
This implements the Get functions of SupportedMonitorTypes and
SupportedFeatures.
The following test was performed.
- Issue dbus-send to read SupportedMonitorTypes and SupportedFeatures.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:51:21 +0000 (23:51 -0700)]
adv_monitor: Introduce org.bluez.AdvertisementMonitorManager1 interface
This introduces the org.bluez.AdvertisementMonitorManager1 without
implementing handlers of methods and properties.
The following test was performed.
- Upon adapter registration, the info line of creating an ADV monitor
manager gets printed, and system bus emits the interface events of
org.bluez.AdvertisementMonitorManager1.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Sat, 12 Sep 2020 06:49:59 +0000 (23:49 -0700)]
adapter: Remove indirect dependency of headers
Given that adapter.h refers symbols from lib/bluetooth.h and lib/sdp.h,
these two headers should be included directly in adapter.h.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Sat, 29 Aug 2020 00:08:03 +0000 (17:08 -0700)]
btpclient: Fix gap reset not sending response
This patch fixes the GAP reset command to response the default settings
after resetting the stack.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Sat, 29 Aug 2020 00:08:02 +0000 (17:08 -0700)]
tools/btpclientctl: Add btpclient test application
This patch adds a test application for btpclient, which exercises the
BTP API.
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Tedd Ho-Jeong An [Sat, 29 Aug 2020 00:08:01 +0000 (17:08 -0700)]
btp: Update connect event structure
This patch updates the connect event struct to align withe the btp spec.
Opcode 0x82 - Device Connected event
Controller Index: <controller id>
Event parameters: Address_Type (1 octet)
Address (6 octets)
Connection Interval (2 octets)
Connection Latency (2 octets)
Supervision Timeout (2 octets)
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Luiz Augusto von Dentz [Fri, 11 Sep 2020 20:20:02 +0000 (13:20 -0700)]
emulator: Implement LE Remove CIG
This adds support for LE Remove CIG command.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Luiz Augusto von Dentz [Fri, 11 Sep 2020 20:07:57 +0000 (13:07 -0700)]
monitor: Fix decoding of LE Remove CIG
HCI_LE_Remove_CIG does actually returns the CIG_ID in addition to the
status.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Tue, 1 Sep 2020 04:00:00 +0000 (12:00 +0800)]
audio/transport: Don't set volume if it's invalid
Adding a check inside media_transport_update_volume to prevent
the volume being updated with an invalid value.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Wed, 2 Sep 2020 04:57:45 +0000 (12:57 +0800)]
avrcp: Add handler for GET_TOTAL_NUMBER_OF_ITEMS
According to the AVRCP spec, section 4.5, GetTotalNumberOfItems PDU
is mandatory for TG supporting category 1 or 3.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Yu Liu [Wed, 9 Sep 2020 21:26:43 +0000 (14:26 -0700)]
avrcp: Set volume if volume changed event is registered
Some audio devices don't list the AVRCP TG role in SDP but still support
absolute volume and volume changed event, this change should allow the
stack to control the volumes on these audio devices.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Manish Mandlik [Wed, 9 Sep 2020 19:40:01 +0000 (12:40 -0700)]
Disable auto-connect on device remove
Auto-connect is not disabled when a device is removed. So in case the
pairing is cancelled, the device is removed, but it stays in the kernel
auto-connect list. This causes future advertisement from that device to
trigger a pairing even if the user has already cancelled the pairing.
This patch disables auto-connect on device remove.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Wootak Jung [Wed, 23 Feb 2022 05:19:06 +0000 (14:19 +0900)]
Fix coverity issue
dead_error_condition: The condition op must be true.
CID 1263496 (#1 of 1): Logically dead code (DEADCODE)
Change-Id: I8f62cb261535f20b2f7cb028c57505f9d7a66a3c
Dohyun Pyun [Wed, 23 Feb 2022 02:16:08 +0000 (11:16 +0900)]
Reset disconnect timer for the incoming connection
Change-Id: I87c614d923b763ba80c0d6bd0049156ddb10a318
Signed-off-by: Dohyun Pyun <dh79.pyun@samsung.com>
Ayush Garg [Tue, 15 Feb 2022 07:35:15 +0000 (13:05 +0530)]
LE CoC: Add support for L2CAP_LE type socket
This patch adds following
- Implement method to create and remove L2CAP_LE socket
- Implement method to listen and connect to L2CAP_LE socket
Change-Id: I7f4f6ba5fe49b6d3fa05bfbc3a1b2bfdd269c6bb
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Pyun DoHyun [Wed, 9 Feb 2022 06:19:44 +0000 (06:19 +0000)]
Merge "Fix response_needed setting logic" into tizen
Wootak Jung [Wed, 9 Feb 2022 05:59:03 +0000 (14:59 +0900)]
Fix response_needed setting logic
response_needed should be true in case opcode is EXEC_WRITE_REQ.
EXEC_WRITE_REQ is used if the data size to write is bigger than
mtu size. otherwise, WRITE_REQ is used.
Change-Id: Ie9fbbeae9c0f0148c5dbd4938dafb1dbc6078cc2
Dohyun Pyun [Wed, 9 Feb 2022 05:15:38 +0000 (14:15 +0900)]
Set the default MTU size as 512 byte for Robot
Change-Id: I017e84872e66d909c3365e5e7d233517cb831753
Signed-off-by: Dohyun Pyun <dh79.pyun@samsung.com>
dh79pyun [Tue, 8 Feb 2022 03:52:19 +0000 (12:52 +0900)]
Add the plugin for DA product
Change-Id: Ic449dba4202af8e8254f870b85f3ec79fe344af8
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
Anuj Jain [Fri, 28 Jan 2022 11:08:38 +0000 (16:38 +0530)]
GATT: Fix crash in ccc_write_cb.
When gatt client is disconnected after notification enable,
The pending_op becomes null which when used in stop_notify_setup
causes bluetoothd to crash.
This patch will fix the same.
Change-Id: I75316e67be6a1b941457066f05e17ddf2db8732d
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Pyun DoHyun [Fri, 28 Jan 2022 01:58:09 +0000 (01:58 +0000)]
Merge "Don't remove the device, if LE connection exist" into tizen
dh79pyun [Fri, 28 Jan 2022 01:33:54 +0000 (10:33 +0900)]
Don't remove the device, if LE connection exist
Change-Id: Idb006cc0ceebc1a7315443fb3f06513da65b7f50
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
Anuj Jain [Fri, 7 Jan 2022 08:01:04 +0000 (13:31 +0530)]
Fix Svace issue
This patch fixes Svace issue:
474931: DEREF_OF_NULL.RET.STAT
Change-Id: Id93e55f8beffba9a35e899a9c5be33d715bfc8dc
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Anupam Roy [Mon, 3 Jan 2022 09:57:51 +0000 (09:57 +0000)]
Merge "a2dp: Fix crash on connection lost" into tizen
dh79pyun [Mon, 3 Jan 2022 07:04:56 +0000 (16:04 +0900)]
Revert "Add avdtp ref when disconnect timer is active"
This reverts commit
f3f1e150ceb4ada38f3d921ed7d4f1a0e5771abc.
Change-Id: Ie99945ff24d8dbe254fcf51f33a4499b4e74f0c8
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
Ayush Garg [Tue, 28 Dec 2021 16:04:42 +0000 (21:34 +0530)]
a2dp: Fix crash on connection lost
when the channel is removed on connection lost, the
setup->chan pointer becomes dangling which causes crash
in find_remote_sep.
So mark this pointer as NULL whenever the channel is removed.
Change-Id: I1b3fe81df18d4ea8eed00739a9db7d0e7232dda0
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Ayush Garg [Mon, 27 Dec 2021 10:28:08 +0000 (15:58 +0530)]
Add avdtp ref when disconnect timer is active
This will be unref either at disconnect_timeout
or remove_disconnect_timer.
Change-Id: I3638ba446200f6c4d82e5f0923c9086f3519c283
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
dh79pyun [Wed, 22 Dec 2021 23:43:11 +0000 (08:43 +0900)]
Use g_memdup2 for glib 2.70 upgrade
Change-Id: I026932523b303f0e21354baaf1301e7bbea144d9
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Wed, 22 Dec 2021 23:18:05 +0000 (08:18 +0900)]
Revert "Use g_memdup2 instead of g_memdup"
This reverts commit
82053d0b6c107e3dacb63bcb36c0efe49e45f2bd.
Change-Id: I80b1506ed69fa7a89e7c364047acbebc9e045489
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Wed, 22 Dec 2021 23:17:19 +0000 (08:17 +0900)]
Revert "Fix the 64bit build error for g_memdup"
This reverts commit
98c664c20bd85ef09e9eb8c94235d37a9172d4f9.
Change-Id: Ifa0b40080c257205012a642e5059a765f169f402
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Mon, 13 Dec 2021 06:42:00 +0000 (15:42 +0900)]
Fix the 64bit build error for g_memdup
Change-Id: Iaf38a435af93c840ecdcbb77b49510da01edcebc
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Mon, 13 Dec 2021 04:40:22 +0000 (13:40 +0900)]
Use g_memdup2 instead of g_memdup
Change-Id: I436d0b0fa3993d3718a745632a265067501d465f
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Fri, 10 Dec 2021 04:57:02 +0000 (13:57 +0900)]
Support the multi-advertisement for the robot reference
Change-Id: Id45295d76f7b8afceadf323378cc0fb72fbf401f
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Fri, 10 Dec 2021 05:12:42 +0000 (14:12 +0900)]
Increase the version
Change-Id: Iac5203904bfc746077bd50153740aa9895131c12
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Fri, 10 Dec 2021 04:57:02 +0000 (13:57 +0900)]
Support the multi-advertisement for the robot reference
Change-Id: I671fc3d6c5cd87a823e3d4485498bac7a0d2a6fc
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Wed, 10 Nov 2021 23:04:00 +0000 (08:04 +0900)]
Modify the dbus policy for robot profile
Change-Id: I16389887221197cd24b1e84445090077d4e4cee6
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Sun, 7 Nov 2021 23:11:43 +0000 (08:11 +0900)]
Increase the version
Change-Id: Iacc44f2912922fe269d2eaea898d7ad07e52624b
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
Luiz Augusto von Dentz [Thu, 21 Jan 2021 00:25:09 +0000 (16:25 -0800)]
a2dp: Handle remote SEP disappearing
Some devices (Sony WH-1000XM4) seems to dinamically change its endpoints
depending on the configuration which may leave behind endpoints loaded
from cache that are no longer valid.
gh-issue: https://github.com/bluez/bluez/issues/85
Change-Id: I0e5ac965cc09da7e7d1ac1c554d77d75a0d65e22
Signed-off-by: DoHyun Pyun <dh79.pyun@samsung.com>
dh79pyun [Wed, 3 Nov 2021 04:08:24 +0000 (13:08 +0900)]
Increase the version
Change-Id: I7e0eed9586d869fc0ad97048adc24c0406144013
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Wed, 3 Nov 2021 02:38:43 +0000 (11:38 +0900)]
Fix A2DP sink disconnection issue on streaming
The logic of disconnect_timeout was changed in bluez 5.55.
So we should modify Tizen specific logic for that.
Change-Id: Ic54b39d08b7f403407ae7dfa9ca6c9207bb1c4c5
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
dh79pyun [Wed, 13 Oct 2021 02:31:54 +0000 (11:31 +0900)]
Enable Multi ADV only for wearable profile
Change-Id: Ieeec8d5f2278e0cc72e613c81f0725da3a8bab54
Signed-off-by: dh79pyun <dh79.pyun@samsung.com>
Anuj Jain [Tue, 3 Aug 2021 08:46:59 +0000 (14:16 +0530)]
GATT: Send client address to HAL layer on Notification state change
In gatt Server role Client address is added to dbus method calls
corresponding to StartNotify and StopNotify methods at BLUEZ layer.
This patchset should be merged with the following capi and
bluetooth-frwk's patchset in order to match API and avoid crash:
bluetooth-frwk Change-Id: Ib54ba54c318692b4ee0eaef9b2310c60dadeb661
capi Change-Id: Ic4868234a4fc682f9bff2c66ac1aee2683f3d6c6
Change-Id: I81a0994f2299e988f8ef6428537647c899700fda
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Wootak Jung [Tue, 15 Jun 2021 07:31:07 +0000 (16:31 +0900)]
Fix code unreachable issue
Change-Id: Ibe19389b7c27ec24191a3ecb965f741b83fc4c14
Signed-off-by: Wootak Jung <wootak.jung@samsung.com>
Wootak Jung [Tue, 1 Jun 2021 00:12:07 +0000 (09:12 +0900)]
Add robot conf file
Change-Id: Id601ff4b3972ed3bff86d00b1d35180973366db5
Signed-off-by: Wootak Jung <wootak.jung@samsung.com>
Anuj Jain [Mon, 24 May 2021 08:46:43 +0000 (14:16 +0530)]
Fix the coverity issue (resource leak)
Variable str must be free after its usage.
This change fixes the same.
Change-Id: I880aa48cbf31d13a27a47b7fc08807a56af18fd3
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Wootak Jung [Tue, 11 May 2021 02:10:53 +0000 (11:10 +0900)]
a2dp: Fix crash on discover_cb
There have been reports of crashes on discover_cb where the setup
would most likely already have been freed but discover_cb would still
be called, so instead of assuming the setup pointer would be valid try
to lookup the list of active setups and log a warning when it happens.
Change-Id: Icca1608c48be43174492d69204c8d31b158a99df
Signed-off-by: Wootak Jung <wootak.jung@samsung.com>
Ayush Garg [Mon, 12 Apr 2021 10:15:09 +0000 (15:45 +0530)]
Update the version to 5.55
Change-Id: I9028e219dc378c0f3218d85b267d646541da7ddd
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Marcel Holtmann [Sun, 6 Sep 2020 13:51:06 +0000 (15:51 +0200)]
Release 5.55
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Marcel Holtmann [Sun, 6 Sep 2020 13:50:53 +0000 (15:50 +0200)]
build: Update library version
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Marcel Holtmann [Sat, 5 Sep 2020 19:18:52 +0000 (21:18 +0200)]
lib: Update company identifiers
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Thu, 3 Sep 2020 03:50:39 +0000 (11:50 +0800)]
avrcp: Implement Press/Hold/Release method for MediaPlayer1
This allows us to send any passthrough command, complete with the
support to hold down the key. Using Press() will automatically
release the key, while using Hold() will keep the key held until
an explicit call to Release() is received.
This doesn't allow us to hold multiple keys simultaneously, since
according to the AV/C Panel Subunit Specification, part 9.4, when the
target receive a pressed command without receiving a release command
of the previous key, it will be treated as if the release command is
sent but not received.
Previously, the rewind and fast_forward keys are unique in terms that
they are treated as holdable keys, this patch preserves that behavior
of calling Rewind() and FastForward(). A rewind event which is
reported via the new Press() method will automatically be released
instead.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Thu, 3 Sep 2020 03:50:37 +0000 (11:50 +0800)]
doc/media-api: Add Press/Hold/Release methods for MediaPlayer1
This allows us to send any passthrough command. The button can also
be held for an extended amount of time.
Reviewed-by: Michael Sun <michaelfsun@chromium.org>
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Barry Byford [Sun, 30 Aug 2020 07:11:08 +0000 (08:11 +0100)]
client: Fix typo in bluetoothctl
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Abhishek Pandit-Subedi [Sat, 29 Aug 2020 01:02:09 +0000 (18:02 -0700)]
monitor: Add support for Suspend and Resume events
Add support to pretty print Suspend and Resume mgmt events in btmon.
Example:
@ MGMT Event: Controller Suspended (0x002d) plen 1
Suspend state: Page scanning and/or passive scanning (2)
@ MGMT Event: Controller Resumed (0x002e) plen 8
Wake reason: Remote wake due to peer device connection (2)
LE Address: CD:F3:CD:13:C5:9A (OUI CD-F3-CD)
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Abhishek Pandit-Subedi [Sat, 29 Aug 2020 01:02:08 +0000 (18:02 -0700)]
mgmt: Add controller suspend and resume events
Add the controller suspend and resume events.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
edef [Thu, 27 Aug 2020 11:27:59 +0000 (11:27 +0000)]
profiles/network: Log connection event after setting device name
Without reordering these two statements, the logs look like this:
bnep%d connected
bnep0 disconnected
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Jie Jiang [Wed, 26 Aug 2020 06:37:42 +0000 (23:37 -0700)]
gatt: Accept empty array in parse_includes()
Currently parse_includes() will return false if the "Includes" property
is an empty array. Empty array in the "Includes" property should be
treated as valid.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Yu Liu [Mon, 24 Aug 2020 18:19:03 +0000 (11:19 -0700)]
adapter: Mark device temporary state pairing failure
This caused the device hanging around as a discovered device forever
even if it is turned off or not in present.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Sonny Sasaka [Fri, 21 Aug 2020 18:01:06 +0000 (11:01 -0700)]
device: Fix race condition between device connection and disconnection
When Connect() is called and waiting for return, dev_disconnected may be
called due to MGMT_EV_DEVICE_DISCONNECTED event from kernel. In that
case reply to client that the connection failed otherwise the dbus
method will timeout because bluetoothd never replies.
Tested with simulation of a lot of Connect() to bluetooth devices and
check that error is returned from bluetoothd rather than dbus timeout
when this race condition happens.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Sonny Sasaka [Fri, 21 Aug 2020 17:58:38 +0000 (10:58 -0700)]
adapter: Fix crash in discovery_disconnect
discovery_disconnect crashed because the adapter pointer has been freed
before. This patch makes sure that discovery list is cleaned up before
adapter pointer is freed.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Sonny Sasaka [Fri, 21 Aug 2020 04:35:36 +0000 (21:35 -0700)]
input/device: Unregister all UHID event listeners at UHID_DESTROY
When destroying UHID, we should also unregister all event listeners so
that they don't get double registered at reconnection. It fixes a bug
where battery report is not available to kernel after reconnection and
also prevents memory leak.
Tested with Logitech M535 mouse:
* Connect mouse to the device running BlueZ
* cat /sys/class/power_supply/hid-{addr}-battery/capacity # works
* Disconnect mouse
* Reconnect mouse
* cat /sys/class/power_supply/hid-{addr}-battery/capacity # still works
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Fri, 21 Aug 2020 07:28:12 +0000 (00:28 -0700)]
client: Add cancel-pairing command
This adds cancel-pairing command which can be used to cancel the ongoing
pairing.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Tue, 18 Aug 2020 07:34:10 +0000 (15:34 +0800)]
main: add configurable refresh_discovery parameter
This is to configure the default behavior of issuing SDP query
to update the services upon profile connection.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Tue, 18 Aug 2020 07:34:09 +0000 (15:34 +0800)]
device: Don't browse SDP if HIDSDPDisable is set
According to the HID1.1 spec, part 5.3.4.9:
The HIDSDPDisable attribute is a Boolean value, which indicates
whether connection to the SDP channel and Control or Interrupt
channels are mutually exclusive. This feature supports Bluetooth
HID devices that have minimal resources, and multiplex those
resources between servicing the initialization (SDP) and runtime
(Control and Interrupt) channels.
However, Bluez still tries to connect SDP upon HID connection,
regardless of the existence of the HIDSDPDisable attribute.
This patch prevents the connection of SDP after HID has been
established, if the device has HIDSDPDisable attribute.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Miao-chen Chou [Tue, 18 Aug 2020 06:19:39 +0000 (23:19 -0700)]
shared/ad: move MAX_ADV_DATA_LEN macro to the header
This moves MAX_ADV_DATA_LEN macro to src/shared/ad.h and rename it to
BT_AD_MAX_DATA_LEN.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Daniel Winkler [Fri, 14 Aug 2020 22:58:18 +0000 (15:58 -0700)]
advertising: Fix dbus response for over-advertising
client_free would always send a dbus method_return to fix the case where
a request to Unregister occurred before the MGMT call returned. However,
in the code path where too many advertisements are registered, this
method_return prevents the failure from being sent properly. This patch
makes sure the reference to the register_advertisement DBusMessage is
not stored in the client structure until the end of
register_advertisement. This ensures that we only respond once, either
in register_advertisement or in client_free, not both.
It also changes the dbus response in the fast unregister_advertisement
case from a method_return to a btd_error_failed, since the registration
was never allowed to complete, and thus was not successful.
The patch was tested in the following ways:
To verify it did not break the segfault fix in
caff2b48ca54bbc57b5da3f63317767489aa5b48, I repro'd the failure by
quickly unregistering after registering, and verified that the segfault
is still fixed with this change.
Ran through our automated tests that register too many advertisements
and verify that the registration fails with the intended "Maximum
Advertisements Reached" error response.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Howard Chung [Wed, 5 Aug 2020 02:05:36 +0000 (10:05 +0800)]
avrcp: include all player settings in notif event
According to AVRCP 1.6.2 spec section 6.7.2 table 6.39, all player
application settings should be returned to the CT and let CT to
determine which settings have changed. Currently bluez only returns
the changed attribute instead. This patch also addresses a potential
issue on which the number of application settings mismatches with
the actual number returned.
Change-Id: I3fbedd0d73f72c9de5d24af173aded4adf0b9a19
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Mon, 3 Aug 2020 06:52:24 +0000 (14:52 +0800)]
input/device: Send UHID_DESTROY upon disconnection
According to the uhid documentation: "If your device disconnects,
you should send an UHID_DESTROY event"
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Mon, 3 Aug 2020 06:52:23 +0000 (14:52 +0800)]
input/device: Implement handle for UHID_SET_REPORT
This patch listens to UHID_SET_REPORT event and forwards this
message to the hid device. Upon reply, we also send a report back
to the kernel as UHID_SET_REPORT_REPLY.
hidp_send_set_report no longer listen UHID_OUTPUT events, that is
handled by hidp_send_output instead.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Mon, 3 Aug 2020 06:52:22 +0000 (14:52 +0800)]
input/device: Replace UHID_FEATURE with UHID_GET_REPORT
According to kernel's uhid.h, UHID_FEATURE is obsolete and is
replaced with UHID_GET_REPORT.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Thu, 16 Jul 2020 18:04:33 +0000 (02:04 +0800)]
input: Remove bonding info when receiving virtual cable unplug
From Bluetooth HID Profile 1.1 Spec: If a Virtual Cable is
unplugged via a HID control Virtual Unplug command, then both the
Bluetooth HID device and Bluetooth HID Host shall destroy or
invalidate all Bluetooth bonding and Virtual Cable information
that was previously stored in persistent memory for the respective
Virtually Cabled devices and hosts.
This patch removes the bonding information upon receiving and/or
sending a "virtual cable unplug".
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
Archie Pusaka [Thu, 16 Jul 2020 18:04:32 +0000 (02:04 +0800)]
device: add device_remove_bonding function
This patch splits the "bonding removal" function in device.c,
because we need to remove bonding information when receiving
"virtual cable unplug" in HID profile.
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>