USBC_START_DEVICE_CALLBACK callback function (usbbusif.h)

The USBC_START_DEVICE_CALLBACK routine allows a USB client driver to provide a custom definition of the interface collections on a device.

Syntax

USBC_START_DEVICE_CALLBACK UsbcStartDeviceCallback;

NTSTATUS UsbcStartDeviceCallback(
  [in]  PUSB_DEVICE_DESCRIPTOR DeviceDescriptor,
  [in]  PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor,
  [out] PUSBC_FUNCTION_DESCRIPTOR *FunctionDescriptorBuffer,
  [out] PULONG FunctionDescriptorBufferLength,
  [in]  PDEVICE_OBJECT FdoDeviceObject,
  [in]  PDEVICE_OBJECT PdoDeviceObject
)
{...}

Parameters

[in] DeviceDescriptor

The device descriptor of the device.

[in] ConfigurationDescriptor

The configuration of the device.

[out] FunctionDescriptorBuffer

Pointer to a buffer that contains an array of function descriptors (USBC_FUNCTION_DESCRIPTOR).

[out] FunctionDescriptorBufferLength

The length in bytes of the buffer that FunctionDescriptorBuffer points to.

[in] FdoDeviceObject

The function device object for the device.

[in] PdoDeviceObject

The physical device object for the device.

Return value

If the operation succeeds, the vendor-supplied callback routine must return STATUS_SUCCESS.

Remarks

For a general description of the callback routine mechanism, see Customizing Enumeration of Interface Collections for Composite Devices.

Requirements

Requirement Value
Target Platform Desktop
Header usbbusif.h (include Usbbusif.h)

See also

USBC_DEVICE_CONFIGURATION_INTERFACE_V1