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/// 18typedef 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/// 28typedef 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/// 38typedef 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