| 279be570 |
android/gatt: Register device information service
This adds placeholder data to device information service. To get
real data we should figure out the best way to get Android's system
properties and expose them to profiles for reading. |
Jakub Tyszkowski |
11 years ago |
1 file, +97, -0 |
| d499eb81 |
lib: Add more GATT characteristics UUIDs
These characteristics UUIDs will be used in following patch. |
Lukasz Rymanowski |
11 years ago |
1 file, +7, -0 |
| 9dddc36f |
android/gatt: Add register GAP Service
Register GAP service with device name characteristic,
appearance and peripheral privacy flag |
Lukasz Rymanowski |
11 years ago |
1 file, +98, -0 |
| 705762ae |
android/bluetooth: Add function for getting device Android name
This will be used by GATT HAL |
Lukasz Rymanowski |
11 years ago |
2 files, +6, -0 |
| 9d65e8f9 |
shared/gatt: Add att_opcode to read/write callback
This is because there is many types of read/write requests and user
needs to know if and what response send back. |
Lukasz Rymanowski |
11 years ago |
1 file, +4, -2 |
| f1e23432 |
shared/gatt: Extend read/write callback with offset
Offset is needed for read blob and prep write |
Lukasz Rymanowski |
11 years ago |
1 file, +5, -5 |
| eaf2ad17 |
shared/gatt: Use bdaddr instead of request_id
As it turns out we do not need request_id but bdaddr. It is because
response to remote device will be sent from read/write callback. |
Lukasz Rymanowski |
11 years ago |
1 file, +4, -4 |
| 78929de8 |
android/gatt: Add ATT msg handler
This patch adds skeleton for ATT msg handler and also attach it to the
attrib on connect_cb and connect_event |
Lukasz Rymanowski |
11 years ago |
1 file, +56, -1 |
| 89dab07b |
android/gatt: Assume that each server wants to wait for connection
Make sure that application gets all server related callbacks from
incoming connection we need to keep it on listen_app list. |
Lukasz Rymanowski |
11 years ago |
1 file, +7, -0 |
| b8c6e30f |
android/gatt: Add listening socket for GATT
For now we do listen on BLE transport only. |
Lukasz Rymanowski |
11 years ago |
1 file, +108, -0 |
| 25656fa3 |
hog: Improve report map debugging
Now that we can split report map into items it's convenient to have it
printed with items structure preserved which makes it more useful for
debugging.
Up to 5 bytes are printed for each item which is enough for short items
and for long items continuation mark ('...') is printed if necessary.
This is because as for now there are no long item tags defined except
for some vendor defined thus we can safely "ignore" them and avoid
overly complicated code. |
Andrzej Kaczmarek |
11 years ago |
1 file, +38, -26 |
| 06a71a5c |
hog: Fix checking for Report ID item presence
Report ID item in Report Descriptor is now detected by simply looking
for applicable item prefixes anywhere in data and does not take items
structure into consideration. This could lead to false-positive
detections in case value we look for is just part of item data, not an
actual item prefix.
As defined in Device Class Definition for HID (6.2.2.7), Report ID is
a short item with prefix 100001nn (binary) thus we do not need to do
complete parsing of Report Descriptor but only need to check items
prefixes in order to find Report ID items reliably.
This patch checks Report Descriptor item by item looking for item
prefix which matches Report ID, as defined in spec above. |
Andrzej Kaczmarek |
11 years ago |
1 file, +62, -5 |
| 13eee21e |
android/avrcp-lib: Fix avrcp_get_capabilities_rsp
The PDU that avrcp_get_capabilities_rsp generates are incorrect since it
does not includes the capability. |
Luiz Augusto von Dentz |
11 years ago |
1 file, +6, -2 |
| db89f55e |
android/avrcp: Add avrcp_set_player_value_rsp function
This function can be used to generate SetPlayerValue responses. |
Luiz Augusto von Dentz |
11 years ago |
3 files, +10, -1 |
| d5ba226f |
android/gatt: Add descriptor implementation
It will add characteristic descriptor attribute to local database. |
Marcin Kraglak |
11 years ago |
1 file, +21, -10 |
| 15e65b86 |
android/gatt: Add stop service command handling
It will stop service in local database. |
Marcin Kraglak |
11 years ago |
1 file, +14, -6 |
| 6da0129f |
android/gatt: Add handling of start service command
It will start service added to local database. |
Marcin Kraglak |
11 years ago |
1 file, +16, -4 |
| f80ec262 |
android/gatt: Add characteristic implementation
It will add characteristic declaration and value attributes to
local database. |
Marcin Kraglak |
11 years ago |
1 file, +23, -11 |
| 79ed8c8d |
android/gatt: Add included service implementation
It will add included service attribute to database. |
Marcin Kraglak |
11 years ago |
1 file, +18, -5 |
| a9d42951 |
android/gatt: Add implementation of delete service
It will delete sarvice from local database |
Marcin Kraglak |
11 years ago |
1 file, +14, -4 |
| e6c03e78 |
android/gatt: Add service functionality
It will Add service to local database. |
Marcin Kraglak |
11 years ago |
1 file, +29, -9 |
| 4896ab07 |
android/gatt: Rename listen_clients to listen_apps
This is because on this list there will be also servers id |
Lukasz Rymanowski |
11 years ago |
1 file, +13, -13 |
| d35c07fc |
android/pts: Re-run OPP with ETS-12160
There is new ETS for OPP: 12160 which solves the problem of the
client test: OPH_BV_01_I |
Sebastian Chlad |
11 years ago |
1 file, +2, -2 |
| 8e161193 |
android/pts: Correct PICS for A2DP |
Sebastian Chlad |
11 years ago |
1 file, +2, -2 |
| e86ad176 |
android/gatt: Remove redundant find function parameter
As client and server apps id is guaranteed to be unique, there is no
need for this search function parameter. |
Jakub Tyszkowski |
11 years ago |
1 file, +3, -4 |
| ef3bd8bb |
android/gatt: Use common code for server and client register
As clients and servers are stored on a single list we can use common
code in both of register handlers.
We always confirm registration handling with HAL_STATUS_SUCCESS,
regardless of registration result, which is reported by event
notification containing GATT_SUCCESS or GATT_FAILURE status. |
Jakub Tyszkowski |
11 years ago |
1 file, +44, -73 |
| 7a2d6046 |
android: Make multi-line comments style consistent
Use common style for multi-line comments consistent with rest of
codebase. |
Szymon Janc |
11 years ago |
34 files, +324, -199 |
| fc8ac15d |
client: Fix not releasing agent if bluetoothd exit without calling Release
If AgentManager1 disappear the agent should auto release itself
otherwise next time AgentManager1 appears bluetoothctl wont register
the agent again. |
Luiz Augusto von Dentz |
11 years ago |
2 files, +20, -11 |
| 123db1e8 |
agent: Allow to stack default agents
There is no API for notifying agent that it is no longer default one.
This can lead to situation when ie. console agent (bluetoothctl) is
set as default leaving UI agent unfunctional after bluetoothctl exited.
This patch adds stacking of default agents in case more then one agent
requested being default. |
Szymon Janc |
11 years ago |
1 file, +36, -11 |
| 25cb97ad |
android/README: Update GATT HAL implementation status |
Szymon Janc |
11 years ago |
1 file, +3, -3 |
| cac56d51 |
android/gatt: Handle Server apps connections
This handles server connections. |
Jakub Tyszkowski |
11 years ago |
1 file, +38, -4 |
| ad6d9178 |
android/gatt: Extract common code from client_connect
Code extracted from client connect handler will be reused by server
connect handler |
Jakub Tyszkowski |
11 years ago |
1 file, +31, -30 |
| 34cd14d1 |
android/gatt: Rename connection struct
This represents client or server application connection and not the io
connection thus should be named properly. |
Jakub Tyszkowski |
11 years ago |
1 file, +47, -47 |
| 99309507 |
android/gatt: Rename connection list
This list will be used for both, client and server apps connections. |
Jakub Tyszkowski |
11 years ago |
1 file, +19, -22 |
| 67f1d132 |
android/gatt: Store client and server apps on a single list
This will simplify and reduce code amount for handling client and server
app as it will use common code. |
Jakub Tyszkowski |
11 years ago |
1 file, +48, -86 |
| 07a245dd |
android/gatt: Use common struct for client and server applications
This will allow to handle client and server connection using the same
connection logic. |
Jakub Tyszkowski |
11 years ago |
1 file, +89, -76 |
| 563c0309 |
android/gatt: Send app uuid also for failure response
Framework should know which request failed. |
Jakub Tyszkowski |
11 years ago |
1 file, +2, -1 |
| 886e78ab |
android/gatt: Implement get device type command |
Szymon Janc |
11 years ago |
2 files, +15, -2 |
| 0009f141 |
android/bluetooth: Add function for getting device Android type
This will be used by GATT HAL. |
Szymon Janc |
11 years ago |
2 files, +11, -0 |
| e3c663cc |
android/gatt: Refactor client connection handling
Multiple, connection specific device lists were replaced with one,
while devices store their connection state instead. Client list in each
device were replaced with single, global list, storing (connection_id,
client*, device*) tuples. This seams to be more natural and easier to
perform actions which are mostly triggered by specific clients on
specific device or connection.
Connection id previously assigned to device now properly identifies
client<->device and not the physical adapter<->device connection. |
Jakub Tyszkowski |
11 years ago |
1 file, +536, -468 |
| 0538b3b9 |
shared/gatt: Allocate separate memory for attribute value
This is not a packed structure mapping memory where using zero sized
array would be useful. Simply use pointer and allocate memory for
value. |
Szymon Janc |
11 years ago |
1 file, +40, -24 |
| ee82dda5 |
shared/gatt: Fix undefined behaviour in memcpy
Check len before copying data. |
Szymon Janc |
11 years ago |
1 file, +2, -1 |
| d35ed8a8 |
shared/gatt: Fix uuid_to_le function
32-bit UUIDs must be converted to 128-bit before being transmitted. |
Szymon Janc |
11 years ago |
1 file, +7, -10 |
| d11de55a |
shared/gatt: Add method to set service active
This function will set active flag in database. Only active
services can be read by client from database. This falg will be
checked when remote will read attributes from this database.
Non-active services won't be exposed. |
Marcin Kraglak |
11 years ago |
2 files, +19, -0 |
| de16594c |
shared/gatt: Add included service functionality
It will add included service to service attribute list. It will first
look for included service and then create attribute. In case of error
or if there is no free handle, 0 will be returned. |
Marcin Kraglak |
11 years ago |
2 files, +61, -0 |
| 002fce1b |
shared/gatt: Add characteristic descriptor functionality
It will add characteristic descriptor to service attribute's list.
Returns 0 if there is no free handle in service or descriptor's handle
if attribute has been added successfully. |
Marcin Kraglak |
11 years ago |
2 files, +36, -0 |
| 8c607d5f |
shared/gatt: Add new characteristic functionality
It will attach characteristic declaration and value, and return value
handle. It is needed to pass service handle to which this characteristic
will be added. If there is not enough free handles in service, 0 will be
returned. |
Marcin Kraglak |
11 years ago |
2 files, +116, -0 |
| 080feb11 |
android/avrcp-lib: Remove internal buffer
This removes the internal buffer which is no longer used since iovec
changes was introduced. |
Luiz Augusto von Dentz |
11 years ago |
1 file, +0, -7 |
| cf9bd782 |
unit/test-avrcp: Add /TP/MCN/NP/BI-02-C test
To verify the AddToNowPlaying response issued by the TG when an invalid
UID is requested. |
Luiz Augusto von Dentz |
11 years ago |
1 file, +13, -0 |
| 6ed86d84 |
unit/test-avrcp: Add /TP/MCN/NP/BV-04-C test
To verify the AddToNowPlaying response issued by the TG. |
Luiz Augusto von Dentz |
11 years ago |
1 file, +22, -0 |