9e030fde05352ec4385d7baf6cc2af89e95e039c |
|
25-Jun-2017 |
Jakub Pawlowski <jpawlowski@google.com> |
Rename bt_bdaddr_t into RawAddress (3/3) Test: compilation test Change-Id: I4571721a0c6165a66450ee157a53d8d15bfc45d0
/system/bt/bta/ag/bta_ag_int.h
|
c752e135d66f80c0b2efc35292ab8ddfd8227d61 |
|
16-Jun-2017 |
Jakub Pawlowski <jpawlowski@google.com> |
Replace BT_ADDR with bd_addr_t in bta_sys related code Test: compilation test Change-Id: Idab6e9c03621c5540b4a3a7fa537dff71a25ce3f
/system/bt/bta/ag/bta_ag_int.h
|
c2276b06572ab6fc1f900fbb1f41087e77d47e2a |
|
10-Jun-2017 |
Jakub Pawlowski <jpawlowski@google.com> |
Use bt_bdaddr_t instead of BD_ADDR Test: compilation test, sl4a GattReadTest Change-Id: I8d1bd6914aec55bb53495b1d0d5e3d37b86865e6
/system/bt/bta/ag/bta_ag_int.h
|
d3ae18b3b3c65e38bbce5e3bf2882f4e050077dd |
|
08-Jun-2017 |
Jack He <siyuanh@google.com> |
eSCO: Limit number of retries after mSBC connection failure * When peer device supports mSBC and codec negotiation, Fluoride stack will try to do the following when establishing a eSCO/SCO connection: 1) Negotiate to mSBC by sending +BCS:2 2) Try establishing eSCO/SCO connection using mSBC T2 settings 3) If that failed, downgrade to mSBC T1 settings and retry 4) If that failed, re-negotiate codec to CVSD, by sending +BCS:1 5) Retry using CVSD S4 (HFP 1.7 and above) or S3 settings 6) If this failed stop trying and report failure to upper stack * Retry is achieved by: * Retry is only possible when inuse_codec = BTA_AG_CODEC_MSBC * Set codec_msbc_settings to BTA_AG_SCO_MSBC_SETTINGS_T1 when T2 failed to connect in step 3 above * Set codec_fallback to true when T1 failed so that CVSD is used in step 4 above * Retry stop is achieved by: * Set inuse_codec = BTA_AG_CODEC_CVSD * Set codec_msbc_settings back to BTA_AG_SCO_MSBC_SETTINGS_T2 * Set codec_fallback to false and codec_updated to true so that the stack is ready for the next application triggerred SCO connection attempt * Removed retry_with_sco_only as both Setup Synchronous Connection Command (0x0028) and Enhanced Setup Synchronous Connection Command (0x003D) fall back to SCO connection if eSCO is not supported. See page 858/2772 and 895/2772 of BT4.2 specification document * Besides both code paths are the same for retry_with_sco_only after eSCO changes went in Bug: 62426841 Test: make, HFP regression, testplans/91406 Change-Id: I205311c55e8763c48b6eb43c27f242927384036e
/system/bt/bta/ag/bta_ag_int.h
|
acdc11cae50e335175cfb16935dec160b0327966 |
|
19-Apr-2017 |
Zach Johnson <zachoverflow@google.com> |
Allow blocking AG SCO connects by policy Needed for devices that support both HFP AG and HFP HF. btsnoop logs show the sequence of events leading to failure: (corroborated by bt logcat) 1. ACL connection with remote phone established on handle 0x01 2. ACL connection with remote headset established on handle 0x02 3. Incoming call in HF role from phone 4. Phone call locally published to telecom 5. Answer incoming call 6. SCO connection established with phone in HF role 7. AG role with headset picks up on call state change to answered via BTA_AG_IN_CALL_CONN_RES 8. Inside handler for BTA_AG_IN_CALL_CONN_RES, bta_ag_sco_open called to establish the SCO connection in the AG role with the headset, stomping on the previous (wanted) SCO connection with the phone. Fix is to publish the SCO audio route policy to fluoride, so we can stop 8 from happening. Bug: 32958838 Test: manual: received incoming call in HF role, audio worked both ways; recieved incoming MT call, headset audio in AG role worked both ways Change-Id: I12961598e8200bd1d5adb46ee8ec3a802114b80a
/system/bt/bta/ag/bta_ag_int.h
|
a3745c645f3ab5b80a7325092bd6bb14accc265f |
|
23-May-2017 |
Jack He <siyuanh@google.com> |
HSP: Use peer_version during SCO setup * HSP profile should use peer_version obtained through SDP search to determine its behavior during SCO setup instead of a local version during initialization * Added a WARNING message if SDP search failed to get remote HSP version, the default behavior is to use HSP 1.0 * Changed SDP search initialization to look for one UUID at a time * See Bluetooth Erratum 3507 Test: make, HSP PTS test Bug: 38210042 Change-Id: I67ce615a785b25a2e9304613a29d9be66a656c54
/system/bt/bta/ag/bta_ag_int.h
|
400ac497f45181d3c64f6a19687992de9b69b094 |
|
08-May-2017 |
Jack He <siyuanh@google.com> |
eSCO: Additional fix to get eSCO working for HFP and HSP (3/5) * Removed vendor specific call after codec negotiation and before eSCO command is sent to Bluetooth chip * Removed vendor specific call after a SCO connection is requested by the peer * Removed vendor specific save audio state methods Bug: 19540029 Test: make, HFP PTS test, testplans/86884, testplans/87103 Change-Id: I899405a8eaa2f38ee0de04949c5288f9eefa74df
/system/bt/bta/ag/bta_ag_int.h
|
3e634d6c1e83f053005c9abdbd89e662ad81c4d4 |
|
10-Feb-2017 |
Myles Watson <mylesgw@google.com> |
eSCO: Remove BTM_WBS_INCLUDED from the stack (2/5) All of our platforms support WBS. Bug: 19540029 Test: make, HFP PTS test, testplans/86884, testplans/87103 Change-Id: I384d49f73935ebb35b17132e71c85174797c435e
/system/bt/bta/ag/bta_ag_int.h
|
57f6508cf7b22788fa2e7a739cec241b785718fb |
|
09-Feb-2017 |
Mudumba Ananth <ananthm%broadcom.com@gtempaccount.com> |
eSCO: BT 4.1 Enhanced SCO command (1/5) Added support for BT 4.1 enhanced SCO feature on the stack. This feature allows the stack to create a SCO connection with remote device by using Hci_Enhanced_Setup_Synchronous_Connection command after checking the controller (4.1) support for enhanced SCO command. Added the command parameters to use the command in both wide band speech(WBS) and narrow band speech(NBS) scenarios. Number of Broadcom vendor specific commands(VSCs)that are needed to be sent to Broadcom controllers along with this command have also been updated accordingly NOTE: This change would also need a firmware patch for the feature to work on Broadcom contollers which will be delivered to Google in a separate change set. Bug: 19540029 Test: make, HFP PTS test, testplans/86884, testplans/87103 Change-Id: I1014d81be5cbe91078a4484dd072ac3957bfdfe4
/system/bt/bta/ag/bta_ag_int.h
|
ad1e23d50e431fb82ff1b8d3ce02f64ca0c5a940 |
|
10-Dec-2016 |
Jack He <siyuanh@google.com> |
Remove extern "C" from header files Since change 290046, most files in system/bt is compiled as C++ source. Therefore, there is no longer a need for the extern "C" wrapper around includes that export symbols from those sources. The following python script is applied to each file in the directory: front = '#ifdef\s+__cplusplus\s+extern\s+"C"\s+{\s+#endif\s+' back = '#ifdef\s+__cplusplus\s+}\s+#endif' with open(sys.argv[1], "r") as f: data = f.read() data = re.sub(front, "", data) data = re.sub(back, "", data) print data through a shell script: for file in $(find . -name "*.h"); do python remove_cpp_extern_c.py $file > tmp cat tmp > $file rm tmp done with following files not edited: * stack/include/a2dp_* * include/bt_trace.h * embdrv/sbc/* Bug: 33492510 Test: Code compilation, BtFunhausMetricsTest, BtStressTest Change-Id: Iac21cdfb1924b50478dd0b82326e092602cbc9d4
/system/bt/bta/ag/bta_ag_int.h
|
cd1fd07f1306e08fe048682dd5918987e579f937 |
|
09-Nov-2016 |
Myles Watson <mylesgw@google.com> |
bta: Apply clang-format clang-format -i --style=file bta/*/* (twice) Test: mma -j32 Change-Id: Ib118b1dfb6a34f9a5bfe153d65841e9041165264
/system/bt/bta/ag/bta_ag_int.h
|
8af480e24549ba51a3f6858d9d9af504715e0bea |
|
09-Nov-2016 |
Myles Watson <mylesgw@google.com> |
bta: Remove double asterisks in comments Double asterisks at the beginning of the line sed -i s,"^[*][*]"," *", bta/*/* Double asterisks after a space sed -i s,"^ [*][*]\([^*]\)"," *\1", bta/*/* sed -i s,"^ [*][*]$"," *", bta/*/* Test: mma -j32 Change-Id: Ib83b802c7000176683b4e7f24d1255b3c2c6c01c
/system/bt/bta/ag/bta_ag_int.h
|
b7fa415540ef53bfc07fac7f0676a2ce70f9d52e |
|
23-Jul-2016 |
Andre Eisenbach <eisenbach@google.com> |
Remove position dependent lookup tables in AT command parser The various position dependent lookup tables in the AT command parser were out of sync, causing invalid responses to the AT+CBPS command for example. This patch gets rid of positionally dependent enums for simple lookup tables that correlate all the values for easier, less error prone maintenance of the related tables. This re-instates a previously reverted patch after fixing incorrect field order in tBTA_AG_INDICATOR_MAP. Change-Id: I7f8a052e78706c8c72c5102b38cfe9ce200ae0d9 Fixes: 29978908 (cherry picked from commit b5cc24fcdaeb32f1f44bc39b65f6b0c035e47d5f)
/system/bt/bta/ag/bta_ag_int.h
|
b2a292b5d8df2f359c38b0787bc01181225a9bc9 |
|
15-Oct-2016 |
Pavlin Radoslavov <pavlin@google.com> |
Renamed most C files to C++: *.c to *.cc Also: - Fixed C++ related compilation errors. - Added missing 'extern "C"' guards in some of the header files. - Added missing LOCAL_CPP_EXTENSION to Android.mk files. - Added-back btif/src/btif_mce.cc and bta/mce/bta_mce_* to btif/Android.mk and bta/Android.mk respectively. - Fixed the alphabetical ordering of the *.cc files in some of the Android.mk files. - Added missing Copyright header to "osi/include/list.h" - Updated "osi/src/wakelock.cc" to use C++ std::string instead of dynamic allocation of C-style strings. Test: code compilation, unit tests, and A2DP streaming Change-Id: Ia2f7215ed9df32775c701b68fc86b09875b942c7
/system/bt/bta/ag/bta_ag_int.h
|
4de9bbcde79eb98dbfd56de292902549ac3e2bc1 |
|
29-Feb-2016 |
Mudumba Ananth <ananthm%broadcom.com@gtempaccount.com> |
HFP 1.7 profile update (1/4) -> Added AG support for HFP 1.7 version upgrade which adds new type of indicator called HF(headset) indicators. -> Added support for two new AT commands AT + BIND and AT + BIEV which have been appended to Hands-Free SLC sequence. -> Added support to propagate the above commands and their data to the upper layers. Bug: 19983867 Change-Id: I93d5b2af949f9fb99507a954e623cd0927ddc976 (cherry picked from commit e5bed64926d6ae45501617052f90932287da135b)
/system/bt/bta/ag/bta_ag_int.h
|
25984b0d221cf48cd4dd606b881674ce7b29bf44 |
|
24-Jun-2016 |
Jakub Pawlowski <jpawlowski@google.com> |
Get rid of unused BTA_DYNAMIC_MEMORY Change-Id: Idc7fcddfecac9ab7d9800b496e2380ae277f357f
/system/bt/bta/ag/bta_ag_int.h
|
e9e58ced195ec2c983c7723c9cbdabd45eb0f2fd |
|
17-Jun-2016 |
Marie Janssen <jamuraa@google.com> |
bta: use standard types Use standard types everywhere. Use standard style for #if statements: - #if (VAR_NAME == TRUE) - #if (VAR_NAME1 == TRUE && VAR_NAME2 == TRUE) Use __func__ instead of __FUNCTION__ Fix some debug statements to use __func__ Change-Id: Ib86de4de9f14529ecaa4f71597260e3b5785360b
/system/bt/bta/ag/bta_ag_int.h
|
78bcff79e1b1f0efce436b33bdd6da88745bfc8a |
|
05-Dec-2015 |
Pavlin Radoslavov <pavlin@google.com> |
Refactor the Bluetooth timers * Updated the alarm API: - Existing API alarm_new() is modified to take an alarm name as an argument. - New API alarm_new_periodic() is used to create a periodic alarm. - Added new API alarm_is_scheduled() to test whether an alarm is scheduled. - Existing API alarm_set_periodic() is removed: a periodic alarm is created by alarm_new_periodic(). - Added new API alarm_set_on_queue() to set an alarm whose callback is executed on a specific queue. - Added new API alarm_register_processing_queue() and alarm_unregister_processing_queue() to register/unregister a queue and the corresponding thread for alarm processing. - Added corresponding unit tests. * Updated the alarm internals: - Added alarm_info_t for collecting alarm-related information and statistics. - Collect and store alarm-related statistics into alarm_info_t per alarm. - Include the alarm-related statistics and info into the native dumpsys output for Bluetooth. - Once an alarm expires, the alarm execution is scheduled for processing on another internal alarm-specific thread, not on the thread that is maintaining the alarms. - Implemented callback execution ordering guarantee among timers on the same thread with exactly same timeout values. * Refactor some of the usage of alarm_set() and simplify the code by using alarm_set_on_queue() instead. * Removed the non_repeating timers wrapper, and use directly the alarm mechanism / API. * Refactored all timer_entry_t timers and replaced them with alarm_t timers: - Replaced the btu_start_timer() / btu_stop_timer() / btu_start_quick_timer() / btu_stop_quick_timer() / btu_oneshot_alarm() mechanism with alarm_set_on_queue() and alarm_cancel() - Removed the whole mechanism around the BTU_TTYPE_* timers. * Fixed a bug when processing the GATT indication confirmation timer expiration (timer tGATT_TCB.conf_timer: b/26610829). * Renamed and/or split misc. timeout functions, fields, and timers * Renamed time-related constants and changed the values from seconds to milliseconds * Replaced timer tAVDT_CCB.timer_entry with three mutually exclusive timers: idle_ccb_timer, ret_ccb_timer, rsp_ccb_timer The reason we are using three timers, is because in the original code function avdt_ccb_chk_timer() used the timer type in its logic: it would stop the timer only if the type is "idle". * Removed btm_ble_timeout() and replaced it with multiple timeout callback functions (per timer) * Fix the actual value of the global constant BT_1SEC_TIMEOUT and rename it to BT_1SEC_TIMEOUT_MS * Removed btu_cb and associated timers and events, because they are never used. * Removed unused timers, functions, struct and declarations that are not used / needed. Bug: 26611369 Bug: 26610829 Change-Id: I812c8c31710a5daefc58b01fcf35c353768f390f
/system/bt/bta/ag/bta_ag_int.h
|
9f1c9ad85759c7663e3bbc494f8e75b2f107da67 |
|
28-Sep-2015 |
Pavlin Radoslavov <pavlin@google.com> |
GKI cleanup - Moved struct TIMER_LIST_ENT to OSI * Moved struct TIMER_LIST_ENT to file osi/include/non_repeating_timer.h and renamed it to timer_entry_t NOTE: This is a short-term solution. timer_entry_t should be removed, and its usage everywhere should be replaced by struct non_repeating_timer_t . * Renamed TIMER_CBACK to timer_callback_t * Renamed TIMER_PARAM_TYPE to timer_param_t Change-Id: I9ca830718bf900195f9c0a513a97f6995322693b
/system/bt/bta/ag/bta_ag_int.h
|
5b675bc41986a159023c51b561e81939f0632f95 |
|
21-May-2015 |
Mallikarjuna GB <gbmalli@codeaurora.org> |
Create listen SCO for HS1 if HS2 disconnects during SCO xfer During SCO transfer process from HS1 to HS2, firstly active SCO for HS1 is disconnected. However, if suddenly HS2 disconnects even before SCO transfer is complete, listen SCO for HS1 is not created. This causes further incoming SCO connections from HS1 to be rejected. The change creates listen SCO for HS1 and moves SCO state properly to LISTEN. Change-Id: I0993c1ba1c24b3b7e9c243d179a913d7a0c40446
/system/bt/bta/ag/bta_ag_int.h
|
66432dcffe211e317d35978283a04a96d5620bdf |
|
27-Apr-2014 |
Matthew Xie <mattx@google.com> |
Add WBS support on Bluedroid (2/6) Bug 13764086 Change-Id: I12bf302f7dd19efb497ad49d4d1d638a7a926049
/system/bt/bta/ag/bta_ag_int.h
|
5738f83aeb59361a0a2eda2460113f6dc9194271 |
|
13-Dec-2012 |
The Android Open Source Project <initial-contribution@android.com> |
Snapshot cdeccf6fdd8c2d494ea2867cb37a025bf8879baf Change-Id: Ia2de32ccb97a9641462c72363b0a8c4288f4f36d
/system/bt/bta/ag/bta_ag_int.h
|