You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by cc...@apache.org on 2016/07/08 21:19:52 UTC

[05/50] [abbrv] incubator-mynewt-core git commit: BLE Host - Return BLE_HS_ETIMEOUT_HCI on ack tmo.

BLE Host - Return BLE_HS_ETIMEOUT_HCI on ack tmo.


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/b8b32326
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/b8b32326
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/b8b32326

Branch: refs/heads/master
Commit: b8b32326ccfcc1dfdef1b1d36051a4345e249c20
Parents: af6cb23
Author: Christopher Collins <cc...@apache.org>
Authored: Mon Jun 20 20:06:03 2016 -0700
Committer: Christopher Collins <cc...@apache.org>
Committed: Mon Jun 20 20:31:29 2016 -0700

----------------------------------------------------------------------
 net/nimble/host/include/host/ble_hs.h       |  1 +
 net/nimble/host/src/ble_hci_cmd.c           | 12 +++++++++++-
 net/nimble/host/src/test/ble_hs_conn_test.c |  2 +-
 net/nimble/host/src/test/ble_hs_test_util.c |  2 +-
 4 files changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/b8b32326/net/nimble/host/include/host/ble_hs.h
----------------------------------------------------------------------
diff --git a/net/nimble/host/include/host/ble_hs.h b/net/nimble/host/include/host/ble_hs.h
index 1f46f6d..18eb588 100644
--- a/net/nimble/host/include/host/ble_hs.h
+++ b/net/nimble/host/include/host/ble_hs.h
@@ -53,6 +53,7 @@ struct os_event;
 #define BLE_HS_EREJECT              17
 #define BLE_HS_EUNKNOWN             18
 #define BLE_HS_EROLE                19
+#define BLE_HS_ETIMEOUT_HCI         20
 
 #define BLE_HS_ERR_ATT_BASE         0x100   /* 256 */
 #define BLE_HS_ATT_ERR(x)           ((x) ? BLE_HS_ERR_ATT_BASE + (x) : 0)

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/b8b32326/net/nimble/host/src/ble_hci_cmd.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_hci_cmd.c b/net/nimble/host/src/ble_hci_cmd.c
index 8580673..c41f038 100644
--- a/net/nimble/host/src/ble_hci_cmd.c
+++ b/net/nimble/host/src/ble_hci_cmd.c
@@ -199,7 +199,7 @@ ble_hci_cmd_wait_for_ack(void)
 
 #if PHONY_HCI_ACKS
     if (ble_hci_cmd_phony_ack_cb == NULL) {
-        rc = BLE_HS_ETIMEOUT;
+        rc = BLE_HS_ETIMEOUT_HCI;
     } else {
         BLE_HS_DBG_ASSERT(ble_hci_cmd_ack_ev == NULL);
         ble_hci_cmd_ack_ev = os_memblock_get(&g_hci_cmd_pool);
@@ -211,6 +211,16 @@ ble_hci_cmd_wait_for_ack(void)
     }
 #else
     rc = os_sem_pend(&ble_hci_cmd_sem, BLE_HCI_CMD_TIMEOUT);
+    switch (rc) {
+    case 0:
+        break;
+    case OS_TIMEOUT:
+        rc = BLE_HS_ETIMEOUT_HCI;
+        break;
+    default:
+        rc = BLE_HS_EOS;
+        break;
+    }
 #endif
 
     return rc;

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/b8b32326/net/nimble/host/src/test/ble_hs_conn_test.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/test/ble_hs_conn_test.c b/net/nimble/host/src/test/ble_hs_conn_test.c
index c56efe0..5f86ad1 100644
--- a/net/nimble/host/src/test/ble_hs_conn_test.c
+++ b/net/nimble/host/src/test/ble_hs_conn_test.c
@@ -98,7 +98,7 @@ TEST_CASE(ble_hs_conn_test_direct_connect_hci_errors)
 
     /* Initiate connection; receive no HCI ack. */
     rc = ble_gap_conn_initiate(0, addr, NULL, NULL, NULL);
-    TEST_ASSERT(rc == BLE_HS_ETIMEOUT);
+    TEST_ASSERT(rc == BLE_HS_ETIMEOUT_HCI);
 
     TEST_ASSERT(!ble_gap_master_in_progress());
     TEST_ASSERT(!ble_hs_conn_test_util_any());

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/b8b32326/net/nimble/host/src/test/ble_hs_test_util.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/test/ble_hs_test_util.c b/net/nimble/host/src/test/ble_hs_test_util.c
index 782d359..e2f28c7 100644
--- a/net/nimble/host/src/test/ble_hs_test_util.c
+++ b/net/nimble/host/src/test/ble_hs_test_util.c
@@ -245,7 +245,7 @@ ble_hs_test_util_phony_ack_cb(uint8_t *ack, int ack_buf_len)
     struct ble_hs_test_util_phony_ack *entry;
 
     if (ble_hs_test_util_num_phony_acks == 0) {
-        return BLE_HS_ETIMEOUT;
+        return BLE_HS_ETIMEOUT_HCI;
     }
 
     entry = ble_hs_test_util_phony_acks;