From 36a59be90ab1ae50806c658907f05b3253963413 Mon Sep 17 00:00:00 2001 From: Andrei Emeltchenko Date: Thu, 18 Feb 2016 16:47:53 +0200 Subject: [PATCH] drivers/nble: Store GATT discover parameters Store GATT discover parameters in bt_conn due to lack support from NBLE RPC. Change-Id: I47ade89b4861c9f1260ce3a3dc158d6344de334e Signed-off-by: Andrei Emeltchenko --- drivers/nble/conn_internal.h | 2 ++ drivers/nble/gatt.c | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/drivers/nble/conn_internal.h b/drivers/nble/conn_internal.h index 48a44f33dbd..152ecf3329a 100644 --- a/drivers/nble/conn_internal.h +++ b/drivers/nble/conn_internal.h @@ -31,4 +31,6 @@ struct bt_conn { BT_CONN_CONNECTED, BT_CONN_DISCONNECT, } state; + + void *gatt_discover; }; diff --git a/drivers/nble/gatt.c b/drivers/nble/gatt.c index e5ab55531c5..c1c784bac3b 100644 --- a/drivers/nble/gatt.c +++ b/drivers/nble/gatt.c @@ -390,6 +390,10 @@ int bt_gatt_discover(struct bt_conn *conn, return -EINVAL; } + if (conn->gatt_discover) { + return -EBUSY; + } + switch (params->type) { case BT_GATT_DISCOVER_PRIMARY: case BT_GATT_DISCOVER_INCLUDE: @@ -403,6 +407,8 @@ int bt_gatt_discover(struct bt_conn *conn, discover_params.handle_range.start_handle = params->start_handle; discover_params.handle_range.end_handle = params->end_handle; + conn->gatt_discover = params; + nble_gattc_discover_req(&discover_params, NULL); break; default: