TianoCore EDK2 master
Loading...
Searching...
No Matches
BluetoothConfig.h File Reference

Go to the source code of this file.

Data Structures

struct  EFI_BLUETOOTH_SCAN_CALLBACK_INFORMATION
 
struct  _EFI_BLUETOOTH_CONFIG_PROTOCOL
 

Macros

#define EFI_BLUETOOTH_CONFIG_PROTOCOL_GUID
 
#define EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_CONNECTED   0x1
 
#define EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_PAIRED   0x2
 

Typedefs

typedef struct _EFI_BLUETOOTH_CONFIG_PROTOCOL EFI_BLUETOOTH_CONFIG_PROTOCOL
 
typedef UINT32 EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_TYPE
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_INIT) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_SCAN_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN EFI_BLUETOOTH_SCAN_CALLBACK_INFORMATION *CallbackInfo)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_SCAN) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN BOOLEAN ReScan, IN UINT8 ScanType, IN EFI_BLUETOOTH_CONFIG_SCAN_CALLBACK_FUNCTION Callback, IN VOID *Context)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_CONNECT) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN BLUETOOTH_ADDRESS *BD_ADDR)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_DISCONNECT) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN BLUETOOTH_ADDRESS *BD_ADDR, IN UINT8 Reason)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_GET_DATA) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_DATA_TYPE DataType, IN OUT UINTN *DataSize, IN OUT VOID *Data)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_SET_DATA) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_DATA_TYPE DataType, IN UINTN DataSize, IN VOID *Data)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_GET_REMOTE_DATA) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_DATA_TYPE DataType, IN BLUETOOTH_ADDRESS *BDAddr, IN OUT UINTN *DataSize, IN OUT VOID *Data)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN EFI_BLUETOOTH_PIN_CALLBACK_TYPE CallbackType, IN VOID *InputBuffer, IN UINTN InputBufferSize, OUT VOID **OutputBuffer, OUT UINTN *OutputBufferSize)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK_FUNCTION Callback, IN VOID *Context)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN BLUETOOTH_ADDRESS *BDAddr, OUT UINT8 LinkKey[BLUETOOTH_HCI_LINK_KEY_SIZE])
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK_FUNCTION Callback, IN VOID *Context)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN BLUETOOTH_ADDRESS *BDAddr, IN UINT8 LinkKey[BLUETOOTH_HCI_LINK_KEY_SIZE])
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK_FUNCTION Callback, IN VOID *Context)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN EFI_BLUETOOTH_CONNECT_COMPLETE_CALLBACK_TYPE CallbackType, IN BLUETOOTH_ADDRESS *BDAddr, IN VOID *InputBuffer, IN UINTN InputBufferSize)
 
typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK_FUNCTION Callback, IN VOID *Context)
 

Enumerations

enum  EFI_BLUETOOTH_CONFIG_DATA_TYPE {
  EfiBluetoothConfigDataTypeDeviceName , EfiBluetoothConfigDataTypeClassOfDevice , EfiBluetoothConfigDataTypeRemoteDeviceState , EfiBluetoothConfigDataTypeSdpInfo ,
  EfiBluetoothConfigDataTypeBDADDR , EfiBluetoothConfigDataTypeDiscoverable , EfiBluetoothConfigDataTypeControllerStoredPairedDeviceList , EfiBluetoothConfigDataTypeAvailableDeviceList ,
  EfiBluetoothConfigDataTypeRandomAddress , EfiBluetoothConfigDataTypeRSSI , EfiBluetoothConfigDataTypeAdvertisementData , EfiBluetoothConfigDataTypeIoCapability ,
  EfiBluetoothConfigDataTypeOOBDataFlag , EfiBluetoothConfigDataTypeKeyType , EfiBluetoothConfigDataTypeEncKeySize , EfiBluetoothConfigDataTypeMax
}
 
enum  EFI_BLUETOOTH_PIN_CALLBACK_TYPE {
  EfiBluetoothCallbackTypeUserPasskeyNotification , EfiBluetoothCallbackTypeUserConfirmationRequest , EfiBluetoothCallbackTypeOOBDataRequest , EfiBluetoothCallbackTypePinCodeRequest ,
  EfiBluetoothCallbackTypeMax
}
 
enum  EFI_BLUETOOTH_CONNECT_COMPLETE_CALLBACK_TYPE { EfiBluetoothConnCallbackTypeDisconnected , EfiBluetoothConnCallbackTypeConnected , EfiBluetoothConnCallbackTypeAuthenticated , EfiBluetoothConnCallbackTypeEncrypted }
 

Variables

EFI_GUID gEfiBluetoothConfigProtocolGuid
 

Detailed Description

EFI Bluetooth Configuration Protocol as defined in UEFI 2.7. This protocol abstracts user interface configuration for Bluetooth device.

Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Revision Reference:
This Protocol is introduced in UEFI Specification 2.7

Definition in file BluetoothConfig.h.

Macro Definition Documentation

◆ EFI_BLUETOOTH_CONFIG_PROTOCOL_GUID

#define EFI_BLUETOOTH_CONFIG_PROTOCOL_GUID
Value:
{ \
0x62960cf3, 0x40ff, 0x4263, { 0xa7, 0x7c, 0xdf, 0xde, 0xbd, 0x19, 0x1b, 0x4b } \
}

Definition at line 18 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_CONNECTED

#define EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_CONNECTED   0x1

Definition at line 26 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_PAIRED

#define EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_PAIRED   0x2

Definition at line 27 of file BluetoothConfig.h.

Typedef Documentation

◆ EFI_BLUETOOTH_CONFIG_CONNECT

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_CONNECT) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN BLUETOOTH_ADDRESS *BD_ADDR)

Connect a Bluetooth device.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
BD_ADDRThe address of Bluetooth device to be connected.
Return values
EFI_SUCCESSThe Bluetooth device is connected successfully.
EFI_ALREADY_STARTEDThe Bluetooth device is already connected.
EFI_NOT_FOUNDThe Bluetooth device is not found.
EFI_DEVICE_ERRORA hardware error occurred trying to connect the Bluetooth device.

Definition at line 230 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_DISCONNECT

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_DISCONNECT) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN BLUETOOTH_ADDRESS *BD_ADDR, IN UINT8 Reason)

Disconnect a Bluetooth device.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
BD_ADDRThe address of Bluetooth device to be connected.
ReasonBluetooth disconnect reason. See Bluetooth specification for detail.
Return values
EFI_SUCCESSThe Bluetooth device is disconnected successfully.
EFI_NOT_STARTEDThe Bluetooth device is not connected.
EFI_NOT_FOUNDThe Bluetooth device is not found.
EFI_DEVICE_ERRORA hardware error occurred trying to disconnect the Bluetooth device.

Definition at line 250 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_GET_DATA

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_GET_DATA) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_DATA_TYPE DataType, IN OUT UINTN *DataSize, IN OUT VOID *Data)

Get Bluetooth configuration data.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
DataTypeConfiguration data type.
DataSizeOn input, indicates the size, in bytes, of the data buffer specified by Data. On output, indicates the amount of data actually returned.
DataA pointer to the buffer of data that will be returned.
Return values
EFI_SUCCESSThe Bluetooth configuration data is returned successfully.
EFI_INVALID_PARAMETEROne or more of the following conditions is TRUE:
  • DataSize is NULL.
  • *DataSize is not 0 and Data is NULL.
EFI_UNSUPPORTEDThe DataType is unsupported.
EFI_NOT_FOUNDThe DataType is not found.
EFI_BUFFER_TOO_SMALLThe buffer is too small to hold the buffer. DataSize has been updated with the size needed to complete the request.

