Repository: incubator-mynewt-core Updated Branches: refs/heads/bluetooth5 87329b514 -> 230462f8f
nimble/controller: MYNEWT-726 Modify how the controller deals with the terminate procedure. The old method set a pending control procedure bit and it was not the best way to deal with this since the terminate procedure can occur while another control procedure is in process. The new method uses a flag in the connection state machine flags to denote that the terminate procedure was started. Started means a control pdu was allocated and enqueued. The disconnect reason being non-zero means that the connection is to be terminated. 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/46d67b04 Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/46d67b04 Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/46d67b04 Branch: refs/heads/bluetooth5 Commit: 46d67b04b26d25391d057785765549e5f72d04d0 Parents: 87329b5 Author: William San Filippo <[email protected]> Authored: Fri Apr 14 12:51:51 2017 -0700 Committer: Åukasz Rymanowski <[email protected]> Committed: Thu Apr 27 18:39:34 2017 +0200 ---------------------------------------------------------------------- net/nimble/controller/include/controller/ble_ll_conn.h | 1 + 1 file changed, 1 insertion(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/46d67b04/net/nimble/controller/include/controller/ble_ll_conn.h ---------------------------------------------------------------------- diff --git a/net/nimble/controller/include/controller/ble_ll_conn.h b/net/nimble/controller/include/controller/ble_ll_conn.h index cf5f9b1..7817c65 100644 --- a/net/nimble/controller/include/controller/ble_ll_conn.h +++ b/net/nimble/controller/include/controller/ble_ll_conn.h @@ -273,6 +273,7 @@ struct ble_ll_conn_sm #define CONN_F_LE_PING_SUPP(csm) ((csm)->csmflags.cfbit.le_ping_supp) #define CONN_F_TERMINATE_STARTED(csm) ((csm)->csmflags.cfbit.terminate_started) #define CONN_F_CSA2_SUPP(csm) ((csm)->csmflags.cfbit.csa2_supp) +#define CONN_F_TERMINATE_STARTED(csm) ((csm)->csmflags.cfbit.terminate_started) /* Role */ #define CONN_IS_MASTER(csm) (csm->conn_role == BLE_LL_CONN_ROLE_MASTER)
