---
android/hal-gatt.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/android/hal-gatt.c b/android/hal-gatt.c
index 93dc066..6f0d2c5 100644
--- a/android/hal-gatt.c
+++ b/android/hal-gatt.c
@@ -573,6 +573,9 @@ static bt_status_t register_client(bt_uuid_t *uuid)
{
struct hal_cmd_gatt_client_register cmd;
+ if (!interface_ready())
+ return BT_STATUS_NOT_READY;
+
memcpy(cmd.uuid, uuid, sizeof(*uuid));
return hal_ipc_cmd(HAL_SERVICE_ID_GATT, HAL_OP_GATT_CLIENT_REGISTER,
--
1.9.1
On Monday 26 May 2014 17:03:44 Szymon Janc wrote:
> ---
> android/hal-gatt.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/android/hal-gatt.c b/android/hal-gatt.c
> index 93dc066..6f0d2c5 100644
> --- a/android/hal-gatt.c
> +++ b/android/hal-gatt.c
> @@ -573,6 +573,9 @@ static bt_status_t register_client(bt_uuid_t *uuid)
> {
> struct hal_cmd_gatt_client_register cmd;
>
> + if (!interface_ready())
> + return BT_STATUS_NOT_READY;
> +
> memcpy(cmd.uuid, uuid, sizeof(*uuid));
>
> return hal_ipc_cmd(HAL_SERVICE_ID_GATT, HAL_OP_GATT_CLIENT_REGISTER,
Patches 1-3 are now applied.
--
Szymon K. Janc
[email protected]
test_command appears to be usefull for PTS testing and probably should
be implemented.
---
android/README | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/android/README b/android/README
index 91fc545..bcc2e7b 100644
--- a/android/README
+++ b/android/README
@@ -223,7 +223,7 @@ Profile ID HAL header Status
core bluetooth.h complete
a2dp bt_av.h complete
gatt bt_gatt.h partial
- bt_gatt_client.h partial
+ bt_gatt_client.h complete
bt_gatt_server.h initial
handsfree bt_hf.h complete
hidhost bt_hh.h complete
@@ -293,6 +293,14 @@ get_player_app_values_text_cb NULL JNI implementation
set_player_app_value_cb NULL JNI implementation
+HAL GATT
+--------
+
+methods:
+client->set_adv_data missing kernel support for vendor data
+client->test_command test command
+
+
Known Android issues
====================
@@ -324,3 +332,5 @@ HFP Response and Hold AT+BTRH, +BTRH
HFP In-band Ring Tone +BSIR
AVRCP Player Settings HAL API present but not used
AVRCP Browsing No HAL API
+GATT Client read multiple No HAL API
+ characteristics
--
1.9.1
From: Eva Kolanska <[email protected]>
---
android/pts-gatt.txt | 179 +++++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 152 insertions(+), 27 deletions(-)
diff --git a/android/pts-gatt.txt b/android/pts-gatt.txt
index 12d9b30..c017751 100644
--- a/android/pts-gatt.txt
+++ b/android/pts-gatt.txt
@@ -186,7 +186,7 @@ TC_GAW_CL_BV_03_C PASS haltest:
handle from logs
gattc write_characteristic
gattc disconnect
-TC_GAW_CL_BI_02_C INC
+TC_GAW_CL_BI_02_C INC gatttool required
TC_GAW_CL_BI_03_C PASS haltest:
gattc connect
gattc search_service
@@ -222,7 +222,7 @@ TC_GAW_CL_BV_05_C PASS haltest:
handle from logs
gattc write_characteristic 2 <long_value>
gattc disconnect
-TC_GAW_CL_BI_07_C INC
+TC_GAW_CL_BI_07_C INC gatttool required
TC_GAW_CL_BI_08_C PASS haltest:
gattc connect
gattc search_service
@@ -265,7 +265,7 @@ TC_GAW_CL_BV_06_C PASS haltest:
handle from logs
gattc write_characteristic 2 <long_value>
gattc disconnect
-TC_GAW_CL_BI_14_C INC
+TC_GAW_CL_BI_14_C INC gatttool required
TC_GAW_CL_BI_15_C PASS haltest:
gattc connect
gattc search_service
@@ -273,27 +273,150 @@ TC_GAW_CL_BI_15_C PASS haltest:
handle from logs
gattc write_characteristic 2 <long_value>
gattc disconnect
-TC_GAW_CL_BI_17_C INC
-TC_GAW_CL_BI_18_C INC
-TC_GAW_CL_BI_19_C INC
-TC_GAW_CL_BV_08_C INC
-TC_GAW_CL_BI_20_C INC
-TC_GAW_CL_BI_21_C INC
-TC_GAW_CL_BI_22_C INC
-TC_GAW_CL_BI_23_C INC
-TC_GAW_CL_BI_24_C INC
-TC_GAW_CL_BV_09_C INC
-TC_GAW_CL_BI_25_C INC
-TC_GAW_CL_BI_26_C INC
-TC_GAW_CL_BI_27_C INC
-TC_GAW_CL_BI_29_C INC
-TC_GAW_CL_BI_30_C INC
-TC_GAW_CL_BI_31_C INC
-TC_GAW_CL_BI_32_C INC
-TC_GAW_CL_BI_33_C INC
-TC_GAW_CL_BI_34_C INC
-TC_GAW_CL_BI_35_C INC
-TC_GAW_CL_BI_36_C INC
+TC_GAW_CL_BI_17_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_18_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_19_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BV_08_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2 <short_value>
+ gattc disconnect
+TC_GAW_CL_BI_20_C INC gatttool required
+TC_GAW_CL_BI_21_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2 <short_value>
+ gattc disconnect
+TC_GAW_CL_BI_22_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2 <short_value>
+ gattc disconnect
+TC_GAW_CL_BI_23_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2 <short_value>
+ gattc disconnect
+TC_GAW_CL_BI_24_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2 <short_value>
+ gattc disconnect
+TC_GAW_CL_BV_09_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_25_C INC gatttool required
+TC_GAW_CL_BI_26_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_27_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_29_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_30_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_31_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_32_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc execute_write
+ gattc disconnect
+TC_GAW_CL_BI_33_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2
+ gattc disconnect
+TC_GAW_CL_BI_34_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc write_characteristic 2 <long_value>
+ gattc disconnect
+TC_GAW_CL_BI_35_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2
+ gattc disconnect
+TC_GAW_CL_BI_36_C PASS haltest:
+ gattc connect
+ gattc search_service
+ gattc get_characteristic: srvc_id based on
+ handle from logs
+ gattc get_descriptor
+ gattc write_descriptor 2 <long_value>
+ gattc disconnect
TC_GAW_SR_BV_01_C INC
TC_GAW_SR_BV_02_C INC
TC_GAW_SR_BI_01_C INC
@@ -335,11 +458,13 @@ TC_GAW_SR_BI_32_C INC
TC_GAW_SR_BI_33_C INC
TC_GAW_SR_BI_34_C INC
TC_GAW_SR_BI_35_C INC
-TC_GAN_CL_BV_01_C INC
+TC_GAN_CL_BV_01_C INC PTS issue will come
TC_GAN_SR_BV_01_C INC
-TC_GAI_CL_BV_01_C INC
+TC_GAI_CL_BV_01_C INC PTS issue #12211
TC_GAI_SR_BV_01_C INC
-TC_GAS_CL_BV_01_C INC
+TC_GAS_CL_BV_01_C PASS haltest:
+ gattc connect
+ gattc disconnect
TC_GAS_SR_BV_01_C INC
TC_GAT_CL_BV_01_C INC
TC_GAT_CL_BV_02_C INC
--
1.9.1
CRYPTO support is required by gatt.
---
android/README | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/android/README b/android/README
index 0895b71..91fc545 100644
--- a/android/README
+++ b/android/README
@@ -102,6 +102,10 @@ CONFIG_BT_BNEP_MC_FILTER
CONFIG_BT_BNEP_PROTO_FILTER
CONFIG_BRIDGE
CONFIG_UHID
+CONFIG_CRYPTO_CMAC
+CONFIG_CRYPTO_USER_API
+CONFIG_CRYPTO_USER_API_HASH
+CONFIG_CRYPTO_USER_API_SKCIPHER
Also BT chip driver needs to be enabled e.g:
CONFIG_BT_HCIBTUSB
--
1.9.1