Bluetooth: controller: Remove vendor specific internal LLL include

Remove inclusion of vendor specific internal LLL include
files in ULL source code.

Prefix `lll/` include file path to correctly include vendor
defined types and function implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
This commit is contained in:
Vinayak Kariappa Chettimada 2021-02-24 16:42:02 +05:30 committed by Carles Cufí
commit f9511079b2
35 changed files with 387 additions and 368 deletions

View file

@ -26,21 +26,28 @@
#include "util/util.h" #include "util/util.h"
#include "util/memq.h" #include "util/memq.h"
#include "hal/ecb.h" #include "hal/ecb.h"
#include "hal/ccm.h" #include "hal/ccm.h"
#include "ll_sw/pdu.h" #include "ll_sw/pdu.h"
#include "ll_sw/lll.h" #include "ll_sw/lll.h"
#include "lll/lll_adv_types.h"
#include "ll_sw/lll_adv.h" #include "ll_sw/lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "ll_sw/lll_sync_iso.h" #include "ll_sw/lll_sync_iso.h"
#include "ll_sw/lll_scan.h" #include "ll_sw/lll_scan.h"
#include "ll_sw/lll_sync.h" #include "ll_sw/lll_sync.h"
#include "ll_sw/lll_conn.h" #include "ll_sw/lll_conn.h"
#include "ll_sw/lll_conn_iso.h" #include "ll_sw/lll_conn_iso.h"
#include "ll_sw/ull_adv_types.h" #include "ll_sw/ull_adv_types.h"
#include "ll_sw/ull_scan_types.h" #include "ll_sw/ull_scan_types.h"
#include "ll_sw/ull_sync_types.h" #include "ll_sw/ull_sync_types.h"
#include "ll_sw/ull_conn_types.h" #include "ll_sw/ull_conn_types.h"
#include "ll_sw/ull_conn_iso_types.h" #include "ll_sw/ull_conn_iso_types.h"
#include "ll.h" #include "ll.h"
#include "ll_feat.h" #include "ll_feat.h"
#include "ll_settings.h" #include "ll_settings.h"

View file

@ -15,13 +15,12 @@
#include "util/util.h" #include "util/util.h"
#include "util/memq.h" #include "util/memq.h"
#include "hal/cpu.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h"
#include "lll.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "ull_adv_types.h" #include "ull_adv_types.h"
@ -29,6 +28,8 @@
#include "ull_adv_internal.h" #include "ull_adv_internal.h"
#include "ull_scan_internal.h" #include "ull_scan_internal.h"
#include "ll.h"
static uint8_t pub_addr[BDADDR_SIZE]; static uint8_t pub_addr[BDADDR_SIZE];
static uint8_t rnd_addr[BDADDR_SIZE]; static uint8_t rnd_addr[BDADDR_SIZE];

View file