Definition at line 277 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_GET_REMOTE_DATA

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_GET_REMOTE_DATA) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_DATA_TYPE DataType, IN BLUETOOTH_ADDRESS *BDAddr, IN OUT UINTN *DataSize, IN OUT VOID *Data)

Get remove Bluetooth device configuration data.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
DataTypeConfiguration data type.
BDAddrRemote Bluetooth device address.
DataSizeOn input, indicates the size, in bytes, of the data buffer specified by Data. On output, indicates the amount of data actually returned.
DataA pointer to the buffer of data that will be returned.
Return values
EFI_SUCCESSThe remote Bluetooth device configuration data is returned successfully.
EFI_INVALID_PARAMETEROne or more of the following conditions is TRUE:
  • DataSize is NULL.
  • *DataSize is not 0 and Data is NULL.
EFI_UNSUPPORTEDThe DataType is unsupported.
EFI_NOT_FOUNDThe DataType is not found.
EFI_BUFFER_TOO_SMALLThe buffer is too small to hold the buffer. DataSize has been updated with the size needed to complete the request.

Definition at line 331 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_INIT

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_INIT) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This)

Initialize Bluetooth host controller and local device.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
Return values
EFI_SUCCESSThe Bluetooth host controller and local device is initialized successfully.
EFI_DEVICE_ERRORA hardware error occurred trying to initialize the Bluetooth host controller and local device.

Definition at line 168 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_PROTOCOL

◆ EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK_FUNCTION Callback, IN VOID *Context)

Register link connect complete callback function.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
CallbackThe callback function. NULL means unregister.
ContextData passed into Callback function. This is optional parameter and may be NULL.
Return values
EFI_SUCCESSThe link connect complete callback function is registered successfully.

Definition at line 496 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK_FUNCTION

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_CONNECT_COMPLETE_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN EFI_BLUETOOTH_CONNECT_COMPLETE_CALLBACK_TYPE CallbackType, IN BLUETOOTH_ADDRESS *BDAddr, IN VOID *InputBuffer, IN UINTN InputBufferSize)

The callback function. It is called after connect completed.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
ContextContext passed from registration.
CallbackTypeCallback type in EFI_BLUETOOTH_CONNECT_COMPLETE_CALLBACK_TYPE.
BDAddrA pointer to Bluetooth device address.
InputBufferA pointer to the buffer of data that is input from callback caller.
InputBufferSizeIndicates the size, in bytes, of the data buffer specified by InputBuffer.
Return values
EFI_SUCCESSThe callback function complete successfully.

Definition at line 475 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK_FUNCTION Callback, IN VOID *Context)

Register get link key callback function.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
CallbackThe callback function. NULL means unregister.
ContextData passed into Callback function. This is optional parameter and may be NULL.
Return values
EFI_SUCCESSThe link key callback function is registered successfully.

Definition at line 416 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK_FUNCTION

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_GET_LINK_KEY_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN BLUETOOTH_ADDRESS *BDAddr, OUT UINT8 LinkKey[BLUETOOTH_HCI_LINK_KEY_SIZE])

The callback function to get link key.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
ContextContext passed from registration.
BDAddrA pointer to Bluetooth device address.
LinkKeyA pointer to the buffer of link key.
Return values
EFI_SUCCESSThe callback function complete successfully.

Definition at line 397 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK_FUNCTION Callback, IN VOID *Context)

Register PIN callback function.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
CallbackThe callback function. NULL means unregister.
ContextData passed into Callback function. This is optional parameter and may be NULL.
Return values
EFI_SUCCESSThe PIN callback function is registered successfully.

Definition at line 378 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK_FUNCTION

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_PIN_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN EFI_BLUETOOTH_PIN_CALLBACK_TYPE CallbackType, IN VOID *InputBuffer, IN UINTN InputBufferSize, OUT VOID **OutputBuffer, OUT UINTN *OutputBufferSize)

