Home >
OS > Linux camera driving descriptors have driver source code
Linux camera driving descriptors have driver source code
Bus 001 Device 002: ID: 3322 6655
The Device Descriptor://Device Descriptor
BLength 18//the number of bytes of the description table
BDescriptorType 1//the type of descriptor (here should be 0 x01, namely device descriptor)
BcdUSB 2.00//the device compatible with description table of USB device that the version number (BCD) USB2.0
BDeviceClass 0 (Defined at Interface level)
BDeviceSubClass 0
BDeviceProtocol 0
BMaxPacketSize0 64//endpoint 0 of the maximum size (only 8,16,32,64 as legal value)
IdVendor 0 x3322
IdProduct 0 x6655
BcdDevice/1.00/equipment issue number (BCD)
IManufacturer 1? Owlrcd mSU BaMssS otaregD veci/manufacturers information/description string descriptor index value of the
IProduct eOWLRCDMARE ASMC/2/description of product information string descriptor index value of the
ISerial 2 eOWLRCDMARE - ASMC
Number of configuration descriptor bNumConfigurations 1//may
The Configuration Descriptor://Configuration Descriptor
BLength 9//the number of bytes of the description table length
BDescriptorType 2//configuration description table types (0 x02)
Chief wTotalLength 32//this configuration information (including configuration, interface, the endpoint and device class and manufacturer defined descriptor)
BNumInterfaces number 1//interface supported by this configuration
BConfigurationValue 1//in the SetConfiguration request () used as a parameter to select this configuration in
IConfiguration 0//description of this configuration string description table index
BmAttributes 0 xc0
D7: keep (set to 1)?
D6: self power supply?
D5: remote sensei?
D4.. 0: keep (set to 1)?
As a bus power supply and self-sufficient power equipment will be in the MaxPower domain is pointed out that the power of need from the bus,
And set the D6 as one,
Running period of the actual power mode can be made of GetStatus (DEVICE) request,
The Self Powered
MaxPower 100 ma under the configuration of the bus power consumption, with 2 ma is classified as one unit
The Interface Descriptor://Interface Descriptor
BLength nine the number of bytes of this table
BDescriptorType 4 interface description table class (here should be 0 x04)
BInterfaceNumber 0 the slogan, the current configuration interface support array index (from scratch)
BAlternateSetting 0 optional setting index value,
BNumEndpoints 2 this interface with the number of endpoints, if is zero, explain the interface using the default control pipe,
8 said bInterfaceClass 8 Mass Storage class for large data Storage
Value interface belonging to the class:
Criteria of the zero for the future,
If the value of this domain as FFH, this interface class by the manufacturer's instructions,
The value of all the other retained by the USB specification,
BInterfaceSubClass 6 SCSI
The subclass code
The definition of these values depending on the bInterfaceClass domain,
If bInterfaceClass domain has a value of zero is the domain of value must be zero,
BInterfaceClass domain is not reserved for FFH are all values by USB
BInterfaceProtocol 80 Bulk - Only
Protocol code: the value of the bInterfaceClass and bInterfaceSubClass field.
If an interface support equipment related request the value of this domain is pointed out that the device class notes, as defined by the agreement.
IInterface 0 describes the interface of string description table index value,
The Endpoint Descriptor://Endpoint Descriptor
7 the bLength description table
the number of bytes in lengthBDescriptorType 5 endpoint context class (here should be 0 x05)
BEndpointAddress 0 x81 EP 1//IN the address also hides the endpoint IN the direction of information (before said that the endpoint is one-way), can be used to mask USB_DIR_OUTUSB_DIR_IN to determine
This description table describe the endpoint address, direction:
Bit 3.. 0: endpoint number.
Bit 6.. 4: retention, zero
Bit 7: direction, if control endpoint is slightly,
0: output endpoint (the host to the device)
1: input endpoint (device to the host)
BmAttributes 2
//bmAttributes endpoint of type
//combination USB_ENDPOINT_XFERTYPE_MASK can determine the endpoint is USB_ENDPOINT_XFER_ISOC (etc.), USB_ENDPOINT_XFER_BULK (bulk) or//USB_ENDPOINT_XFER_INT (interrupt),
The value of this domain is under the configuration of bConfigurationValue domain refers to the endpoint features,
Bit 1.. 0: send type
00=control transfer
01=synchronous transmission
10=batch transfer
11=interrupt transfer
All other bits are reserved,
Transfer Type Bulk
Synch Type None
The Usage Type Data
WMaxPacketSize 0 x0200 1 x 512 bytes under the current configuration, this endpoint can receive or send the maximum packet size,
BInterval data transmission endpoint 0 cycle time interval
The Endpoint Descriptor://Endpoint Descriptor
BLength 7
BDescriptorType 5
BEndpointAddress 0 x02 EP 2 OUT
BmAttributes 2
Transfer Type Bulk
Synch Type None
The Usage Type Data
WMaxPacketSize 0 x0200 1 x 512 bytes
BInterval 0
Device the Qualifier (for other Device speed) ://equipment Qualifier
10 the bLength description table
the number of bytes in lengthBDescriptorType 6 endpoint descriptor table (here should be 0 x06)
BcdUSB usb 2.00
BDeviceClass 0 (Defined at Interface level)
BDeviceSubClass 0
BDeviceProtocol 0
BMaxPacketSize0 64
BNumConfigurations 1
Device Status: 0 x0001//equipment state
The Self Powered