History log of /system/bt/hci/include/hci_layer.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2b7e9058076f1b6afde219b4d7a36368ca97d7fc 01-Mar-2017 Ajay Panicker <apanicke@google.com> Swap BTA and HCI queues with message loops

Swapping out the queues with base::MessageLoop allows for an easier refactor
of alarms as we can just replace them with an instance of base::Timer. Also
refactored out the data_dispatcher as most of the code wasn't being used.

Bug: 37245162
Test: Bluetooth sanity test and listening to music
added net_test_btu_message_loop
Change-Id: I73c359f07a225733dc89f51422a6a24ce807c593
/system/bt/hci/include/hci_layer.h
796523d32d5478b63d9a545ec6a4e26207742b0c 11-Nov-2016 Andre Eisenbach <eisenbach@google.com> Initial HIDL conversion

Test: Unit tests, VTS test, device sanity
Change-Id: Ia5b2b5fa762d240c0490666d50ea5c878631fcd1
/system/bt/hci/include/hci_layer.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/hci/include/hci_layer.h
5ff20a23661695abb1cff6d01d71a8cad4cc7890 31-Oct-2016 Myles Watson <mylesgw@google.com> hci: Apply clang-format

Remove double asterisks:
cd hci/
find . | grep "\.cc\|\.h\|\.c" | \
xargs -I REPLACE sed 's/^[*][*]/ \*/' -i REPLACE

Run clang-format:
find . | grep "\.cc\|\.h\|\.c" | xargs -I REPLACE \
clang-format --style=file -i REPLACE

Test: mma -j32
Change-Id: Ie74244127c8a264dd087d199155274d4655ccf65
/system/bt/hci/include/hci_layer.h
cc26bfcba0d5cc2473b34dc1b51913995e2db67e 14-Oct-2016 Pavlin Radoslavov <pavlin@google.com> Renamed files: *.c to *.cc in bta/av and stack/a2dp

Also, fixed C++ related compilation errors.

Test: code compilation from top-level directory
Change-Id: I60367ee7bc54b891cb05bb3f88dd11ebe5b2ca83
/system/bt/hci/include/hci_layer.h
c3caf784c788af45fd6b657a09f4034b9d3387ba 04-Dec-2015 Pavlin Radoslavov <pavlin@google.com> Fix net_test_hci unit tests

* Added new function API to hci_layer: hci_layer_cleanup_interface()
It can be used to cleanup after hci_layer_get_interface()
or hci_layer_get_test_interface()
* Fixed the unit tests inside HciLayerTest by removing usage of
allocation_tracker_reset() and adding hci_layer_cleanup_interface() .
The former was used as a hack to bypass the internal memory allocation
of hci_layer_get_test_interface(). The latter is used to properly
cleanup such allocation.

Bug: 26014740
Change-Id: I498b996a931c59dd3b4258f1a5741cfa6d302e42
/system/bt/hci/include/hci_layer.h
c196f214c5ae349ec2022f8d3cbaf56910b3b9f8 24-Sep-2015 Pavlin Radoslavov <pavlin@google.com> GKI cleanup - Moved GKI_get_os_tick_count() to OSI

* Renamed function GKI_get_os_tick_count() to time_get_os_boottime_ms()
and moved it to the OSI module: to the new file osi/src/time.c .
The corresponding header file is osi/include/time.h

* Added unit tests for function time_get_os_boottime_ms() in file
osi/test/time_test.cpp

* Removed "osi/include" from the list of paths to search for include
files. This is needed, because file name collision of "time.h"
in osi/include and the system <time.h>

Change-Id: I934be0c8f392150a352947326546bcf8aa070f97
/system/bt/hci/include/hci_layer.h
b55a8a62b23be97fcb3f2ba9f3c4cb03cfb59914 04-Mar-2015 Zach Johnson <zachoverflow@google.com> Rejig hci upwards dispatch

Split events and acl data in hci dispatch, and dispatch events by event code

Future code will now be able to dynamically tie into hci events, instead
of relying on a hard coded routing.
/system/bt/hci/include/hci_layer.h
06ef205ebcb0d3f0fe2b88ddcea73e646981940e 07-Nov-2014 Sharvil Nanavati <sharvil@google.com> Update module names to not use C preprocessor and to be at top of headers.
/system/bt/hci/include/hci_layer.h
30e58068c1adaac7c5ccb3aa9cfb045d41d2a10e 27-Sep-2014 Zach Johnson <zachoverflow@google.com> Refactor btm_devctl reset sequence

* Controller bring up on blockable thread now
* Removed some duplicate and commands during controller bring up
* The code to make commands for controller bring up is smaller and better
/system/bt/hci/include/hci_layer.h
cd01adc807c14915db3ad566a47d738f82fd3319 28-Sep-2014 Zach Johnson <zachoverflow@google.com> Add a futured version of the HCI transmit_command

This will allow the controller restart sequence to be serialized into a single function.
/system/bt/hci/include/hci_layer.h
093948aaec3d88f3e52cae28b286d694f2645f82 24-Sep-2014 Zach Johnson <zachoverflow@google.com> Modulizification of the HCI layer

Shutdown is managed by the stack manager now, so we don't need to lock
around it. The fetching of the device address is a bit hacky right now,
until it becomes part of its own module.
/system/bt/hci/include/hci_layer.h
733a06ed9c38fc7f3b00cece9c88ac72b6cc3d98 09-Sep-2014 Zach Johnson <zachoverflow@google.com> Refactor bte_main into more of a shell.

Moves all HCI initialization into hci_layer. Removes superfluous exposed
functionality on the HCI layer (like turning the chip on/off and logging)

Also reorganizes some of hci_layer to group related functions together.
/system/bt/hci/include/hci_layer.h
bf8193bc81cc077e3acd245cacbe8e3789c4b9ff 08-Sep-2014 Zach Johnson <zachoverflow@google.com> HCI layer cleanup

- x_interface_t started to get annoyingly verbose, changed to x_t
- buffer_allocator is standalone now, no longer part of bte_main
- new controller_t to handle controller start up and hold controller state
- new hci_packet_factory to make packets, and hci_packet_parser
to read information out of packets.
/system/bt/hci/include/hci_layer.h
218f375e989a6189cd9a3227656be17bf614485b 03-Sep-2014 Zach Johnson <zachoverflow@google.com> Sink all HCI transmission management into the HCI layer

Begins the refactoring of the HCI related code in BTA, corrects some
hacks in the HCI layer (no more concept of internal commands, yay!),
and corrects the handling of multiple commands pending response in the
HCI layer.

This introduce a horrible hack external to the HCI layer to keep BTU HCI
handling of command complete/status events on the BTU task. That hack
will be removed when BTU moves to a reactor model and we have osi
threads to work with.
/system/bt/hci/include/hci_layer.h
7fa65f7d58903ad0458ebaaf52568ee429e6a893 30-Aug-2014 Zach Johnson <zachoverflow@google.com> Rename init/cleanup to start_up/shut_down in the HCI layer
/system/bt/hci/include/hci_layer.h
fbbd42b1fc1aae7a106f46275ab1fd86452cce78 16-Aug-2014 Zach Johnson <zachoverflow@google.com> Refactor HCI layer

Refactor the HCI layer for better testability.
A future CL will add a HAL implementation for multi channel transport.

Since btsnoop and vendor are modified, it's not easy to incrementally introduce these changes.
/system/bt/hci/include/hci_layer.h