Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/sys/contrib/edk2/Include/IndustryStandard/Bluetooth.h
48292 views
1
/** @file
2
This file contains the Bluetooth definitions that are consumed by drivers.
3
These definitions are from Bluetooth Core Specification Version 4.0 June, 2010
4
5
Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>
6
SPDX-License-Identifier: BSD-2-Clause-Patent
7
8
**/
9
10
#ifndef _BLUETOOTH_H_
11
#define _BLUETOOTH_H_
12
13
#pragma pack(1)
14
15
///
16
/// BLUETOOTH_ADDRESS
17
///
18
typedef struct {
19
///
20
/// 48bit Bluetooth device address.
21
///
22
UINT8 Address[6];
23
} BLUETOOTH_ADDRESS;
24
25
///
26
/// BLUETOOTH_CLASS_OF_DEVICE. See Bluetooth specification for detail.
27
///
28
typedef struct {
29
UINT8 FormatType : 2;
30
UINT8 MinorDeviceClass : 6;
31
UINT16 MajorDeviceClass : 5;
32
UINT16 MajorServiceClass : 11;
33
} BLUETOOTH_CLASS_OF_DEVICE;
34
35
///
36
/// BLUETOOTH_LE_ADDRESS
37
///
38
typedef struct {
39
///
40
/// 48-bit Bluetooth device address
41
///
42
UINT8 Address[6];
43
///
44
/// 0x00 - Public Device Address
45
/// 0x01 - Random Device Address
46
///
47
UINT8 Type;
48
} BLUETOOTH_LE_ADDRESS;
49
50
#pragma pack()
51
52
#define BLUETOOTH_HCI_COMMAND_LOCAL_READABLE_NAME_MAX_SIZE 248
53
54
#define BLUETOOTH_HCI_LINK_KEY_SIZE 16
55
56
#endif
57
58