1 /*
2  * Copyright (c) 2022 Antmicro <www.antmicro.com>
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #include <stdint.h>
8 #include <stdbool.h>
9 #include <zephyr/kernel.h>
10 #include <zephyr/drivers/bluetooth/hci_driver.h>
11 #include <sl_hci_common_transport.h>
12 
13 enum h4_packet {
14 	h4_command = 1,
15 	h4_acl     = 2,
16 	h4_sco     = 3,
17 	h4_event   = 4
18 };
19 
20 /**
21  * @brief BTLE_LL_Process process linklayer events
22  * @param events
23  */
24 void BTLE_LL_Process(uint32_t events);
25 
26 /**
27  * @brief BTLE_LL_EventRaise raise events to be notified as soon as possible to linklayer
28  * function is implemented by upper layer
29  * @param events bitmap of events to raise
30  */
31 void BTLE_LL_EventRaise(uint32_t events);
32 
33 /**
34  * @brief Check if event bitmap indicates pending events
35  * @return bool pending events
36  */
37 bool sli_pending_btctrl_events(void);
38 
39 /**
40  * @brief Thread entry point that calls Link Layer to process raised events
41  */
42 void slz_ll_thread_func(void);
43