libnx  v4.7.0
Data Structures | Enumerations
btdrv_types.h File Reference

Bluetooth driver (btdrv) service types (see btdrv.h for the rest). More...

#include "../types.h"
#include "btdrv_ids.h"

Go to the source code of this file.

Data Structures

struct  BtdrvAddress
 Address. More...
 
struct  BtdrvClassOfDevice
 ClassOfDevice. More...
 
struct  BtdrvAdapterPropertyOld
 AdapterProperty [1.0.0-11.0.1]. More...
 
struct  BtdrvAdapterProperty
 AdapterProperty [12.0.0+]. More...
 
struct  BtdrvAdapterPropertySet
 AdapterPropertySet [12.0.0+]. More...
 
struct  BtdrvBluetoothPinCode
 BluetoothPinCode [1.0.0-11.0.1]. More...
 
struct  BtdrvPinCode
 BtdrvPinCode [12.0.0+]. More...
 
struct  BtdrvHidData
 HidData [1.0.0-8.1.1]. More...
 
struct  BtdrvHidReport
 HidReport [9.0.0+]. More...
 
struct  BtdrvPlrStatistics
 PlrStatistics. More...
 
struct  BtdrvPlrList
 PlrList. More...
 
struct  BtdrvChannelMapList
 ChannelMapList. More...
 
struct  BtdrvLeConnectionParams
 LeConnectionParams [5.0.0-8.1.1]. More...
 
struct  BtdrvBleConnectionParameter
 BleConnectionParameter [9.0.0+]. More...
 
struct  BtdrvBleAdvertisePacketDataEntry
 BtdrvBleAdvertisePacketDataEntry. More...
 
struct  BtdrvBleAdvertisePacketData
 BleAdvertisePacketData. More...
 
struct  BtdrvBleAdvertisement
 BleAdvertisement. More...
 
struct  BtdrvBleAdvertiseFilter
 BleAdvertiseFilter. More...
 
struct  BtdrvBleAdvertisePacketParameter
 BleAdvertisePacketParameter. More...
 
struct  BtdrvBleScanResult
 BleScanResult. More...
 
struct  BtdrvBleConnectionInfo
 BleConnectionInfo. More...
 
struct  BtdrvGattAttributeUuid
 GattAttributeUuid. More...
 
struct  BtdrvGattId
 GattId. More...
 
struct  BtdrvGattAttribute
 GattAttribute. More...
 
struct  BtdrvLeEventInfo
 LeEventInfo. More...
 
struct  BtdrvBleClientGattOperationInfo
 BleClientGattOperationInfo. More...
 
struct  BtdrvPcmParameter
 PcmParameter. More...
 
struct  BtdrvAudioControlButtonState
 AudioControlButtonState. More...
 

Enumerations

enum  BtdrvBluetoothPropertyType {
  BtdrvBluetoothPropertyType_Name = 1 ,
  BtdrvBluetoothPropertyType_Address = 2 ,
  BtdrvBluetoothPropertyType_Unknown3 = 3 ,
  BtdrvBluetoothPropertyType_ClassOfDevice = 5 ,
  BtdrvBluetoothPropertyType_FeatureSet = 6
}
 BluetoothPropertyType [1.0.0-11.0.1]. More...
 
enum  BtdrvAdapterPropertyType {
  BtdrvAdapterPropertyType_Address = 0 ,
  BtdrvAdapterPropertyType_Name = 1 ,
  BtdrvAdapterPropertyType_ClassOfDevice = 2 ,
  BtdrvAdapterPropertyType_Unknown3 = 3
}
 AdapterPropertyType [12.0.0+]. More...
 
enum  BtdrvEventType {
  BtdrvEventType_InquiryDevice = 0 ,
  BtdrvEventType_InquiryStatus = 1 ,
  BtdrvEventType_PairingPinCodeRequest = 2 ,
  BtdrvEventType_SspRequest = 3 ,
  BtdrvEventType_Connection = 4 ,
  BtdrvEventType_Tsi = 5 ,
  BtdrvEventType_BurstMode = 6 ,
  BtdrvEventType_SetZeroRetransmission = 7 ,
  BtdrvEventType_PendingConnections = 8 ,
  BtdrvEventType_MoveToSecondaryPiconet = 9 ,
  BtdrvEventType_BluetoothCrash = 10 ,
  BtdrvEventTypeOld_Unknown0 = 0 ,
  BtdrvEventTypeOld_InquiryDevice = 3 ,
  BtdrvEventTypeOld_InquiryStatus = 4 ,
  BtdrvEventTypeOld_PairingPinCodeRequest = 5 ,
  BtdrvEventTypeOld_SspRequest = 6 ,
  BtdrvEventTypeOld_Connection = 7 ,
  BtdrvEventTypeOld_BluetoothCrash = 13
}
 EventType. More...
 
enum  BtdrvInquiryStatus {
  BtdrvInquiryStatus_Stopped = 0 ,
  BtdrvInquiryStatus_Started = 1
}
 BtdrvInquiryStatus. More...
 
enum  BtdrvConnectionEventType {
  BtdrvConnectionEventType_Status = 0 ,
  BtdrvConnectionEventType_SspConfirmRequest = 1 ,
  BtdrvConnectionEventType_Suspended = 2
}
 ConnectionEventType. More...
 
enum  BtdrvExtEventType {
  BtdrvExtEventType_SetTsi = 0 ,
  BtdrvExtEventType_ExitTsi = 1 ,
  BtdrvExtEventType_SetBurstMode = 2 ,
  BtdrvExtEventType_ExitBurstMode = 3 ,
  BtdrvExtEventType_SetZeroRetransmission = 4 ,
  BtdrvExtEventType_PendingConnections = 5 ,
  BtdrvExtEventType_MoveToSecondaryPiconet = 6
}
 ExtEventType [1.0.0-11.0.1]. More...
 
enum  BtdrvBluetoothHhReportType {
  BtdrvBluetoothHhReportType_Other = 0 ,
  BtdrvBluetoothHhReportType_Input = 1 ,
  BtdrvBluetoothHhReportType_Output = 2 ,
  BtdrvBluetoothHhReportType_Feature = 3
}
 BluetoothHhReportType Bit0-1 directly control the HID bluetooth transaction report-type value. More...
 
enum  BtdrvHidEventType {
  BtdrvHidEventType_Connection = 0 ,
  BtdrvHidEventType_Data = 1 ,
  BtdrvHidEventType_SetReport = 2 ,
  BtdrvHidEventType_GetReport = 3 ,
  BtdrvHidEventTypeOld_Connection = 0 ,
  BtdrvHidEventTypeOld_Data = 4 ,
  BtdrvHidEventTypeOld_Ext = 7 ,
  BtdrvHidEventTypeOld_SetReport = 8 ,
  BtdrvHidEventTypeOld_GetReport = 9
}
 HidEventType. More...
 
enum  BtdrvHidConnectionStatus {
  BtdrvHidConnectionStatus_Closed = 0 ,
  BtdrvHidConnectionStatus_Opened = 1 ,
  BtdrvHidConnectionStatus_Failed = 2 ,
  BtdrvHidConnectionStatusOld_Opened = 0 ,
  BtdrvHidConnectionStatusOld_Closed = 2 ,
  BtdrvHidConnectionStatusOld_Failed = 8
}
 HidConnectionStatus [12.0.0+]. More...
 
enum  BtdrvFatalReason {
  BtdrvFatalReason_Invalid = 0 ,
  BtdrvFatalReason_Unknown1 = 1 ,
  BtdrvFatalReason_CommandTimeout = 2 ,
  BtdrvFatalReason_HardwareError = 3 ,
  BtdrvFatalReason_Enable = 7 ,
  BtdrvFatalReason_Audio = 9
}
 This determines the u16 data to write into a CircularBuffer. More...
 
enum  BtdrvBleEventType {
  BtdrvBleEventType_ClientRegistration = 0 ,
  BtdrvBleEventType_ServerRegistration = 1 ,
  BtdrvBleEventType_ConnectionUpdate = 2 ,
  BtdrvBleEventType_PreferredConnectionParameters = 3 ,
  BtdrvBleEventType_ClientConnection = 4 ,
  BtdrvBleEventType_ServerConnection = 5 ,
  BtdrvBleEventType_ScanResult = 6 ,
  BtdrvBleEventType_ScanFilter = 7 ,
  BtdrvBleEventType_ClientNotify = 8 ,
  BtdrvBleEventType_ClientCacheSave = 9 ,
  BtdrvBleEventType_ClientCacheLoad = 10 ,
  BtdrvBleEventType_ClientConfigureMtu = 11 ,
  BtdrvBleEventType_ServerAddCharacteristic = 12 ,
  BtdrvBleEventType_ServerWrite = 13
}
 BleEventType. More...
 
enum  BtdrvGattAttributeType {
  BtdrvGattAttributeType_IncludedService = 0 ,
  BtdrvGattAttributeType_Characteristic = 1 ,
  BtdrvGattAttributeType_Descriptor = 2 ,
  BtdrvGattAttributeType_Service = 3
}
 GattAttributeType. More...
 
enum  BtdrvGattAttributePermission {
  BtdrvGattAttributePermission_Read = (1U<<( 0 )) ,
  BtdrvGattAttributePermission_ReadEncrypted = (1U<<( 1 )) ,
  BtdrvGattAttributePermission_ReadEncryptedMitm = (1U<<( 2 )) ,
  BtdrvGattAttributePermission_Write = (1U<<( 4 )) ,
  BtdrvGattAttributePermission_WriteEncrypted = (1U<<( 5 )) ,
  BtdrvGattAttributePermission_WriteEncryptedMitm = (1U<<( 6 )) ,
  BtdrvGattAttributePermission_WriteSigned = (1U<<( 7 )) ,
  BtdrvGattAttributePermission_WriteSignedMitm = (1U<<( 8 )) ,
  BtdrvGattAttributePermission_ReadAllowed = BtdrvGattAttributePermission_Read | BtdrvGattAttributePermission_ReadEncrypted | BtdrvGattAttributePermission_ReadEncryptedMitm ,
  BtdrvGattAttributePermission_ReadAuthRequired = BtdrvGattAttributePermission_ReadEncrypted ,
  BtdrvGattAttributePermission_ReadMitmRequired = BtdrvGattAttributePermission_ReadEncryptedMitm ,
  BtdrvGattAttributePermission_ReadEncryptedRequired = BtdrvGattAttributePermission_ReadEncrypted | BtdrvGattAttributePermission_ReadEncryptedMitm ,
  BtdrvGattAttributePermission_WriteAllowed = BtdrvGattAttributePermission_Write | BtdrvGattAttributePermission_WriteEncrypted | BtdrvGattAttributePermission_WriteEncryptedMitm | BtdrvGattAttributePermission_WriteSigned | BtdrvGattAttributePermission_WriteSignedMitm ,
  BtdrvGattAttributePermission_WriteAuthRequired = BtdrvGattAttributePermission_WriteEncrypted | BtdrvGattAttributePermission_WriteSigned ,
  BtdrvGattAttributePermission_WriteMitmRequired = BtdrvGattAttributePermission_WriteEncryptedMitm | BtdrvGattAttributePermission_WriteSignedMitm ,
  BtdrvGattAttributePermission_WriteEncryptedRequired = BtdrvGattAttributePermission_WriteEncrypted | BtdrvGattAttributePermission_WriteEncryptedMitm ,
  BtdrvGattAttributePermission_WriteSignedRequired = BtdrvGattAttributePermission_WriteSigned | BtdrvGattAttributePermission_WriteSignedMitm
}
 GattAttributePermission.
 
enum  BtdrvGattCharacteristicProperty {
  BtdrvGattCharacteristicProperty_Broadcast = (1U<<( 0 )) ,
  BtdrvGattCharacteristicProperty_Read = (1U<<( 1 )) ,
  BtdrvGattCharacteristicProperty_WriteNoResponse = (1U<<( 2 )) ,
  BtdrvGattCharacteristicProperty_Write = (1U<<( 3 )) ,
  BtdrvGattCharacteristicProperty_Notify = (1U<<( 4 )) ,
  BtdrvGattCharacteristicProperty_Indicate = (1U<<( 5 )) ,
  BtdrvGattCharacteristicProperty_Authentication = (1U<<( 6 )) ,
  BtdrvGattCharacteristicProperty_ExtendedProperties = (1U<<( 7 ))
}
 GattCharacteristicProperty.
 
enum  BtdrvGattAuthReqType {
  BtdrvGattAuthReqType_None = 0 ,
  BtdrvGattAuthReqType_NoMitm = 1 ,
  BtdrvGattAuthReqType_Mitm = 2 ,
  BtdrvGattAuthReqType_SignedNoMitm = 3 ,
  BtdrvGattAuthReqType_SignedMitm = 4
}
 GattAuthReqType.
 
enum  BtdrvAudioEventType {
  BtdrvAudioEventType_None = 0 ,
  BtdrvAudioEventType_Connection = 1
}
 AudioEventType. More...
 
enum  BtdrvAudioOutState {
  BtdrvAudioOutState_Stopped = 0 ,
  BtdrvAudioOutState_Started = 1
}
 AudioOutState. More...
 
