Commit Graph

1178 Commits

Author SHA1 Message Date
Szymon Janc
5ab76c6042 android/pan: Pass error in nap_remove_bridge
Don't return EOPNOTSUPP but just pass error from errno.
2014-02-07 11:21:22 +02:00
Szymon Janc
b4fbbb033e android/pan: Use ioctl instead of sysfs for setting forward delay
Using sysfs is causing problems due to filesystem permissions
(bluetoothd is running as bluetooth user) and bluetoothd already has
required capabilities for setting forward delay through ioctl.
2014-02-07 11:21:22 +02:00
Ravi kumar Veeramally
ce8bf58e5f android/pan: Fix bnep interface name
Android uses bt-pan static interface in PAN profile. In server role
it uses it as bridge name. But current implementaion passes interface
names like bnep0, bnep1... Android Framework is unaware of this name
and unable to allocate IP address after profile connection setup.
2014-02-07 11:21:22 +02:00
Szymon Janc
375bed1c4d android/pan: Fix unregistering NAP bridge
This fix not removing NAP bridge in case of error or last device
disconnect.
2014-02-07 11:21:22 +02:00
Szymon Janc
29bf1a3aab android/pan: Move functions up to avoid forward declarations 2014-02-07 11:21:22 +02:00
Szymon Janc
800c6b6678 profiles/network: Allow to pass interface name to bnep_new 2014-02-07 11:21:22 +02:00
Szymon Janc
7498648468 android/client-audio: Fix not stopping play thread on write error 2014-02-06 15:08:57 +01:00
Luiz Augusto von Dentz
7af429c001 android/pan: Use g_slist_free_full to free devices list
Calling g_slist_remove within the callback of g_slist_foreach is very
inefficient as it has to iterate in the list twice to figure which
element to remove.
2014-02-06 15:23:50 +02:00
Luiz Augusto von Dentz
1d1fc983e4 android/hidhost: Use g_slist_free_full to free devices list
Calling g_slist_remove within the callback of g_slist_foreach is very
inefficient as it has to iterate twice in the list to figure which
element to remove.
2014-02-06 15:23:00 +02:00
Luiz Augusto von Dentz
939d25f0b0 android/AVRCP: Fix possible invalid read
Like in A2DP case it is not safe to call g_slist_remove within
g_slist_free_full callback.
2014-02-06 14:32:18 +02:00
Luiz Augusto von Dentz
8da3f38086 android/A2DP: Fix invalid read
Invalid read of size 8
   at 0x30EE465A78: g_slice_free_chain_with_offset (in /usr/lib64/libglib-2.0.so.0.3800.2)
   by 0x418209: bt_a2dp_unregister (a2dp.c:1576)
   by 0x4039E6: main (main.c:347)
 Address 0x4f2d248 is 8 bytes inside a block of size 16 free'd
   at 0x4A07577: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x30EE44EF7E: g_free (in /usr/lib64/libglib-2.0.so.0.3800.2)
   by 0x30EE4655CA: g_slice_free1 (in /usr/lib64/libglib-2.0.so.0.3800.2)
   by 0x30EE465F0C: g_slist_remove (in /usr/lib64/libglib-2.0.so.0.3800.2)
   by 0x41645F: a2dp_device_free (a2dp.c:174)
   by 0x30EE466477: g_slist_foreach (in /usr/lib64/libglib-2.0.so.0.3800.2)
   by 0x30EE46649A: g_slist_free_full (in /usr/lib64/libglib-2.0.so.0.3800.2)
   by 0x418209: bt_a2dp_unregister (a2dp.c:1576)
   by 0x4039E6: main (main.c:347)