@ -19,21 +19,23 @@
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll/lll_adv_types.h"
#include "lll_scan.h"
#include "ull_scan_types.h"
#include "ull_scan_internal.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "ull_adv_types.h" #include "lll/lll_adv_pdu.h"
#include "ull_adv_internal.h" #include "lll_scan.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "ull_adv_types.h"
#include "ull_scan_types.h"
#include "ull_conn_types.h" #include "ull_conn_types.h"
#include "ull_adv_internal.h"
#include "ull_scan_internal.h"
#include "ull_conn_internal.h" #include "ull_conn_internal.h"
#include "ll.h"
uint8_t ll_tx_pwr_lvl_get(uint8_t handle_type, uint8_t ll_tx_pwr_lvl_get(uint8_t handle_type,
uint16_t handle, uint8_t type, int8_t *tx_pwr_lvl) uint16_t handle, uint8_t type, int8_t *tx_pwr_lvl)
{ {

View file

@ -4,8 +4,6 @@
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
#include "lll_adv_pdu.h"
struct lll_adv_iso { struct lll_adv_iso {
struct lll_hdr hdr; struct lll_hdr hdr;
struct lll_adv *adv; struct lll_adv *adv;

View file

@ -6,3 +6,6 @@
int lll_df_init(void); int lll_df_init(void);
int lll_df_reset(void); int lll_df_reset(void);
/* Provides number of available antennae for Direction Finding */
uint8_t lll_df_ant_num_get(void);

View file

@ -29,19 +29,20 @@
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll_adv_pdu.h"
#include "lll_adv_aux.h" #include "lll_adv_aux.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_chan.h" #include "lll_chan.h"
#include "lll_filter.h" #include "lll_filter.h"
#include "lll_df_types.h"
#include "lll_internal.h" #include "lll_internal.h"
#include "lll_tim_internal.h" #include "lll_tim_internal.h"
#include "lll_adv_internal.h" #include "lll_adv_internal.h"
#include "lll_prof_internal.h" #include "lll_prof_internal.h"
#if defined(CONFIG_BT_CTLR_DF_ADV_CTE_TX)
#include "lll_df_internal.h" #include "lll_df_internal.h"
#endif /* CONFIG_BT_CTLR_DF_ADV_CTE_TX */
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_lll_adv #define LOG_MODULE_NAME bt_ctlr_lll_adv

View file

@ -25,7 +25,9 @@
#include "lll_vendor.h" #include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll_chan.h" #include "lll_chan.h"
#include "lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll_adv_pdu.h"
#include "lll_adv_aux.h" #include "lll_adv_aux.h"
#include "lll_filter.h" #include "lll_filter.h"

View file

@ -4,114 +4,6 @@
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
int lll_adv_data_init(struct lll_adv_pdu *pdu);
int lll_adv_data_reset(struct lll_adv_pdu *pdu);
int lll_adv_data_release(struct lll_adv_pdu *pdu);
struct pdu_adv *lll_adv_pdu_alloc(struct lll_adv_pdu *pdu, uint8_t *idx);
int lll_adv_and_extra_data_release(struct lll_adv_pdu *pdu);
struct pdu_adv *lll_adv_pdu_and_extra_data_alloc(struct lll_adv_pdu *pdu,
void **extra_data,
uint8_t *idx);
static inline void lll_adv_pdu_enqueue(struct lll_adv_pdu *pdu, uint8_t idx)
{
pdu->last = idx;
}
static inline struct pdu_adv *lll_adv_data_alloc(struct lll_adv *lll, uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->adv_data, idx);
}
static inline void lll_adv_data_enqueue(struct lll_adv *lll, uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->adv_data, idx);
}
static inline struct pdu_adv *lll_adv_data_peek(struct lll_adv *lll)
{
return (void *)lll->adv_data.pdu[lll->adv_data.last];
}
static inline struct pdu_adv *lll_adv_scan_rsp_alloc(struct lll_adv *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->scan_rsp, idx);
}
static inline void lll_adv_scan_rsp_enqueue(struct lll_adv *lll, uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->scan_rsp, idx);
}
static inline struct pdu_adv *lll_adv_scan_rsp_peek(struct lll_adv *lll)
{
return (void *)lll->scan_rsp.pdu[lll->scan_rsp.last];
}
#if defined(CONFIG_BT_CTLR_ADV_EXT)
static inline struct pdu_adv *lll_adv_aux_data_alloc(struct lll_adv_aux *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->data, idx);
}
static inline void lll_adv_aux_data_enqueue(struct lll_adv_aux *lll,
uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->data, idx);
}
static inline struct pdu_adv *lll_adv_aux_data_peek(struct lll_adv_aux *lll)
{
return (void *)lll->data.pdu[lll->data.last];
}
#if defined(CONFIG_BT_CTLR_ADV_PERIODIC)
static inline struct pdu_adv *lll_adv_sync_data_alloc(struct lll_adv_sync *lll,
void **extra_data,
uint8_t *idx)
{
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY)
return lll_adv_pdu_and_extra_data_alloc(&lll->data, extra_data, idx);
#else
return lll_adv_pdu_alloc(&lll->data, idx);
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */
}
static inline void lll_adv_sync_data_release(struct lll_adv_sync *lll)
{
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY)
lll_adv_and_extra_data_release(&lll->data);
#else
lll_adv_data_release(&lll->data);
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */
}
static inline void lll_adv_sync_data_enqueue(struct lll_adv_sync *lll,
uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->data, idx);
}
static inline struct pdu_adv *lll_adv_sync_data_peek(struct lll_adv_sync *lll,
void **extra_data)
{
uint8_t last = lll->data.last;
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY)
if (extra_data) {
*extra_data = lll->data.extra_data[last];
}
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */
return (void *)lll->data.pdu[last];
}
#endif /* CONFIG_BT_CTLR_ADV_PERIODIC */
#endif /* CONFIG_BT_CTLR_ADV_EXT */
struct pdu_adv *lll_adv_pdu_latest_get(struct lll_adv_pdu *pdu, struct pdu_adv *lll_adv_pdu_latest_get(struct lll_adv_pdu *pdu,
uint8_t *is_modified); uint8_t *is_modified);
@ -134,11 +26,6 @@ static inline struct pdu_adv *lll_adv_scan_rsp_latest_get(struct lll_adv *lll,
return lll_adv_pdu_latest_get(&lll->scan_rsp, is_modified); return lll_adv_pdu_latest_get(&lll->scan_rsp, is_modified);
} }
static inline struct pdu_adv *lll_adv_data_curr_get(struct lll_adv *lll)
{
return (void *)lll->adv_data.pdu[lll->adv_data.first];
}
static inline struct pdu_adv *lll_adv_scan_rsp_curr_get(struct lll_adv *lll) static inline struct pdu_adv *lll_adv_scan_rsp_curr_get(struct lll_adv *lll)
{ {
return (void *)lll->scan_rsp.pdu[lll->scan_rsp.first]; return (void *)lll->scan_rsp.pdu[lll->scan_rsp.first];
@ -151,11 +38,6 @@ lll_adv_aux_data_latest_get(struct lll_adv_aux *lll, uint8_t *is_modified)
return lll_adv_pdu_latest_get(&lll->data, is_modified); return lll_adv_pdu_latest_get(&lll->data, is_modified);
} }
static inline struct pdu_adv *lll_adv_aux_data_curr_get(struct lll_adv_aux *lll)
{
return (void *)lll->data.pdu[lll->data.first];
}
#if defined(CONFIG_BT_CTLR_ADV_PERIODIC) #if defined(CONFIG_BT_CTLR_ADV_PERIODIC)
static inline struct pdu_adv * static inline struct pdu_adv *
lll_adv_sync_data_latest_get(struct lll_adv_sync *lll, void **extra_data, lll_adv_sync_data_latest_get(struct lll_adv_sync *lll, void **extra_data,

View file

@ -1,28 +1,125 @@
/* /*
* Copyright (c) 2018-2019 Nordic Semiconductor ASA * Copyright (c) 2018-2021 Nordic Semiconductor ASA
* *
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
/* Structure used to double buffer pointers of AD Data PDU buffer. int lll_adv_data_init(struct lll_adv_pdu *pdu);
* The first and last members are used to make modification to AD data to be int lll_adv_data_reset(struct lll_adv_pdu *pdu);
* context safe. Thread always appends or updates the buffer pointed to int lll_adv_data_release(struct lll_adv_pdu *pdu);
* the array element indexed by the member last.
* LLL in the ISR context, checks, traverses to the valid pointer indexed static inline void lll_adv_pdu_enqueue(struct lll_adv_pdu *pdu, uint8_t idx)
* by the member first, such that the buffer is the latest committed by {
* the thread context. pdu->last = idx;
*/ }
struct lll_adv_pdu {
uint8_t volatile first; struct pdu_adv *lll_adv_pdu_alloc(struct lll_adv_pdu *pdu, uint8_t *idx);
uint8_t last;
uint8_t *pdu[DOUBLE_BUFFER_SIZE]; static inline struct pdu_adv *lll_adv_data_alloc(struct lll_adv *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->adv_data, idx);
}
static inline void lll_adv_data_enqueue(struct lll_adv *lll, uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->adv_data, idx);
}
static inline struct pdu_adv *lll_adv_data_peek(struct lll_adv *lll)
{
return (void *)lll->adv_data.pdu[lll->adv_data.last];
}
static inline struct pdu_adv *lll_adv_data_curr_get(struct lll_adv *lll)
{
return (void *)lll->adv_data.pdu[lll->adv_data.first];
}
static inline struct pdu_adv *lll_adv_scan_rsp_alloc(struct lll_adv *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->scan_rsp, idx);
}
static inline void lll_adv_scan_rsp_enqueue(struct lll_adv *lll, uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->scan_rsp, idx);
}
static inline struct pdu_adv *lll_adv_scan_rsp_peek(struct lll_adv *lll)
{
return (void *)lll->scan_rsp.pdu[lll->scan_rsp.last];
}
#if defined(CONFIG_BT_CTLR_ADV_EXT)
static inline struct pdu_adv *lll_adv_aux_data_alloc(struct lll_adv_aux *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->data, idx);
}
static inline void lll_adv_aux_data_enqueue(struct lll_adv_aux *lll,
uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->data, idx);
}
static inline struct pdu_adv *lll_adv_aux_data_peek(struct lll_adv_aux *lll)
{
return (void *)lll->data.pdu[lll->data.last];
}
static inline struct pdu_adv *lll_adv_aux_data_curr_get(struct lll_adv_aux *lll)
{
return (void *)lll->data.pdu[lll->data.first];
}
#if defined(CONFIG_BT_CTLR_ADV_PERIODIC)
int lll_adv_and_extra_data_release(struct lll_adv_pdu *pdu);
struct pdu_adv *lll_adv_pdu_and_extra_data_alloc(struct lll_adv_pdu *pdu,
void **extra_data,
uint8_t *idx);
static inline struct pdu_adv *lll_adv_sync_data_alloc(struct lll_adv_sync *lll,
void **extra_data,
uint8_t *idx)
{
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY) #if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY)
/* This is a storage for LLL configuration that may be return lll_adv_pdu_and_extra_data_alloc(&lll->data, extra_data, idx);
* changed while LLL advertising role is started. #else
* Also it makes the configuration data to be in sync return lll_adv_pdu_alloc(&lll->data, idx);
* with extended advertising PDU e.g. CTE TX configuration
* and CTEInfo field.
*/
void *extra_data[DOUBLE_BUFFER_SIZE];
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */ #endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */
}; }
static inline void lll_adv_sync_data_release(struct lll_adv_sync *lll)
{
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY)
lll_adv_and_extra_data_release(&lll->data);
#else
lll_adv_data_release(&lll->data);
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */
}
static inline void lll_adv_sync_data_enqueue(struct lll_adv_sync *lll,
uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->data, idx);
}
static inline struct pdu_adv *lll_adv_sync_data_peek(struct lll_adv_sync *lll,
void **extra_data)
{
uint8_t last = lll->data.last;
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY)
if (extra_data) {
*extra_data = lll->data.extra_data[last];
}
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */
return (void *)lll->data.pdu[last];
}
#endif /* CONFIG_BT_CTLR_ADV_PERIODIC */
#endif /* CONFIG_BT_CTLR_ADV_EXT */

View file

@ -23,15 +23,16 @@
#include "lll_vendor.h" #include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll_chan.h" #include "lll_chan.h"
#include "lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll_adv_pdu.h"
#include "lll_adv_sync.h" #include "lll_adv_sync.h"
#include "lll_df_types.h"
#include "lll_internal.h" #include "lll_internal.h"
#include "lll_adv_internal.h" #include "lll_adv_internal.h"
#include "lll_tim_internal.h" #include "lll_tim_internal.h"
#if defined(CONFIG_BT_CTLR_DF_ADV_CTE_TX)
#include "lll_df_internal.h" #include "lll_df_internal.h"
#endif /* CONFIG_BT_CTLR_DF_ADV_CTE_TX */
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_lll_adv_sync #define LOG_MODULE_NAME bt_ctlr_lll_adv_sync

View file

@ -0,0 +1,28 @@
/*
* Copyright (c) 2018-2019 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
/* Structure used to double buffer pointers of AD Data PDU buffer.
* The first and last members are used to make modification to AD data to be
* context safe. Thread always appends or updates the buffer pointed to
* the array element indexed by the member last.
* LLL in the ISR context, checks, traverses to the valid pointer indexed
* by the member first, such that the buffer is the latest committed by
* the thread context.
*/
struct lll_adv_pdu {
uint8_t volatile first;
uint8_t last;
uint8_t *pdu[DOUBLE_BUFFER_SIZE];
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY)
/* This is a storage for LLL configuration that may be
* changed while LLL advertising role is started.
* Also it makes the configuration data to be in sync
* with extended advertising PDU e.g. CTE TX configuration
* and CTEInfo field.
*/
void *extra_data[DOUBLE_BUFFER_SIZE];
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */
};

