Hi Andy,
URB_FUNCTION_SELECT_CONFIGURATION, as its name says, selects a
configuration. In your log (which is a bit odd, I must say, with the many
vendor requests at the beginning), you have URB 17 getting the Configuration
Descriptor. URB 18 uses this Configuration Descriptor to select one
configuration/interface.
This is like usb_set_configuration() and usb_set_interface() after
usb_get_descriptor(), as described in
http://usb.cs.tum.edu/usbdoc/node20.html and
http://usb.cs.tum.edu/usbdoc/node21.html
Back to Windows - Quoted from the Win2000 DDK:
_URB_SELECT_CONFIGURATION
struct _USB_SELECT_CONFIGURATION
struct _URB_HEADER Hdr;
PUSB_CONFIGRUATION_DESCRIPTOR ConfigurationDescriptor ;
USB_CONFIGURATION_HANDLE ConfigurationHandle ;
USBD_INTERFACE_INFORMATION Interface ;
} ;
USB client drivers set up this structure to select a configuration for a USB
device.
Members
Hdr
Specifies the URB header information. Hdr.Function must be
URB_FUNCTION_SELECT_CONFIGURATION, and Hdr.Length
must be the size of the entire URB.
ConfigurationDescriptor
Points to an initialized USB configuration descriptor that identifies
the
configuration to be used on the device. If this member is NULL, the
device will be set into an unconfigured state.
ConfigurationHandle
Contains a handle that is used to access this configuration on return
from the host controller driver. USB client drivers must treat this
member
as opaque.
Interface
Specifies a variable length array of USBD_INTERFACE_INFORMATION
structures, each describing an interface supported by the configuration
being
selected.
Before the request is sent to the host controller driver, the driver may
select an
alternate setting for one or more of the interfaces contained in this
array by
setting members of the USBD_INTERFACE_INFORMATION structure
for that interface.
On return from the host controller driver, this member contains a
USBD_INTERFACE_INFORMATION structure with data about the
capabilities and format of the endpoints within that interface.
Hope this helps,
..tom
----- Original Message -----
From: "Andy Armstrong" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, March 18, 2001 2:36 PM
Subject: [linux-usb-devel] Anyone know what
URB_FUNCTION_SELECT_CONFIGURATION corresponds to
> I'm currently working on a driver for 3Com's Homeconnect USB Camera[1]
> and as part of the reverse engineering program I'm writing a command
> line tool that I can use to exercise the camera using libusb. On Windows
> 98 I'm using USB Snoopy[2] to capture conversations between the Windows
> driver and the camera. Shortly after the camera is plugged in the driver
> sends a command that USB Snoopy identifies as
>
> URB_FUNCTION_SELECT_CONFIGURATION
>
> Does anyone know what command that actually is? The full log's at the
> project site[3].
>
> TIA.
>
> [1] http://sourceforge.net/projects/homeconnectusb
> [2] http://www.jps.net/~koma/
> [3] http://ftp1.sourceforge.net/homeconnectusb/plug.log.gz
>
> --
> Andy Armstrong, Tagish
>
> _______________________________________________
> [EMAIL PROTECTED]
> To unsubscribe, use the last form field at:
> http://lists.sourceforge.net/lists/listinfo/linux-usb-devel
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel