libnx
v4.7.0
|
btm:u (btm user) service IPC wrapper. More...
#include "../types.h"
#include "../kernel/event.h"
#include "../services/btdrv_types.h"
#include "../services/btm.h"
#include "../sf/service.h"
Go to the source code of this file.
Functions | |
Result | btmuInitialize (void) |
Initialize btm:u. | |
void | btmuExit (void) |
Exit btm:u. | |
Result | btmuGetServiceSession (Service *srv_out) |
Gets the Service object for the actual btm:u service session. This object must be closed by the user once finished using cmds with this. | |
Service * | btmuGetServiceSession_IBtmUserCore (void) |
Gets the Service object for IBtmUserCore. | |
Result | btmuAcquireBleScanEvent (Event *out_event) |
AcquireBleScanEvent. More... | |
Result | btmuGetBleScanFilterParameter (u16 parameter_id, BtdrvBleAdvertisePacketParameter *out) |
GetBleScanFilterParameter. More... | |
Result | btmuGetBleScanFilterParameter2 (u16 parameter_id, BtdrvGattAttributeUuid *out) |
GetBleScanFilterParameter2. More... | |
Result | btmuStartBleScanForGeneral (BtdrvBleAdvertisePacketParameter param) |
StartBleScanForGeneral. More... | |
Result | btmuStopBleScanForGeneral (void) |
StopBleScanForGeneral. More... | |
Result | btmuGetBleScanResultsForGeneral (BtdrvBleScanResult *results, u8 count, u8 *total_out) |
GetBleScanResultsForGeneral. More... | |
Result | btmuStartBleScanForPaired (BtdrvBleAdvertisePacketParameter param) |
StartBleScanForPaired. More... | |
Result | btmuStopBleScanForPaired (void) |
StopBleScanForPaired. More... | |
Result | btmuStartBleScanForSmartDevice (const BtdrvGattAttributeUuid *uuid) |
StartBleScanForSmartDevice. More... | |
Result | btmuStopBleScanForSmartDevice (void) |
StopBleScanForSmartDevice. More... | |
Result | btmuGetBleScanResultsForSmartDevice (BtdrvBleScanResult *results, u8 count, u8 *total_out) |
GetBleScanResultsForSmartDevice. More... | |
Result | btmuAcquireBleConnectionEvent (Event *out_event) |
AcquireBleConnectionEvent. More... | |
Result | btmuBleConnect (BtdrvAddress addr) |
BleConnect. More... | |
Result | btmuBleDisconnect (u32 connection_handle) |
BleDisconnect. More... | |
Result | btmuBleGetConnectionState (BtdrvBleConnectionInfo *info, u8 count, u8 *total_out) |
BleGetConnectionState. More... | |
Result | btmuAcquireBlePairingEvent (Event *out_event) |
AcquireBlePairingEvent. More... | |
Result | btmuBlePairDevice (u32 connection_handle, BtdrvBleAdvertisePacketParameter param) |
BlePairDevice. More... | |
Result | btmuBleUnPairDevice (u32 connection_handle, BtdrvBleAdvertisePacketParameter param) |
BleUnPairDevice. More... | |
Result | btmuBleUnPairDevice2 (BtdrvAddress addr, BtdrvBleAdvertisePacketParameter param) |
BleUnPairDevice2. More... | |
Result | btmuBleGetPairedDevices (BtdrvBleAdvertisePacketParameter param, BtdrvAddress *addrs, u8 count, u8 *total_out) |
BleGetPairedDevices. More... | |
Result | btmuAcquireBleServiceDiscoveryEvent (Event *out_event) |
AcquireBleServiceDiscoveryEvent. More... | |
Result | btmuGetGattServices (u32 connection_handle, BtmGattService *services, u8 count, u8 *total_out) |
GetGattServices. More... | |
Result | btmuGetGattService (u32 connection_handle, const BtdrvGattAttributeUuid *uuid, BtmGattService *service, bool *flag) |
Same as btmuGetGattServices except this only returns the BtmGattService which matches the input BtdrvGattAttributeUuid. More... | |
Result | btmuGetGattIncludedServices (u32 connection_handle, u16 service_handle, BtmGattService *services, u8 count, u8 *out) |
Same as btmuGetGattServices except this only returns BtmGattService entries where various checks pass with u16 fields. More... | |
Result | btmuGetBelongingGattService (u32 connection_handle, u16 attribute_handle, BtmGattService *service, bool *flag) |
This is similar to btmuGetGattIncludedServices except this only returns 1 BtmGattService. More... | |
Result | btmuGetGattCharacteristics (u32 connection_handle, u16 service_handle, BtmGattCharacteristic *characteristics, u8 count, u8 *total_out) |
GetGattCharacteristics. More... | |
Result | btmuGetGattDescriptors (u32 connection_handle, u16 char_handle, BtmGattDescriptor *descriptors, u8 count, u8 *total_out) |
GetGattDescriptors. More... | |
Result | btmuAcquireBleMtuConfigEvent (Event *out_event) |
AcquireBleMtuConfigEvent. More... | |
Result | btmuConfigureBleMtu (u32 connection_handle, u16 mtu) |
ConfigureBleMtu. More... | |
Result | btmuGetBleMtu (u32 connection_handle, u16 *out) |
GetBleMtu. More... | |
Result | btmuRegisterBleGattDataPath (const BtmBleDataPath *path) |
RegisterBleGattDataPath. More... | |
Result | btmuUnregisterBleGattDataPath (const BtmBleDataPath *path) |
UnregisterBleGattDataPath. More... | |
btm:u (btm user) service IPC wrapper.
AcquireBleConnectionEvent.
[out] | out_event | Output Event with autoclear=true. |
AcquireBleMtuConfigEvent.
[out] | out_event | Output Event with autoclear=true. |
AcquireBlePairingEvent.
[out] | out_event | Output Event with autoclear=true. |
AcquireBleScanEvent.
[out] | out_event | Output Event with autoclear=true. |
AcquireBleServiceDiscoveryEvent.
[out] | out_event | Output Event with autoclear=true. |
Result btmuBleConnect | ( | BtdrvAddress | addr | ) |
BleDisconnect.
[in] | connection_handle | This must match a BtdrvBleConnectionInfo::connection_handle from btmuBleGetConnectionState. [5.1.0+] 0xFFFFFFFF is invalid. |
Result btmuBleGetConnectionState | ( | BtdrvBleConnectionInfo * | info, |
u8 | count, | ||
u8 * | total_out | ||
) |
BleGetConnectionState.
[out] | info | Output array of BtdrvBleConnectionInfo. |
[in] | count | Size of the info array in entries. Other cmds which use this internally use count=4. |
[out] | total_out | Total output entries. |
Result btmuBleGetPairedDevices | ( | BtdrvBleAdvertisePacketParameter | param, |
BtdrvAddress * | addrs, | ||
u8 | count, | ||
u8 * | total_out | ||
) |
BleGetPairedDevices.
[in] | param | BtdrvBleAdvertisePacketParameter |
[out] | addrs | Output array of BtdrvAddress. |
[in] | count | Size of the addrs array in entries. |
[out] | total_out | Total output entries. The max is 10. |
Result btmuBlePairDevice | ( | u32 | connection_handle, |
BtdrvBleAdvertisePacketParameter | param | ||
) |
BlePairDevice.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | param | BtdrvBleAdvertisePacketParameter |
Result btmuBleUnPairDevice | ( | u32 | connection_handle, |
BtdrvBleAdvertisePacketParameter | param | ||
) |
BleUnPairDevice.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | param | BtdrvBleAdvertisePacketParameter |
Result btmuBleUnPairDevice2 | ( | BtdrvAddress | addr, |
BtdrvBleAdvertisePacketParameter | param | ||
) |
BleUnPairDevice2.
[in] | addr | BtdrvAddress |
[in] | param | BtdrvBleAdvertisePacketParameter |
ConfigureBleMtu.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | mtu | MTU |
Result btmuGetBelongingGattService | ( | u32 | connection_handle, |
u16 | attribute_handle, | ||
BtmGattService * | service, | ||
bool * | flag | ||
) |
This is similar to btmuGetGattIncludedServices except this only returns 1 BtmGattService.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | attribute_handle | AttributeHandle |
[out] | service | BtmGattService |
[out] | flag | Whether a BtmGattService was returned. |
GetBleMtu.
[in] | connection_handle | Same as btmuBleDisconnect. |
[out] | out | Output MTU. |
Result btmuGetBleScanFilterParameter | ( | u16 | parameter_id, |
BtdrvBleAdvertisePacketParameter * | out | ||
) |
GetBleScanFilterParameter.
[in] | parameter_id | Must be value 0x1 or 0xFFFF. |
[out] | out | BtdrvBleAdvertisePacketParameter |
Result btmuGetBleScanFilterParameter2 | ( | u16 | parameter_id, |
BtdrvGattAttributeUuid * | out | ||
) |
GetBleScanFilterParameter2.
[in] | parameter_id | Must be value 0x2. |
[out] | out | BtdrvGattAttributeUuid. The first 4-bytes is always 0. |
Result btmuGetBleScanResultsForGeneral | ( | BtdrvBleScanResult * | results, |
u8 | count, | ||
u8 * | total_out | ||
) |
GetBleScanResultsForGeneral.
[out] | results | Output array of BtdrvBleScanResult. |
[in] | count | Size of the results array in entries. The max is 10. |
[out] | total_out | Total output entries. |
Result btmuGetBleScanResultsForSmartDevice | ( | BtdrvBleScanResult * | results, |
u8 | count, | ||
u8 * | total_out | ||
) |
GetBleScanResultsForSmartDevice.
[out] | results | Output array of BtdrvBleScanResult. |
[in] | count | Size of the results array in entries. The max is 10. |
[out] | total_out | Total output entries. |
Result btmuGetGattCharacteristics | ( | u32 | connection_handle, |
u16 | service_handle, | ||
BtmGattCharacteristic * | characteristics, | ||
u8 | count, | ||
u8 * | total_out | ||
) |
GetGattCharacteristics.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | service_handle | This controls which BtmGattCharacteristic entries to return. |
[out] | characteristics | BtmGattCharacteristic |
[in] | count | Size of the characteristics array in entries. The max is 100. |
[out] | total_out | Total output entries. |
Result btmuGetGattDescriptors | ( | u32 | connection_handle, |
u16 | char_handle, | ||
BtmGattDescriptor * | descriptors, | ||
u8 | count, | ||
u8 * | total_out | ||
) |
GetGattDescriptors.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | char_handle | Characteristic handle. This controls which BtmGattDescriptor entries to return. |
[out] | descriptors | BtmGattDescriptor |
[in] | count | Size of the descriptors array in entries. The max is 100. |
[out] | total_out | Total output entries. |
Result btmuGetGattIncludedServices | ( | u32 | connection_handle, |
u16 | service_handle, | ||
BtmGattService * | services, | ||
u8 | count, | ||
u8 * | out | ||
) |
Same as btmuGetGattServices except this only returns BtmGattService entries where various checks pass with u16 fields.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | service_handle | ServiceHandle |
[out] | services | BtmGattService |
[in] | count | Size of the services array in entries. The max is 100. |
[out] | out | Output value. |
Result btmuGetGattService | ( | u32 | connection_handle, |
const BtdrvGattAttributeUuid * | uuid, | ||
BtmGattService * | service, | ||
bool * | flag | ||
) |
Same as btmuGetGattServices except this only returns the BtmGattService which matches the input BtdrvGattAttributeUuid.
[in] | connection_handle | Same as btmuBleDisconnect. |
[in] | uuid | BtdrvGattAttributeUuid |
[out] | service | BtmGattService |
[out] | flag | Whether a BtmGattService was returned. |
Result btmuGetGattServices | ( | u32 | connection_handle, |
BtmGattService * | services, | ||
u8 | count, | ||
u8 * | total_out | ||
) |
GetGattServices.
[in] | connection_handle | Same as btmuBleDisconnect. |
[out] | services | Output array of BtmGattService. |
[in] | count | Size of the services array in entries. The max is 100. |
[out] | total_out | Total output entries. |
Result btmuRegisterBleGattDataPath | ( | const BtmBleDataPath * | path | ) |
RegisterBleGattDataPath.
[in] | path | BtmBleDataPath |
Result btmuStartBleScanForGeneral | ( | BtdrvBleAdvertisePacketParameter | param | ) |
StartBleScanForGeneral.
[in] | param | BtdrvBleAdvertisePacketParameter |
Result btmuStartBleScanForPaired | ( | BtdrvBleAdvertisePacketParameter | param | ) |
StartBleScanForPaired.
[in] | param | BtdrvBleAdvertisePacketParameter |
Result btmuStartBleScanForSmartDevice | ( | const BtdrvGattAttributeUuid * | uuid | ) |
StartBleScanForSmartDevice.
[in] | uuid | BtdrvGattAttributeUuid |
Result btmuStopBleScanForGeneral | ( | void | ) |
StopBleScanForGeneral.
Result btmuStopBleScanForPaired | ( | void | ) |
StopBleScanForPaired.
Result btmuStopBleScanForSmartDevice | ( | void | ) |
StopBleScanForSmartDevice.
Result btmuUnregisterBleGattDataPath | ( | const BtmBleDataPath * | path | ) |
UnregisterBleGattDataPath.
[in] | path | BtmBleDataPath |