View file

@ -4,33 +4,6 @@
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
/* @brief Configuration of Constant Tone Extension for connectionless
* transmission.
*/
struct lll_df_adv_cfg {
uint8_t is_enabled:1;
uint8_t is_started:1;
uint8_t cte_length:6; /* Length of CTE in 8us units */
uint8_t cte_type:2;
uint8_t cte_count:6;
uint8_t ant_sw_len:6;
uint8_t ant_ids[CONFIG_BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN];
};
/* @brief Max supported CTE length in 8us units */
#define LLL_DF_MAX_CTE_LEN 20
/* @brief Min supported CTE length in 8us units */
#define LLL_DF_MIN_CTE_LEN 2
/* @brief Min supported length of antenna switching pattern */
#define LLL_DF_MIN_ANT_PATTERN_LEN 3
/* @brief Macro to convert length of CTE to [us] */
#define CTE_LEN_US(n) ((n) * 8U)
/* Provides number of available antennae for Direction Finding */
uint8_t lll_df_ant_num_get(void);
/* Enables CTE transmission according to provided configuration */ /* Enables CTE transmission according to provided configuration */
void lll_df_conf_cte_tx_enable(uint8_t type, uint8_t length, void lll_df_conf_cte_tx_enable(uint8_t type, uint8_t length,
uint8_t ant_num, uint8_t *ant_ids); uint8_t ant_num, uint8_t *ant_ids);

View file

@ -0,0 +1,36 @@
/*
* Copyright (c) 2020 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
/* @brief Max supported CTE length in 8us units */
#define LLL_DF_MAX_CTE_LEN 20
/* @brief Min supported CTE length in 8us units */
#define LLL_DF_MIN_CTE_LEN 2
/* @brief Min supported length of antenna switching pattern */
#define LLL_DF_MIN_ANT_PATTERN_LEN 3
/* @brief Macro to convert length of CTE to [us] */
#define CTE_LEN_US(n) ((n) * 8U)
#if defined(CONFIG_BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN)
#define BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN \
CONFIG_BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN
#else
#define BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN 0
#endif
/* @brief Configuration of Constant Tone Extension for connectionless
* transmission.
*/
struct lll_df_adv_cfg {
uint8_t is_enabled:1;
uint8_t is_started:1;
uint8_t cte_length:6; /* Length of CTE in 8us units */
uint8_t cte_type:2;
uint8_t cte_count:6;
uint8_t ant_sw_len:6;
uint8_t ant_ids[BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN];
};

View file

@ -59,9 +59,6 @@ if(CONFIG_BT_LL_SW_SPLIT)
if(CONFIG_BT_CTLR_DF AND NOT CONFIG_SOC_SERIES_BSIM_NRFXX) if(CONFIG_BT_CTLR_DF AND NOT CONFIG_SOC_SERIES_BSIM_NRFXX)
zephyr_library_sources(ll_sw/nordic/hal/nrf5/radio/radio_df.c) zephyr_library_sources(ll_sw/nordic/hal/nrf5/radio/radio_df.c)
endif() endif()
zephyr_library_include_directories(
ll_sw/nordic/lll
)
endif() endif()
zephyr_library_sources( zephyr_library_sources(

View file

@ -30,9 +30,6 @@ if(CONFIG_BT_LL_SW_SPLIT)
) )
endif() endif()
endif() endif()
zephyr_library_include_directories(
ll_sw/openisa/lll
)
zephyr_library_sources_ifdef( zephyr_library_sources_ifdef(
CONFIG_BT_CTLR_DTM CONFIG_BT_CTLR_DTM
ll_sw/openisa/lll/lll_test.c ll_sw/openisa/lll/lll_test.c

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2018-2019 Nordic Semiconductor ASA * Copyright (c) 2018-2021 Nordic Semiconductor ASA
* *
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
@ -28,7 +28,9 @@
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll_vendor.h"
#include "lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll_adv_pdu.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_chan.h" #include "lll_chan.h"
#include "lll_filter.h" #include "lll_filter.h"

View file

@ -1,91 +1,12 @@
/* /*
* Copyright (c) 2018-2019 Nordic Semiconductor ASA * Copyright (c) 2018-2021 Nordic Semiconductor ASA
* *
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
int lll_adv_data_init(struct lll_adv_pdu *pdu);
int lll_adv_data_reset(struct lll_adv_pdu *pdu);
int lll_adv_data_release(struct lll_adv_pdu *pdu);
struct pdu_adv *lll_adv_pdu_alloc(struct lll_adv_pdu *pdu, uint8_t *idx);
static inline void lll_adv_pdu_enqueue(struct lll_adv_pdu *pdu, uint8_t idx)
{
pdu->last = idx;
}
static inline struct pdu_adv *lll_adv_data_alloc(struct lll_adv *lll, uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->adv_data, idx);
}
static inline void lll_adv_data_enqueue(struct lll_adv *lll, uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->adv_data, idx);
}
static inline struct pdu_adv *lll_adv_data_peek(struct lll_adv *lll)
{
return (void *)lll->adv_data.pdu[lll->adv_data.last];
}
static inline struct pdu_adv *lll_adv_scan_rsp_alloc(struct lll_adv *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->scan_rsp, idx);
}
static inline void lll_adv_scan_rsp_enqueue(struct lll_adv *lll, uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->scan_rsp, idx);
}
static inline struct pdu_adv *lll_adv_scan_rsp_peek(struct lll_adv *lll)
{
return (void *)lll->scan_rsp.pdu[lll->scan_rsp.last];
}
#if defined(CONFIG_BT_CTLR_ADV_EXT)
static inline struct pdu_adv *lll_adv_aux_data_alloc(struct lll_adv_aux *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->data, idx);
}
static inline void lll_adv_aux_data_enqueue(struct lll_adv_aux *lll,
uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->data, idx);
}
static inline struct pdu_adv *lll_adv_aux_data_peek(struct lll_adv_aux *lll)
{
return (void *)lll->data.pdu[lll->data.last];
}
#if defined(CONFIG_BT_CTLR_ADV_PERIODIC)
static inline struct pdu_adv *lll_adv_sync_data_alloc(struct lll_adv_sync *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->data, idx);
}
static inline void lll_adv_sync_data_enqueue(struct lll_adv_sync *lll,
uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->data, idx);
}
static inline struct pdu_adv *lll_adv_sync_data_peek(struct lll_adv_sync *lll)
{
return (void *)lll->data.pdu[lll->data.last];
}
#endif /* CONFIG_BT_CTLR_ADV_PERIODIC */
#endif /* CONFIG_BT_CTLR_ADV_EXT */
struct pdu_adv *lll_adv_pdu_latest_get(struct lll_adv_pdu *pdu, struct pdu_adv *lll_adv_pdu_latest_get(struct lll_adv_pdu *pdu,
uint8_t *is_modified); uint8_t *is_modified);
static inline struct pdu_adv *lll_adv_data_latest_get(struct lll_adv *lll, static inline struct pdu_adv *lll_adv_data_latest_get(struct lll_adv *lll,
uint8_t *is_modified) uint8_t *is_modified)
{ {

View file

@ -1,28 +1,48 @@
/* /*
* Copyright (c) 2018-2019 Nordic Semiconductor ASA * Copyright (c) 2018-2021 Nordic Semiconductor ASA
* *
* SPDX-License-Identifier: Apache-2.0 * SPDX-License-Identifier: Apache-2.0
*/ */
/* Structure used to double buffer pointers of AD Data PDU buffer. int lll_adv_data_init(struct lll_adv_pdu *pdu);
* The first and last members are used to make modification to AD data to be int lll_adv_data_reset(struct lll_adv_pdu *pdu);
* context safe. Thread always appends or updates the buffer pointed to int lll_adv_data_release(struct lll_adv_pdu *pdu);
* the array element indexed by the member last.
* LLL in the ISR context, checks, traverses to the valid pointer indexed static inline void lll_adv_pdu_enqueue(struct lll_adv_pdu *pdu, uint8_t idx)
* by the member first, such that the buffer is the latest committed by {
* the thread context. pdu->last = idx;
*/ }
struct lll_adv_pdu {
uint8_t volatile first; struct pdu_adv *lll_adv_pdu_alloc(struct lll_adv_pdu *pdu, uint8_t *idx);
uint8_t last;
uint8_t *pdu[DOUBLE_BUFFER_SIZE]; static inline struct pdu_adv *lll_adv_data_alloc(struct lll_adv *lll,
#if defined(CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY) uint8_t *idx)
/* This is a storage for LLL configuration that may be {
* changed while LLL advertising role is started. return lll_adv_pdu_alloc(&lll->adv_data, idx);
* Also it makes the configuration data to be in sync }
* with extended advertising PDU e.g. CTE TX configuration
* and CTEInfo field. static inline void lll_adv_data_enqueue(struct lll_adv *lll, uint8_t idx)
*/ {
void *extra_data[DOUBLE_BUFFER_SIZE]; lll_adv_pdu_enqueue(&lll->adv_data, idx);
#endif /* CONFIG_BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY */ }
};
static inline struct pdu_adv *lll_adv_data_peek(struct lll_adv *lll)
{
return (void *)lll->adv_data.pdu[lll->adv_data.last];
}
static inline struct pdu_adv *lll_adv_scan_rsp_alloc(struct lll_adv *lll,
uint8_t *idx)
{
return lll_adv_pdu_alloc(&lll->scan_rsp, idx);
}
static inline void lll_adv_scan_rsp_enqueue(struct lll_adv *lll, uint8_t idx)
{
lll_adv_pdu_enqueue(&lll->scan_rsp, idx);
}
static inline struct pdu_adv *lll_adv_scan_rsp_peek(struct lll_adv *lll)
{
return (void *)lll->scan_rsp.pdu[lll->scan_rsp.last];
}

View file

@ -0,0 +1,19 @@
/*
* Copyright (c) 2018-2021 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
/* Structure used to double buffer pointers of AD Data PDU buffer.
* The first and last members are used to make modification to AD data to be
* context safe. Thread always appends or updates the buffer pointed to
* the array element indexed by the member last.
* LLL in the ISR context, checks, traverses to the valid pointer indexed
* by the member first, such that the buffer is the latest committed by
* the thread context.
*/
struct lll_adv_pdu {
uint8_t volatile first;
uint8_t last;
uint8_t *pdu[DOUBLE_BUFFER_SIZE];
};

View file

@ -28,22 +28,24 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "ll_feat.h"
#include "ll_settings.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_sync.h" #include "lll_sync.h"
#include "lll_sync_iso.h" #include "lll_sync_iso.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_df.h" #include "lll_df.h"
#include "ull_adv_types.h" #include "ull_adv_types.h"
#include "ull_scan_types.h" #include "ull_scan_types.h"
#include "ull_sync_types.h" #include "ull_sync_types.h"
#include "ull_conn_types.h" #include "ull_conn_types.h"
#include "ull_filter.h" #include "ull_filter.h"
#include "ull_df.h"
#include "ull_internal.h" #include "ull_internal.h"
#include "ull_iso_internal.h" #include "ull_iso_internal.h"
@ -55,12 +57,15 @@
#include "ull_conn_iso_internal.h" #include "ull_conn_iso_internal.h"
#include "ull_central_iso_internal.h" #include "ull_central_iso_internal.h"
#include "ull_peripheral_iso_internal.h" #include "ull_peripheral_iso_internal.h"
#include "ull_df.h"
#if defined(CONFIG_BT_CTLR_USER_EXT) #if defined(CONFIG_BT_CTLR_USER_EXT)
#include "ull_vendor.h" #include "ull_vendor.h"
#endif /* CONFIG_BT_CTLR_USER_EXT */ #endif /* CONFIG_BT_CTLR_USER_EXT */
#include "ll.h"
#include "ll_feat.h"
#include "ll_settings.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull #define LOG_MODULE_NAME bt_ctlr_ull
#include "common/log.h" #include "common/log.h"

View file

@ -24,18 +24,16 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "ll_feat.h"
#include "ll_settings.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_internal.h"
#include "lll_filter.h" #include "lll_filter.h"
#include "lll_adv_internal.h"
#include "ull_adv_types.h" #include "ull_adv_types.h"
#include "ull_scan_types.h" #include "ull_scan_types.h"
@ -47,6 +45,10 @@
#include "ull_conn_internal.h" #include "ull_conn_internal.h"
#include "ull_internal.h" #include "ull_internal.h"
#include "ll.h"
#include "ll_feat.h"
#include "ll_settings.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_adv #define LOG_MODULE_NAME bt_ctlr_ull_adv
#include "common/log.h" #include "common/log.h"

View file

@ -20,22 +20,23 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_adv_aux.h" #include "lll_adv_aux.h"
#include "lll_adv_internal.h" #include "lll/lll_df_types.h"
#if defined(CONFIG_BT_CTLR_DF_ADV_CTE_TX)
#include "lll_df_internal.h"
#endif /* CONFIG_BT_CTLR_DF_ADV_CTE_TX */
#include "ull_adv_types.h" #include "ull_adv_types.h"
#include "ull_internal.h" #include "ull_internal.h"
#include "ull_adv_internal.h" #include "ull_adv_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_adv_aux #define LOG_MODULE_NAME bt_ctlr_ull_adv_aux
#include "common/log.h" #include "common/log.h"

View file

@ -5,34 +5,41 @@
*/ */
#include <zephyr.h> #include <zephyr.h>
#include <sys/byteorder.h>
#include <bluetooth/bluetooth.h>
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_adv_iso
#include "common/log.h"
#include "hal/debug.h"
#include "hal/cpu.h" #include "hal/cpu.h"
#include "hal/ccm.h" #include "hal/ccm.h"
#include "hal/ticker.h" #include "hal/ticker.h"
#include "util/util.h" #include "util/util.h"
#include "util/memq.h"
#include "util/mayfly.h"
#include "util/mem.h" #include "util/mem.h"
#include "util/memq.h"
#include "util/mfifo.h" #include "util/mfifo.h"
#include "util/mayfly.h"
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h"
#include "lll_vendor.h" #include "lll.h"
#include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "ull_internal.h" #include "ull_internal.h"
#include "ull_adv_types.h" #include "ull_adv_types.h"
#include "ull_adv_internal.h" #include "ull_adv_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_adv_iso
#include "common/log.h"
#include "hal/debug.h"
static struct ll_adv_iso ll_adv_iso[BT_CTLR_ADV_SET]; static struct ll_adv_iso ll_adv_iso[BT_CTLR_ADV_SET];
static void *adv_iso_free; static void *adv_iso_free;

View file

@ -20,15 +20,14 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_adv_sync.h" #include "lll_adv_sync.h"
#include "lll_adv_internal.h" #include "lll/lll_df_types.h"
#if defined(CONFIG_BT_CTLR_DF_ADV_CTE_TX)
#include "lll_df_internal.h"
#endif /* CONFIG_BT_CTLR_DF_ADV_CTE_TX */
#include "ull_adv_types.h" #include "ull_adv_types.h"
@ -36,6 +35,8 @@
#include "ull_chan_internal.h" #include "ull_chan_internal.h"
#include "ull_adv_internal.h" #include "ull_adv_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_adv_sync #define LOG_MODULE_NAME bt_ctlr_ull_adv_sync
#include "common/log.h" #include "common/log.h"

View file

@ -29,7 +29,6 @@
#include "lll.h" #include "lll.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_tim_internal.h"
#include "ull_conn_types.h" #include "ull_conn_types.h"
#include "ull_internal.h" #include "ull_internal.h"
@ -39,6 +38,10 @@
#include "ull_slave_internal.h" #include "ull_slave_internal.h"
#include "ull_master_internal.h" #include "ull_master_internal.h"
#if defined(CONFIG_BT_CTLR_USER_EXT)
#include "ull_vendor.h"
#endif /* CONFIG_BT_CTLR_USER_EXT */
#include "ll.h" #include "ll.h"
#include "ll_feat.h" #include "ll_feat.h"
#include "ll_settings.h" #include "ll_settings.h"
@ -48,10 +51,6 @@
#include "common/log.h" #include "common/log.h"
#include "hal/debug.h" #include "hal/debug.h"
#if defined(CONFIG_BT_CTLR_USER_EXT)
#include "ull_vendor.h"
#endif /* CONFIG_BT_CTLR_USER_EXT */
/** /**
* User CPR Interval * User CPR Interval
*/ */

View file

@ -11,6 +11,7 @@
#include "lll.h" #include "lll.h"
#include "lll_conn_iso.h" #include "lll_conn_iso.h"
#include "ull_conn_iso_types.h" #include "ull_conn_iso_types.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)

View file

@ -5,32 +5,37 @@
*/ */
#include <stdint.h> #include <stdint.h>
#include <zephyr.h> #include <zephyr.h>
#include <sys/util.h> #include <sys/util.h>
#include <bluetooth/hci.h> #include <bluetooth/hci.h>
#include "hal/debug.h"
#include "hal/cpu.h" #include "hal/cpu.h"
#include "util/util.h" #include "util/util.h"
#include "util/memq.h"
#include "util/mem.h" #include "util/mem.h"
#include "util/memq.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "ull_adv_types.h" #include "lll/lll_adv_pdu.h"
#include "ull_adv_internal.h" #include "lll/lll_df_types.h"
#include "lll_adv_internal.h" #include "lll_df.h"
#include "ull_adv_types.h"
#include "ull_df.h" #include "ull_df.h"
#include "lll_df_internal.h"
#include "ull_adv_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_df #define LOG_MODULE_NAME bt_ctlr_ull_df
#include "common/log.h" #include "common/log.h"
#include "hal/debug.h"
/* ToDo: /* ToDo:
* - Add release of df_adv_cfg when adv_sync is released. * - Add release of df_adv_cfg when adv_sync is released.
@ -154,7 +159,7 @@ uint8_t ll_df_set_cl_cte_tx_params(uint8_t adv_handle, uint8_t cte_len,
if ((cte_type == BT_HCI_LE_AOD_CTE_1US || if ((cte_type == BT_HCI_LE_AOD_CTE_1US ||
cte_type == BT_HCI_LE_AOD_CTE_2US) && cte_type == BT_HCI_LE_AOD_CTE_2US) &&
(num_ant_ids < LLL_DF_MIN_ANT_PATTERN_LEN || (num_ant_ids < LLL_DF_MIN_ANT_PATTERN_LEN ||
num_ant_ids > CONFIG_BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN || num_ant_ids > BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN ||
!ant_ids)) { !ant_ids)) {
return BT_HCI_ERR_UNSUPP_FEATURE_PARAM_VAL; return BT_HCI_ERR_UNSUPP_FEATURE_PARAM_VAL;
} }
@ -359,7 +364,7 @@ void ll_df_read_ant_inf(uint8_t *switch_sample_rates,
*switch_sample_rates |= DF_AOA_1US; *switch_sample_rates |= DF_AOA_1US;
} }
*max_switch_pattern_len = CONFIG_BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN; *max_switch_pattern_len = BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN;
*num_ant = lll_df_ant_num_get(); *num_ant = lll_df_ant_num_get();
*max_cte_len = LLL_DF_MAX_CTE_LEN; *max_cte_len = LLL_DF_MAX_CTE_LEN;
} }

View file

@ -20,14 +20,14 @@
#include "util/mayfly.h" #include "util/mayfly.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_filter.h" #include "lll_filter.h"
#include "lll_adv_internal.h"
#include "ull_adv_types.h" #include "ull_adv_types.h"
#include "ull_scan_types.h" #include "ull_scan_types.h"
@ -37,13 +37,15 @@
#include "ull_adv_internal.h" #include "ull_adv_internal.h"
#include "ull_scan_internal.h" #include "ull_scan_internal.h"
#define ADDR_TYPE_ANON 0xFF #include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_filter #define LOG_MODULE_NAME bt_ctlr_ull_filter
#include "common/log.h" #include "common/log.h"
#include "hal/debug.h" #include "hal/debug.h"
#define ADDR_TYPE_ANON 0xFF
/* Hardware whitelist */ /* Hardware whitelist */
static struct lll_filter wl_filter; static struct lll_filter wl_filter;
uint8_t wl_anon; uint8_t wl_anon;

View file

@ -21,19 +21,17 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "ll_feat.h"
#include "ll_settings.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_master.h" #include "lll_master.h"
#include "lll_filter.h" #include "lll_filter.h"
#include "lll_tim_internal.h"
#include "ull_adv_types.h" #include "ull_adv_types.h"
#include "ull_scan_types.h" #include "ull_scan_types.h"
@ -46,6 +44,10 @@
#include "ull_conn_internal.h" #include "ull_conn_internal.h"
#include "ull_master_internal.h" #include "ull_master_internal.h"
#include "ll.h"
#include "ll_feat.h"
#include "ll_settings.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_master #define LOG_MODULE_NAME bt_ctlr_ull_master
#include "common/log.h" #include "common/log.h"

View file

@ -22,11 +22,12 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_filter.h" #include "lll_filter.h"
@ -40,6 +41,8 @@
#include "ull_scan_internal.h" #include "ull_scan_internal.h"
#include "ull_sched_internal.h" #include "ull_sched_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_scan #define LOG_MODULE_NAME bt_ctlr_ull_scan
#include "common/log.h" #include "common/log.h"

View file

@ -18,7 +18,7 @@
#include "pdu.h" #include "pdu.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll/lll_vendor.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_scan_aux.h" #include "lll_scan_aux.h"
#include "lll_sync.h" #include "lll_sync.h"

View file

@ -20,7 +20,7 @@
#include "pdu.h" #include "pdu.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll/lll_vendor.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_conn.h" #include "lll_conn.h"

View file

@ -21,16 +21,16 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll/lll_vendor.h"
#include "lll/lll_adv_types.h"
#include "lll_adv.h" #include "lll_adv.h"
#include "lll/lll_adv_pdu.h"
#include "lll_conn.h" #include "lll_conn.h"
#include "lll_slave.h" #include "lll_slave.h"
#include "lll_filter.h" #include "lll_filter.h"
#include "lll_tim_internal.h"
#include "ull_adv_types.h" #include "ull_adv_types.h"
#include "ull_conn_types.h" #include "ull_conn_types.h"
@ -41,6 +41,8 @@
#include "ull_conn_internal.h" #include "ull_conn_internal.h"
#include "ull_slave_internal.h" #include "ull_slave_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_slave #define LOG_MODULE_NAME bt_ctlr_ull_slave
#include "common/log.h" #include "common/log.h"

View file

@ -20,11 +20,10 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll/lll_vendor.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_sync.h" #include "lll_sync.h"
#include "lll_sync_iso.h" #include "lll_sync_iso.h"
@ -36,6 +35,8 @@
#include "ull_scan_internal.h" #include "ull_scan_internal.h"
#include "ull_sync_internal.h" #include "ull_sync_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER) #define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_sync #define LOG_MODULE_NAME bt_ctlr_ull_sync
#include "common/log.h" #include "common/log.h"

View file

@ -5,12 +5,7 @@
*/ */
#include <zephyr.h> #include <zephyr.h>
#include <bluetooth/bluetooth.h>
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_sync_iso
#include "common/log.h"
#include "hal/debug.h"
#include <sys/byteorder.h> #include <sys/byteorder.h>
#include "util/util.h" #include "util/util.h"
@ -25,10 +20,9 @@
#include "ticker/ticker.h" #include "ticker/ticker.h"
#include "pdu.h" #include "pdu.h"
#include "ll.h"
#include "lll.h" #include "lll.h"
#include "lll_vendor.h" #include "lll/lll_vendor.h"
#include "lll_clock.h" #include "lll_clock.h"
#include "lll_scan.h" #include "lll_scan.h"
#include "lll_sync.h" #include "lll_sync.h"
@ -42,6 +36,13 @@
#include "ull_sync_internal.h" #include "ull_sync_internal.h"
#include "ull_sync_iso_internal.h" #include "ull_sync_iso_internal.h"
#include "ll.h"
#define BT_DBG_ENABLED IS_ENABLED(CONFIG_BT_DEBUG_HCI_DRIVER)
#define LOG_MODULE_NAME bt_ctlr_ull_sync_iso
#include "common/log.h"
#include "hal/debug.h"
static int init_reset(void); static int init_reset(void);
static inline struct ll_sync_iso *sync_iso_acquire(void); static inline struct ll_sync_iso *sync_iso_acquire(void);
static void ticker_cb(uint32_t ticks_at_expire, uint32_t remainder, static void ticker_cb(uint32_t ticks_at_expire, uint32_t remainder,