nrfxlib API 3.3.99
Loading...
Searching...
No Matches
sdc_hci.h
Go to the documentation of this file.
1/*
2 * Copyright (c) Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5 */
6
7
25#ifndef SDC_HCI_H__
26#define SDC_HCI_H__
27
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34#include <stdint.h>
35#include "nrf_errno.h"
36
38#define HCI_CMD_HEADER_SIZE (3)
39
41#define HCI_DATA_HEADER_SIZE (4)
42
44#define HCI_ISO_DATA_HEADER_SIZE (12)
45
47#define HCI_EVENT_HEADER_SIZE (2)
48
50#define HCI_CMD_MAX_SIZE (255)
51
53#define HCI_DATA_MAX_SIZE (251)
54
56#define HCI_ISO_DATA_MAX_SIZE (4095)
57
59#define HCI_EVENT_MAX_SIZE (255)
60
62#define HCI_CMD_PACKET_MAX_SIZE (HCI_CMD_MAX_SIZE + HCI_CMD_HEADER_SIZE)
63
65#define HCI_DATA_PACKET_MAX_SIZE (HCI_DATA_MAX_SIZE + HCI_DATA_HEADER_SIZE)
66
68#define HCI_ISO_DATA_PACKET_MAX_SIZE (HCI_ISO_DATA_MAX_SIZE + HCI_ISO_DATA_HEADER_SIZE)
69
71#define HCI_EVENT_PACKET_MAX_SIZE (HCI_EVENT_MAX_SIZE + HCI_EVENT_HEADER_SIZE)
72
74#define HCI_MSG_BUFFER_MAX_SIZE HCI_CMD_PACKET_MAX_SIZE
75
77#define HCI_MSG_BUFFER_ISO_MAX_SIZE HCI_ISO_DATA_PACKET_MAX_SIZE
78
83#define HCI_ISO_TX_SDU_ARRIVAL_MARGIN_US 1000
84
92
101int32_t sdc_hci_data_put(uint8_t const * p_data_in);
102
117int32_t sdc_hci_iso_data_put(uint8_t const * p_data_in);
118
136int32_t sdc_hci_get(uint8_t * p_packet_out, uint8_t * p_msg_type_out);
137
138#ifdef __cplusplus
139}
140#endif
141
144#endif /* SDC_HCI_H__ */
int32_t sdc_hci_get(uint8_t *p_packet_out, uint8_t *p_msg_type_out)
Retrieve an HCI packet from the SoftDevice Controller.
sdc_hci_msg_type_t
Definition sdc_hci.h:86
@ SDC_HCI_MSG_TYPE_NONE
Definition sdc_hci.h:87
@ SDC_HCI_MSG_TYPE_ISO
Definition sdc_hci.h:90
@ SDC_HCI_MSG_TYPE_EVT
Definition sdc_hci.h:89
@ SDC_HCI_MSG_TYPE_DATA
Definition sdc_hci.h:88
int32_t sdc_hci_iso_data_put(uint8_t const *p_data_in)
Send an HCI ISO data packet to the SoftDevice Controller.
int32_t sdc_hci_data_put(uint8_t const *p_data_in)
Send an HCI data packet to the SoftDevice Controller.