The callback function for PIN code.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
ContextContext passed from registration.
CallbackTypeCallback type in EFI_BLUETOOTH_PIN_CALLBACK_TYPE.
InputBufferA pointer to the buffer of data that is input from callback caller.
InputBufferSizeIndicates the size, in bytes, of the data buffer specified by InputBuffer.
OutputBufferA pointer to the buffer of data that will be output from callback callee. Callee allocates this buffer by using EFI Boot Service AllocatePool().
OutputBufferSizeIndicates the size, in bytes, of the data buffer specified by OutputBuffer.
Return values
EFI_SUCCESSThe callback function complete successfully.

Definition at line 356 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK_FUNCTION Callback, IN VOID *Context)

Register set link key callback function.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
CallbackThe callback function. NULL means unregister.
ContextData passed into Callback function. This is optional parameter and may be NULL.
Return values
EFI_SUCCESSThe link key callback function is registered successfully.

Definition at line 454 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK_FUNCTION

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_REGISTER_SET_LINK_KEY_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN BLUETOOTH_ADDRESS *BDAddr, IN UINT8 LinkKey[BLUETOOTH_HCI_LINK_KEY_SIZE])

The callback function to set link key.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
ContextContext passed from registration.
BDAddrA pointer to Bluetooth device address.
LinkKeyA pointer to the buffer of link key.
Return values
EFI_SUCCESSThe callback function complete successfully.

Definition at line 435 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_TYPE

typedef UINT32 EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_TYPE

Definition at line 25 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_SCAN

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_SCAN) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN BOOLEAN ReScan, IN UINT8 ScanType, IN EFI_BLUETOOTH_CONFIG_SCAN_CALLBACK_FUNCTION Callback, IN VOID *Context)

Scan Bluetooth device.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
ReScanIf TRUE, a new scan request is submitted no matter there is scan result before. If FALSE and there is scan result, the previous scan result is returned and no scan request is submitted.
ScanTypeBluetooth scan type, Inquiry and/or Page. See Bluetooth specification for detail.
CallbackThe callback function. This function is called if a Bluetooth device is found during scan process.
ContextData passed into Callback function. This is optional parameter and may be NULL.
Return values
EFI_SUCCESSThe Bluetooth scan request is submitted.
EFI_DEVICE_ERRORA hardware error occurred trying to scan the Bluetooth device.

Definition at line 208 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_SCAN_CALLBACK_FUNCTION

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_SCAN_CALLBACK_FUNCTION) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN VOID *Context, IN EFI_BLUETOOTH_SCAN_CALLBACK_INFORMATION *CallbackInfo)

Callback function, it is called if a Bluetooth device is found during scan process.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
ContextContext passed from scan request.
CallbackInfoData related to scan result. NULL CallbackInfo means scan complete.
Return values
EFI_SUCCESSThe callback function complete successfully.

Definition at line 184 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONFIG_SET_DATA

typedef EFI_STATUS(EFIAPI * EFI_BLUETOOTH_CONFIG_SET_DATA) (IN EFI_BLUETOOTH_CONFIG_PROTOCOL *This, IN EFI_BLUETOOTH_CONFIG_DATA_TYPE DataType, IN UINTN DataSize, IN VOID *Data)

Set Bluetooth configuration data.

Parameters
ThisPointer to the EFI_BLUETOOTH_CONFIG_PROTOCOL instance.
DataTypeConfiguration data type.
DataSizeIndicates the size, in bytes, of the data buffer specified by Data.
DataA pointer to the buffer of data that will be set.
Return values
EFI_SUCCESSThe Bluetooth configuration data is set successfully.
EFI_INVALID_PARAMETEROne or more of the following conditions is TRUE:
  • DataSize is 0.
  • Data is NULL.
EFI_UNSUPPORTEDThe DataType is unsupported.
EFI_BUFFER_TOO_SMALLCannot set configuration data.

Definition at line 302 of file BluetoothConfig.h.

Enumeration Type Documentation

