blob: cce56f1b8b6c34cfdd37d5d0b5c9e61c87c8d082 [file] [log] [blame]
/*
* Copyright (c) 2021 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/kernel.h>
#include <stddef.h>
#include <zephyr/ztest.h>
#include <zephyr/bluetooth/bluetooth.h>
#include <zephyr/bluetooth/hci.h>
#include <host/hci_core.h>
#include <util/util.h>
#include <util/memq.h>
#include <util/dbuf.h>
#include <pdu_df.h>
#include <lll/pdu_vendor.h>
#include <pdu.h>
#include <lll.h>
#include <lll_scan.h>
#include <lll/lll_df_types.h>
#include <lll_sync.h>
#include <ull_scan_types.h>
#include <ull_scan_internal.h>
#include <ull_sync_types.h>
#include <ull_sync_internal.h>
struct bt_le_per_adv_sync *g_per_sync;
static struct bt_le_per_adv_sync_param g_sync_create_param;
void common_create_per_sync_set(void)
{
struct ll_scan_set *scan;
struct ll_sync_set *sync;
int err;
bt_addr_le_copy(&g_sync_create_param.addr, BT_ADDR_LE_NONE);
g_sync_create_param.options = 0;
g_sync_create_param.sid = 0;
g_sync_create_param.skip = 0;
g_sync_create_param.timeout = 0xa;
err = bt_le_per_adv_sync_create(&g_sync_create_param, &g_per_sync);
zassert_equal(err, 0, "Failed to create periodic sync set");
/* Below code makes fake sync enable and provides appropriate handle value to
* g_per_sync->handle. There is no complete sync established procedure,
* because it is not required to test DF functionality.
*/
scan = ull_scan_set_get(SCAN_HANDLE_1M);
sync = scan->periodic.sync;
g_per_sync->handle = ull_sync_handle_get(sync);
sync->lll.phy = PHY_2M;
/* timeout_reload member is used by controller to check if sync was established. */
sync->timeout_reload = 1;
}