class UsbFunctionInterfaceProtocolClient

Defined at line 126 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

Public Methods

void UsbFunctionInterfaceProtocolClient ()

Defined at line 128 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

void UsbFunctionInterfaceProtocolClient (const usb_function_interface_protocol_t * proto)

Defined at line 130 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

void GetProto (usb_function_interface_protocol_t * proto)

Defined at line 133 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

bool is_valid ()

Defined at line 137 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

void clear ()

Defined at line 140 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

uint64_t GetDescriptorsSize ()

Returns the size of the descriptor list for the function.

Defined at line 146 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

void GetDescriptors (uint8_t * out_descriptors_buffer, size_t descriptors_size, size_t * out_descriptors_actual)

Returns the descriptor list for the function.

TODO(voydanoff) - descriptors will likely vary (different max packet sizes, etc)

depending on whether we are in low/full, high or super speed mode.

We will need to add a usb_speed_t argument to this callback.

Defined at line 154 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

zx_status_t Control (const usb_setup_t * setup, const uint8_t * write_buffer, size_t write_size, uint8_t * out_read_buffer, size_t read_size, size_t * out_read_actual)

Callback for handling ep0 control requests.

Defined at line 159 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

zx_status_t SetConfigured (bool configured, usb_speed_t speed)

Called to inform the function driver when the USB device configured state changes.

Called with configured == true in response to a SET_CONFIGURATION control request

that selects a configuration that contains this function. In this case, the function driver

should call usb_function_config_ep() to configure its endpoints.

Called with configured == false when configuration is disabled or USB is disconnected.

The function driver should then call usb_function_disable_ep() to disable its endpoints.

Defined at line 169 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h

zx_status_t SetInterface (uint8_t interface, uint8_t alt_setting)

Called to set an alternate setting for an interface due to a SET_INTERFACE control request.

The function driver should call usb_function_config_ep() and/or usb_function_config_ep()

to configure or disable the interface's endpoints as appropriate.

Defined at line 176 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo.h