class Device

Defined at line 66 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.h

This driver can be bound to devices requiring the ZX_PROTOCOL_BT_TRANSPORT protocol, but this

driver actually implements the ZX_PROTOCOL_BT_HCI protocol. Drivers that bind to

ZX_PROTOCOL_BT_HCI should never bind to this driver directly, but instead bind to a vendor

driver.

BtHciProtocol is not a ddk::base_protocol because vendor drivers proxy requests to this driver.

Public Methods

void Device (zx_device_t * parent, async_dispatcher_t * dispatcher)

If |dispatcher| is non-null, it will be used instead of a new work thread.

tests.

Defined at line 93 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

zx_status_t Create (void * ctx, zx_device_t * parent)

Static bind function for the ZIRCON_DRIVER() declaration. Binds a Device and passes ownership

to the driver manager.

Defined at line 100 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

zx_status_t Create (zx_device_t * parent, async_dispatcher_t * dispatcher)

Constructor for tests to inject a dispatcher for the work thread.

Defined at line 104 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

std::mutex & mutex ()

Defined at line 115 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.h

zx_status_t Bind ()

Adds the device.

Defined at line 119 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void ConnectHciTransport (fidl::ServerEnd<fuchsia_hardware_bluetooth::HciTransport> server_end)

This is only for test purpose, mock_ddk doesn't provide a way for the test to connect to a fidl

protocol exposed from the driver's outgoing directory.

TODO(https://fxbug.dev/332333517): Remove this function after DFv2 migration.

Defined at line 362 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void ConnectSnoop (fidl::ServerEnd<fuchsia_hardware_bluetooth::Snoop> server_end)

This is only for test purpose, mock_ddk doesn't provide a way for the test to connect to a fidl

protocol exposed from the driver's outgoing directory.

TODO(https://fxbug.dev/332333517): Remove this function after DFv2 migration.

Defined at line 368 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

zx_status_t DdkGetProtocol (uint32_t proto_id, void * out)

Methods required by DDK mixins:

Defined at line 372 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void DdkUnbind (ddk::UnbindTxn txn)

Defined at line 381 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void DdkRelease ()

Defined at line 479 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void DdkSuspend (ddk::SuspendTxn txn)

Defined at line 517 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void Send (SendRequest & request, SendCompleter::Sync & completer)

fuchsia_hardware_bluetooth::HciTransport protocol overrides.

Defined at line 1141 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void AckReceive (AckReceiveCompleter::Sync & completer)

Defined at line 1219 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void ConfigureSco (ConfigureScoRequest & request, ConfigureScoCompleter::Sync & completer)

Defined at line 1223 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void handle_unknown_method (::fidl::UnknownMethodMetadata<fuchsia_hardware_bluetooth::HciTransport> metadata, ::fidl::UnknownMethodCompleter::Sync & completer)

Defined at line 1304 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void AcknowledgePackets (AcknowledgePacketsRequest & request, AcknowledgePacketsCompleter::Sync & completer)

fuchsia_hardware_bluetooth::Snoop protocol overrides.

Defined at line 1311 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc

void handle_unknown_method (::fidl::UnknownMethodMetadata<fuchsia_hardware_bluetooth::Snoop> metadata, ::fidl::UnknownMethodCompleter::Sync & completer)

Defined at line 1316 of file ../../src/connectivity/bluetooth/hci/transport/usb/bt_transport_usb.cc