◆ EFI_BLUETOOTH_CONFIG_DATA_TYPE

EFI_BLUETOOTH_CONFIG_DATA_TYPE

Enumerator
EfiBluetoothConfigDataTypeDeviceName 

Local/Remote Bluetooth device name. Data structure is zero terminated CHAR8[].

EfiBluetoothConfigDataTypeClassOfDevice 

Local/Remote Bluetooth device ClassOfDevice. Data structure is BLUETOOTH_CLASS_OF_DEVICE.

EfiBluetoothConfigDataTypeRemoteDeviceState 

Remote Bluetooth device state. Data structure is EFI_BLUETOOTH_CONFIG_REMOTE_DEVICE_STATE_TYPE.

EfiBluetoothConfigDataTypeSdpInfo 

Local/Remote Bluetooth device SDP information. Data structure is UINT8[].

EfiBluetoothConfigDataTypeBDADDR 

Local Bluetooth device address. Data structure is BLUETOOTH_ADDRESS.

EfiBluetoothConfigDataTypeDiscoverable 

Local Bluetooth discoverable state. Data structure is UINT8. (Page scan and/or Inquiry scan)

EfiBluetoothConfigDataTypeControllerStoredPairedDeviceList 

Local Bluetooth controller stored paired device list. Data structure is BLUETOOTH_ADDRESS[].

EfiBluetoothConfigDataTypeAvailableDeviceList 

Local available device list. Data structure is BLUETOOTH_ADDRESS[].

EfiBluetoothConfigDataTypeAdvertisementData 

Advertisement report. Data structure is UNIT8[].

EfiBluetoothConfigDataTypeKeyType 

KeyType of Authentication Requirements flag of local device as UINT8, indicating requested security properties. See Bluetooth specification 3.H.3.5.1. BIT0: MITM, BIT1:SC.

Definition at line 54 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_CONNECT_COMPLETE_CALLBACK_TYPE

EFI_BLUETOOTH_CONNECT_COMPLETE_CALLBACK_TYPE.

Enumerator
EfiBluetoothConnCallbackTypeDisconnected 

This callback is called when Bluetooth receive Disconnection_Complete event. Input buffer is Event Parameters of Disconnection_Complete Event defined in Bluetooth specification.

EfiBluetoothConnCallbackTypeConnected 

This callback is called when Bluetooth receive Connection_Complete event. Input buffer is Event Parameters of Connection_Complete Event defined in Bluetooth specification.

EfiBluetoothConnCallbackTypeAuthenticated 

This callback is called when Bluetooth receive Authentication_Complete event. Input buffer is Event Parameters of Authentication_Complete Event defined in Bluetooth specification.

EfiBluetoothConnCallbackTypeEncrypted 

This callback is called when Bluetooth receive Encryption_Change event. Input buffer is Event Parameters of Encryption_Change Event defined in Bluetooth specification.

Definition at line 134 of file BluetoothConfig.h.

◆ EFI_BLUETOOTH_PIN_CALLBACK_TYPE

EFI_BLUETOOTH_PIN_CALLBACK_TYPE.

Enumerator
EfiBluetoothCallbackTypeUserPasskeyNotification 

For SSP - passkey entry. Input buffer is Passkey (4 bytes). No output buffer. See Bluetooth HCI command for detail.

EfiBluetoothCallbackTypeUserConfirmationRequest 

For SSP - just work and numeric comparison. Input buffer is numeric value (4 bytes). Output buffer is BOOLEAN (1 byte). See Bluetooth HCI command for detail.

EfiBluetoothCallbackTypeOOBDataRequest 

For SSP - OOB. See Bluetooth HCI command for detail.

EfiBluetoothCallbackTypePinCodeRequest 

For legacy paring. No input buffer. Output buffer is PIN code( <= 16 bytes). See Bluetooth HCI command for detail.

Definition at line 108 of file BluetoothConfig.h.