You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by an...@apache.org on 2022/02/08 11:13:55 UTC
[mynewt-nimble] 01/02: nimble/ll: Fix sca update handling
This is an automated email from the ASF dual-hosted git repository.
andk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-nimble.git
commit 3596504a10ff6b1a8c65c6e22bb6a34bbb3cb581
Author: Andrzej Kaczmarek <an...@codecoup.pl>
AuthorDate: Sat Feb 5 12:26:39 2022 +0100
nimble/ll: Fix sca update handling
We should use new sca in connsm...
---
nimble/controller/src/ble_ll_ctrl.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/nimble/controller/src/ble_ll_ctrl.c b/nimble/controller/src/ble_ll_ctrl.c
index 78cf075..919f4a5 100644
--- a/nimble/controller/src/ble_ll_ctrl.c
+++ b/nimble/controller/src/ble_ll_ctrl.c
@@ -1110,7 +1110,12 @@ static uint8_t
ble_ll_ctrl_rx_sca_req(struct ble_ll_conn_sm *connsm, uint8_t *dptr,
uint8_t *rsp)
{
+ if (connsm->conn_role == BLE_LL_CONN_ROLE_SLAVE) {
+ connsm->master_sca = dptr[0];
+ }
+
ble_ll_ctrl_sca_req_rsp_make(connsm, rsp);
+
return BLE_LL_CTRL_CLOCK_ACCURACY_RSP;
}
@@ -1128,8 +1133,14 @@ ble_ll_ctrl_rx_sca_rsp(struct ble_ll_conn_sm *connsm, uint8_t *dptr)
if (connsm->cur_ctrl_proc != BLE_LL_CTRL_PROC_SCA_UPDATE) {
return BLE_LL_CTRL_UNKNOWN_RSP;
}
+
+ if (connsm->conn_role == BLE_LL_CONN_ROLE_SLAVE) {
+ connsm->master_sca = dptr[0];
+ }
+
ble_ll_ctrl_proc_stop(connsm, BLE_LL_CTRL_PROC_SCA_UPDATE);
ble_ll_hci_ev_sca_update(connsm, BLE_ERR_SUCCESS, dptr[0]);
+
return BLE_ERR_MAX;
}