enum  BtdrvAudioCodec { BtdrvAudioCodec_Pcm = 0 }
 AudioCodec. More...
 

Detailed Description

Bluetooth driver (btdrv) service types (see btdrv.h for the rest).

Author
yellows8, ndeadly

Enumeration Type Documentation

◆ BtdrvAdapterPropertyType

AdapterPropertyType [12.0.0+].

Enumerator
BtdrvAdapterPropertyType_Address 

BtdrvAddress

BtdrvAdapterPropertyType_Name 

Name. String, max length 0xF8 excluding NUL-terminator.

BtdrvAdapterPropertyType_ClassOfDevice 

3-bytes, Class of Device.

BtdrvAdapterPropertyType_Unknown3 

Only available with btdrvSetAdapterProperty. Unknown, BtdrvAddress.

◆ BtdrvAudioCodec

AudioCodec.

Enumerator
BtdrvAudioCodec_Pcm 

Raw PCM.

◆ BtdrvAudioEventType

AudioEventType.

Enumerator
BtdrvAudioEventType_None 

None.

BtdrvAudioEventType_Connection 

Connection.

◆ BtdrvAudioOutState

AudioOutState.

Enumerator
BtdrvAudioOutState_Stopped 

Stopped.

BtdrvAudioOutState_Started 

Started.

◆ BtdrvBleEventType

BleEventType.

Enumerator
BtdrvBleEventType_ClientRegistration 

GATT client registration.

BtdrvBleEventType_ServerRegistration 

GATT server registration.

BtdrvBleEventType_ConnectionUpdate 

Connection update.

BtdrvBleEventType_PreferredConnectionParameters 

Preferred connection parameters.

BtdrvBleEventType_ClientConnection 

GATT client connection.

BtdrvBleEventType_ServerConnection 

GATT server connection.

BtdrvBleEventType_ScanResult 

Scan result.

BtdrvBleEventType_ScanFilter 

Scan filter status.

BtdrvBleEventType_ClientNotify 

GATT client notify.

BtdrvBleEventType_ClientCacheSave 

GATT client cache save.

BtdrvBleEventType_ClientCacheLoad 

GATT client cache load.

BtdrvBleEventType_ClientConfigureMtu 

GATT client configure MTU.

BtdrvBleEventType_ServerAddCharacteristic 

GATT server add characteristic.

BtdrvBleEventType_ServerWrite 

GATT server write.

◆ BtdrvBluetoothHhReportType

BluetoothHhReportType Bit0-1 directly control the HID bluetooth transaction report-type value.

Bit2-3: these directly control the Parameter Reserved field for SetReport, for GetReport these control the Parameter Reserved and Size bits.

Enumerator
BtdrvBluetoothHhReportType_Other 

Other.

BtdrvBluetoothHhReportType_Input 

Input.

BtdrvBluetoothHhReportType_Output 

Output.

BtdrvBluetoothHhReportType_Feature 

Feature.

◆ BtdrvBluetoothPropertyType

BluetoothPropertyType [1.0.0-11.0.1].

Enumerator
BtdrvBluetoothPropertyType_Name 

Name. String, max length 0xF8 excluding NUL-terminator.

BtdrvBluetoothPropertyType_Address 

BtdrvAddress

BtdrvBluetoothPropertyType_Unknown3 

Only available with btdrvSetAdapterProperty. Unknown, BtdrvAddress.

BtdrvBluetoothPropertyType_ClassOfDevice 

3-bytes, Class of Device.

BtdrvBluetoothPropertyType_FeatureSet 

1-byte, FeatureSet. The default is value 0x68.

◆ BtdrvConnectionEventType

ConnectionEventType.

Enumerator
BtdrvConnectionEventType_Status 

BtdrvEventInfo::connection::status.

BtdrvConnectionEventType_SspConfirmRequest 

SSP confirm request.

BtdrvConnectionEventType_Suspended 

ACL Link is now Suspended.

◆ BtdrvEventType

EventType.

Enumerator
BtdrvEventType_InquiryDevice 

BtdrvEventType_* should be used on [12.0.0+].

Device found during Inquiry.

BtdrvEventType_InquiryStatus 

Inquiry status changed.

BtdrvEventType_PairingPinCodeRequest 

Pairing PIN code request.

BtdrvEventType_SspRequest 

SSP confirm request / SSP passkey notification.

BtdrvEventType_Connection 

Connection.

BtdrvEventType_Tsi 

SetTsi (btdrvSetTsi)

BtdrvEventType_BurstMode 

SetBurstMode (btdrvEnableBurstMode)

