Bluetooth: Controller: llcp: Make remote CTE REQ to compile with CTE RSP
Part of the CTE request procdure that is related with handling of remote request should be compiled when CTE RSP is enabled. Withouth it CTE response will not work. Local CTE request does not need code reponsible for handling of remote reques. The commit changes conditional compilation guards. Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
This commit is contained in:
parent
e3eb224cd0
commit
6587336a5b
5 changed files with 22 additions and 13 deletions
|
@ -391,7 +391,7 @@ struct proc_ctx *llcp_create_remote_procedure(enum llcp_proc proc)
|
||||||
llcp_rp_comm_init_proc(ctx);
|
llcp_rp_comm_init_proc(ctx);
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
||||||
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_REQ)
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
case PROC_CTE_REQ:
|
case PROC_CTE_REQ:
|
||||||
llcp_rp_comm_init_proc(ctx);
|
llcp_rp_comm_init_proc(ctx);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -692,11 +692,11 @@ static void rp_comm_rx_decode(struct ll_conn *conn, struct proc_ctx *ctx, struct
|
||||||
llcp_tx_pause_data(conn);
|
llcp_tx_pause_data(conn);
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
||||||
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_REQ)
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
case PDU_DATA_LLCTRL_TYPE_CTE_REQ:
|
case PDU_DATA_LLCTRL_TYPE_CTE_REQ:
|
||||||
llcp_pdu_decode_cte_req(conn, pdu);
|
llcp_pdu_decode_cte_req(conn, pdu);
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_RSP */
|
||||||
default:
|
default:
|
||||||
/* Unknown opcode */
|
/* Unknown opcode */
|
||||||
LL_ASSERT(0);
|
LL_ASSERT(0);
|
||||||
|
@ -737,13 +737,14 @@ static void rp_comm_tx(struct ll_conn *conn, struct proc_ctx *ctx)
|
||||||
ctx->rx_opcode = PDU_DATA_LLCTRL_TYPE_LENGTH_RSP;
|
ctx->rx_opcode = PDU_DATA_LLCTRL_TYPE_LENGTH_RSP;
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
||||||
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_REQ)
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
case PROC_CTE_REQ: {
|
case PROC_CTE_REQ: {
|
||||||
uint8_t err_code = 0;
|
uint8_t err_code = 0;
|
||||||
|
|
||||||
if (conn->llcp.cte_rsp.is_enabled == 0) {
|
if (conn->llcp.cte_rsp.is_enabled == 0) {
|
||||||
err_code = BT_HCI_ERR_UNSUPP_LL_PARAM_VAL;
|
err_code = BT_HCI_ERR_UNSUPP_LL_PARAM_VAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(CONFIG_BT_PHY_UPDATE)
|
#if defined(CONFIG_BT_PHY_UPDATE)
|
||||||
/* If the PHY update is not possible, then PHY1M is used.
|
/* If the PHY update is not possible, then PHY1M is used.
|
||||||
* CTE is supported for PHY1M.
|
* CTE is supported for PHY1M.
|
||||||
|
@ -766,7 +767,7 @@ static void rp_comm_tx(struct ll_conn *conn, struct proc_ctx *ctx)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_RSP */
|
||||||
default:
|
default:
|
||||||
/* Unknown procedure */
|
/* Unknown procedure */
|
||||||
LL_ASSERT(0);
|
LL_ASSERT(0);
|
||||||
|
@ -920,7 +921,7 @@ static void rp_comm_send_rsp(struct ll_conn *conn, struct proc_ctx *ctx, uint8_t
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
||||||
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_REQ)
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
case PROC_CTE_REQ:
|
case PROC_CTE_REQ:
|
||||||
if (ctx->pause || !llcp_tx_alloc_peek(conn, ctx)) {
|
if (ctx->pause || !llcp_tx_alloc_peek(conn, ctx)) {
|
||||||
ctx->state = RP_COMMON_STATE_WAIT_TX;
|
ctx->state = RP_COMMON_STATE_WAIT_TX;
|
||||||
|
@ -930,7 +931,7 @@ static void rp_comm_send_rsp(struct ll_conn *conn, struct proc_ctx *ctx, uint8_t
|
||||||
ctx->state = RP_COMMON_STATE_IDLE;
|
ctx->state = RP_COMMON_STATE_IDLE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_RSP */
|
||||||
default:
|
default:
|
||||||
/* Unknown procedure */
|
/* Unknown procedure */
|
||||||
LL_ASSERT(0);
|
LL_ASSERT(0);
|
||||||
|
|
|
@ -583,9 +583,15 @@ void llcp_ntf_encode_length_change(struct ll_conn *conn,
|
||||||
*/
|
*/
|
||||||
void llcp_pdu_encode_cte_req(struct proc_ctx *ctx, struct pdu_data *pdu);
|
void llcp_pdu_encode_cte_req(struct proc_ctx *ctx, struct pdu_data *pdu);
|
||||||
void llcp_ntf_encode_cte_req(struct ll_conn *conn, struct pdu_data *pdu);
|
void llcp_ntf_encode_cte_req(struct ll_conn *conn, struct pdu_data *pdu);
|
||||||
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
||||||
|
|
||||||
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
|
/*
|
||||||
|
* Constant Tone Response Procedure Helper
|
||||||
|
*/
|
||||||
void llcp_pdu_decode_cte_req(struct ll_conn *conn, struct pdu_data *pdu);
|
void llcp_pdu_decode_cte_req(struct ll_conn *conn, struct pdu_data *pdu);
|
||||||
void llcp_pdu_encode_cte_rsp(struct ll_conn *conn, struct pdu_data *pdu);
|
void llcp_pdu_encode_cte_rsp(struct ll_conn *conn, struct pdu_data *pdu);
|
||||||
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_RSP */
|
||||||
|
|
||||||
#ifdef ZTEST_UNITTEST
|
#ifdef ZTEST_UNITTEST
|
||||||
bool lr_is_disconnected(struct ll_conn *conn);
|
bool lr_is_disconnected(struct ll_conn *conn);
|
||||||
|
|
|
@ -736,7 +736,9 @@ void llcp_ntf_encode_cte_req(struct ll_conn *conn, struct pdu_data *pdu)
|
||||||
|
|
||||||
/* TODO add handling of IQ samples forwarding */
|
/* TODO add handling of IQ samples forwarding */
|
||||||
}
|
}
|
||||||
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
||||||
|
|
||||||
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
void llcp_pdu_decode_cte_req(struct ll_conn *conn, struct pdu_data *pdu)
|
void llcp_pdu_decode_cte_req(struct ll_conn *conn, struct pdu_data *pdu)
|
||||||
{
|
{
|
||||||
conn->llcp.cte_req.min_cte_len = pdu->llctrl.cte_req.min_cte_len_req;
|
conn->llcp.cte_req.min_cte_len = pdu->llctrl.cte_req.min_cte_len_req;
|
||||||
|
@ -757,4 +759,4 @@ void llcp_pdu_encode_cte_rsp(struct ll_conn *conn, struct pdu_data *pdu)
|
||||||
pdu->cte_info.time = conn->llcp.cte_req.min_cte_len;
|
pdu->cte_info.time = conn->llcp.cte_req.min_cte_len;
|
||||||
pdu->cte_info.type = conn->llcp.cte_req.cte_type;
|
pdu->cte_info.type = conn->llcp.cte_req.cte_type;
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_RSP */
|
||||||
|
|
|
@ -240,11 +240,11 @@ void llcp_rr_rx(struct ll_conn *conn, struct proc_ctx *ctx, struct node_rx_pdu *
|
||||||
llcp_rp_comm_rx(conn, ctx, rx);
|
llcp_rp_comm_rx(conn, ctx, rx);
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
||||||
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_REQ)
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
case PROC_CTE_REQ:
|
case PROC_CTE_REQ:
|
||||||
llcp_rp_comm_rx(conn, ctx, rx);
|
llcp_rp_comm_rx(conn, ctx, rx);
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_RSP */
|
||||||
default:
|
default:
|
||||||
/* Unknown procedure */
|
/* Unknown procedure */
|
||||||
LL_ASSERT(0);
|
LL_ASSERT(0);
|
||||||
|
@ -325,11 +325,11 @@ static void rr_act_run(struct ll_conn *conn)
|
||||||
llcp_rp_comm_run(conn, ctx, NULL);
|
llcp_rp_comm_run(conn, ctx, NULL);
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
||||||
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_REQ)
|
#if defined(CONFIG_BT_CTLR_DF_CONN_CTE_RSP)
|
||||||
case PROC_CTE_REQ:
|
case PROC_CTE_REQ:
|
||||||
llcp_rp_comm_run(conn, ctx, NULL);
|
llcp_rp_comm_run(conn, ctx, NULL);
|
||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_REQ */
|
#endif /* CONFIG_BT_CTLR_DF_CONN_CTE_RSP */
|
||||||
default:
|
default:
|
||||||
/* Unknown procedure */
|
/* Unknown procedure */
|
||||||
LL_ASSERT(0);
|
LL_ASSERT(0);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue