Expand Minimize

WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE function

[Applies to KMDF and UMDF]

The WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE function initializes a WDF_USB_CONTROL_SETUP_PACKET structure for a USB control transfer that sets or clears a device feature.

Syntax


VOID WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE(
  _Out_  PWDF_USB_CONTROL_SETUP_PACKET Packet,
  _In_   WDF_USB_BMREQUEST_RECIPIENT BmRequestRecipient,
  _In_   USHORT FeatureSelector,
  _In_   USHORT Index,
  _In_   BOOLEAN SetFeature
);

Parameters

Packet [out]

A pointer to a WDF_USB_CONTROL_SETUP_PACKET structure.

BmRequestRecipient [in]

A WDF_USB_BMREQUEST_RECIPIENT-typed value that is stored in the Packet.bm.Request.Recipient member of the WDF_USB_CONTROL_SETUP_PACKET structure.

FeatureSelector [in]

A feature-specific value that is stored in the Packet.wValue.Value member of the WDF_USB_CONTROL_SETUP_PACKET structure.

Index [in]

A feature-specific index value that is stored in the Packet.wIndex.Value member of the WDF_USB_CONTROL_SETUP_PACKET structure.

SetFeature [in]

A Boolean value that, if TRUE, indicates that the specified feature will be set. If FALSE, the specified feature will be cleared.

Return value

None

Remarks

The WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE function does the following:

  1. Zeros the WDF_USB_CONTROL_SETUP_PACKET structure.

  2. Sets the Packet.bm.Request.Type member to BmRequestStandard.

  3. Sets the Packet.bm.Request.Dir member to BmRequestDeviceToDevice.

  4. Sets the Packet.bRequest member to either a "set feature" or a "clear feature" request value, based on the SetFeature argument.

  5. Sets other structure members by using the WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE function's input arguments.

To initialize a WDF_USB_CONTROL_SETUP_PACKET structure, the driver should call one of the following functions:

Examples

The following code example initializes a WDF_USB_CONTROL_SETUP_PACKET structure.


WDF_USB_CONTROL_SETUP_PACKET packet;

WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE(
                                          &packet,
                                          BMREQUEST_TO_DEVICE,
                                          USB_DEVICE_DESCRIPTOR_TYPE,
                                          0,
                                          FALSE
                                          );

Requirements

Minimum KMDF version

1.0

Minimum UMDF version

2.0

Header

Wdfusb.h (include Wdfusb.h)

See also

WDF_USB_BMREQUEST_RECIPIENT
WDF_USB_CONTROL_SETUP_PACKET
WDF_USB_CONTROL_SETUP_PACKET_INIT
WDF_USB_CONTROL_SETUP_PACKET_INIT_CLASS
WDF_USB_CONTROL_SETUP_PACKET_INIT_GET_STATUS
WDF_USB_CONTROL_SETUP_PACKET_INIT_VENDOR

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft. All rights reserved.