2014-02-06 14:00:56 +02:00
Luiz Augusto von Dentz
cbce18be22 audio/AVCTP: Lookup key name from key_map table
The key_map table already contain the key name.
2014-02-05 16:23:42 +02:00
Luiz Augusto von Dentz
b47d64f7a5 audio/AVCTP: Add keys that can be mapped to uinput
This adds the remaining AV/C keys that can be mapped to uinput.
2014-02-05 16:22:22 +02:00
Jakub Tyszkowski
83c7a21fe4 android/client-audio: Add sine generator as fallback
When no audio file path is provided use sine generator.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
5002b8a9b9 android/client-audio: Add init_check
Add calling init check for audio device.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
11bdba6ee4 android/client-audio: Add setting sample rate
Add setting sample rate for output stream.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
0a72877566 android/client-audio: Add set_parameters
Add seting output stream parameters using key=value pairs string
(key1=value1;key2=value2).
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
0fa227bd77 android/client-audio: Add get_parameters for output
Get current parameters for the audio stream.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
9613c04075 android/client-audio: Add getting sample rate
Get current sample rate for output stream.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
5c4241f514 android/client-audio: Add getting audio format
Get current audio format for output stream.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
3fd697c505 android/client-audio: Add get_channels
Get audio channels configuration.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
6f94ee9b6d android/client-audio: Add get_buffer_size for output
Get buffer size for output stream.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
e19841f0d3 android/client-audio: Add get_latency for output
Get output stream latency.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
d40b147c2b android/client-audio: Add playback suspend/resume
Add audio stream suspending and resuming.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
66e32e61d5 android/client-audio: Add audio file playback
This patch adds audio file playback capability. Proper 16-bit signed
float stereo PCM file is needed.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
4d36a19391 android/client-audio: Add open/close output stream
Add opening and closing output stream.
2014-02-05 15:08:24 +01:00
Jakub Tyszkowski
1e831f0551 android/client-av: Fix checking for a2dp interface 2014-02-05 15:08:24 +01:00
Luiz Augusto von Dentz
16c6bf15d5 android: Disconnect AVRCP once A2DP is disconnected
If A2DP is disconnected also disconnect AVRCP.
2014-02-05 14:44:20 +01:00
Luiz Augusto von Dentz
a8a4a233b9 android: Connect AVRCP once A2DP is connected
In case of being the initiator of the A2DP connection also attempt to
connect AVRCP.
2014-02-05 14:44:20 +01:00
Luiz Augusto von Dentz
65cfccf1b1 android/AVRCP: Add bt_avrcp_disconnect
This adds bt_avrcp_disconnect function which can be used to disconnect
AVRCP sessions.
2014-02-05 14:44:20 +01:00
Luiz Augusto von Dentz
d0d30cace4 android/AVRCP: Add bt_avrcp_connect
This adds bt_avrcp_connect function which can be used to request AVRCP
connections.
2014-02-05 14:44:20 +01:00
Andrei Emeltchenko
ed713a8319 android/handsfree: Fix memory leak
Free classes if sdp_get_access_protos fails.
2014-02-05 14:44:20 +01:00
Szymon Janc
5ca0c401ef android/handsfree: Fix address printed in debug 2014-02-05 11:15:33 +01:00
Sebastian Chlad
7bc33b7eb3 android/pts: Update PICS and PTS for AVCTP
Since we do not support AVCTP fragmentation for now we shell set PICS
settings for AVCTP accordingly as well as set respective PTS test cases
as N/A
2014-02-05 10:46:59 +01:00
Szymon Janc
f52cd974a3 android/handsfree: Use NULL instead of zero for pointers 2014-02-05 10:03:30 +01:00
Szymon Janc
077a899e87 android/handsfree: Add disconnect command handling 2014-02-05 09:53:54 +01:00
Szymon Janc
9ae2eda45d android/handsfree: Add connect command handling
This allows to query SDP for RFCOMM channel and connect.
2014-02-05 09:53:54 +01:00
Szymon Janc
d404ab9874 android/handsfree: Add initial code for AT commands processing
Currently always reply with error and disconnect connection.
2014-02-05 09:53:54 +01:00
Szymon Janc
d08d1dbb2a android/handsfree: Add support for RFCOMM connection handling
This adds incoming connection handling and initial connection state
tracking. Only one device is allowed to be connected at the same time.
2014-02-05 09:53:54 +01:00
Szymon Janc
82d4ce30ce android/handsfree: Add SDP record for AG
Service Name: Hands-Free Audio GatewayService RecHandle: 0x10001
Service Class ID List:
  "Handsfree Audio Gateway" (0x111f)
  "Generic Audio" (0x1203)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 13
Profile Descriptor List:
  "Handsfree" (0x111e)
    Version: 0x0106
2014-02-05 09:53:53 +01:00
Szymon Janc
370e59fe13 android/hal-handsfree: Implement sending commands
This implements HAL interface methods and pass commands over IPC.
2014-02-05 09:53:53 +01:00
Szymon Janc
2d9378292f android/hal-handsfree: Implement notifications handling
This implements all notifications handlers and call proper HAL
callbacks.
2014-02-05 09:53:53 +01:00
Szymon Janc
74241d6755 android/handsfree: Add stubs for commands handlers
Add empty handlers for all IPC commands.
2014-02-05 09:53:53 +01:00
Szymon Janc
729fd52b8b android/handsfree: Add commands and events definition to IPC header 2014-02-05 09:53:53 +01:00
Szymon Janc
db17fbe467 android/handsfree: Add initial files
This adds initial HAL and daemon code for Handsfree profile.
2014-02-05 09:53:53 +01:00
Szymon Janc
49b7522726 android/bluetooth: Send prop change event only if prop was changed 2014-02-05 09:46:33 +01:00
Szymon Janc
13f1bbffef android/bluetooth: Refactor update_found_device function
This function grown too big and was hard to follow. Split it to helpers
for clarity.
2014-02-05 09:46:33 +01:00
Szymon Janc
d334b11100 android/bluetooth: Add threshold to RSSI change
There is no need to report very small RSSI changes.
2014-02-05 09:46:33 +01:00
Szymon Janc
ef2b882fcc android/unit: Some codestyle cleanups 2014-02-04 21:35:11 +01:00
Szymon Janc
e6d44eb406 android/unit: Make tests names shorter 2014-02-04 21:35:11 +01:00