BtdrvEventType_SetZeroRetransmission 

btdrvSetZeroRetransmission

BtdrvEventType_PendingConnections 

btdrvGetPendingConnections

BtdrvEventType_MoveToSecondaryPiconet 

btdrvMoveToSecondaryPiconet

BtdrvEventType_BluetoothCrash 

BluetoothCrash.

BtdrvEventTypeOld_* should be used on [1.0.0-11.0.1]

BtdrvEventTypeOld_Unknown0 

Unused.

BtdrvEventTypeOld_InquiryDevice 

Device found during Inquiry.

BtdrvEventTypeOld_InquiryStatus 

Inquiry status changed.

BtdrvEventTypeOld_PairingPinCodeRequest 

Pairing PIN code request.

BtdrvEventTypeOld_SspRequest 

SSP confirm request / SSP passkey notification.

BtdrvEventTypeOld_Connection 

Connection.

BtdrvEventTypeOld_BluetoothCrash 

BluetoothCrash.

◆ BtdrvExtEventType

ExtEventType [1.0.0-11.0.1].

Enumerator
BtdrvExtEventType_SetTsi 

SetTsi (btdrvSetTsi)

BtdrvExtEventType_ExitTsi 

ExitTsi (btdrvSetTsi)

BtdrvExtEventType_SetBurstMode 

SetBurstMode (btdrvEnableBurstMode)

BtdrvExtEventType_ExitBurstMode 

ExitBurstMode (btdrvEnableBurstMode)

BtdrvExtEventType_SetZeroRetransmission 

btdrvSetZeroRetransmission

BtdrvExtEventType_PendingConnections 

btdrvGetPendingConnections

BtdrvExtEventType_MoveToSecondaryPiconet 

btdrvMoveToSecondaryPiconet

◆ BtdrvFatalReason

This determines the u16 data to write into a CircularBuffer.

Enumerator
BtdrvFatalReason_Invalid 

Only for BtdrvEventInfo: invalid.

BtdrvFatalReason_Unknown1 

Can only be triggered by btdrvEmulateBluetoothCrash, not triggered by the sysmodule otherwise.

BtdrvFatalReason_CommandTimeout 

HCI command timeout.

BtdrvFatalReason_HardwareError 

HCI event HCI_Hardware_Error occurred.

BtdrvFatalReason_Enable 

Only for BtdrvEventInfo: triggered after enabling bluetooth, depending on the value of a global state field.

BtdrvFatalReason_Audio 

[12.0.0+] Only for BtdrvEventInfo: triggered by Audio cmds in some cases.

◆ BtdrvGattAttributeType

GattAttributeType.

Enumerator
BtdrvGattAttributeType_IncludedService 

Included service.

BtdrvGattAttributeType_Characteristic 

Characteristic.

BtdrvGattAttributeType_Descriptor 

Descriptor.

BtdrvGattAttributeType_Service 

Service.

◆ BtdrvHidConnectionStatus

HidConnectionStatus [12.0.0+].

Enumerator
BtdrvHidConnectionStatus_Closed 

BtdrvHidConnectionStatus_* should be used on [12.0.0+].

BtdrvHidConnectionStatus_Failed 

BtdrvHidConnectionStatusOld_* should be used on [1.0.0-11.0.1].

◆ BtdrvHidEventType

HidEventType.

Enumerator
BtdrvHidEventType_Connection 

BtdrvHidEventType_* should be used on [12.0.0+].

Connection. Only used with btdrvGetHidEventInfo.

BtdrvHidEventType_Data 

DATA report on the Interrupt channel.

BtdrvHidEventType_SetReport 

Response to SET_REPORT.

BtdrvHidEventType_GetReport 

Response to GET_REPORT.

BtdrvHidEventTypeOld_* should be used on [1.0.0-11.0.1]

BtdrvHidEventTypeOld_Connection 

Connection. Only used with btdrvGetHidEventInfo.

BtdrvHidEventTypeOld_Data 

DATA report on the Interrupt channel.

BtdrvHidEventTypeOld_Ext 

Response for extensions. Only used with btdrvGetHidEventInfo.

BtdrvHidEventTypeOld_SetReport 

Response to SET_REPORT.

BtdrvHidEventTypeOld_GetReport 

Response to GET_REPORT.

◆ BtdrvInquiryStatus

BtdrvInquiryStatus.

Enumerator
BtdrvInquiryStatus_Stopped 

Inquiry stopped.

BtdrvInquiryStatus_Started 

Inquiry started.