From: Felipe B. <me...@fe...> - 2010-08-17 09:33:44
|
Hi, On 08/17/2010 12:06 PM, Thejus.. wrote: > Hi > > I want to feed in the values for libusb_control_transfer().But i am not > able to get how to input the values for bRequest,wValue,wLength. > > This is control transfer where i am loading some seed value into some > register address,I don't know how to fill in the fields of > libusb_control_transfer to make it work. > > > bmRequestType=LIBUSB_ENDPOINT_IN|LIBUSB_REQUEST_TYPE_CLASS|LIBUSB_RECIPIENT_DEVICE > > But my register address is 320 which i am feeding to > setup_data[39:8](control transfer). Here 8 bits of bRequest,16 bits of > wValue and 8 bit LSB of wIndex comes into picture. have you checked the documentation ? here's the prototype for that function: int libusb_control_transfer (libusb_device_handle *dev_handle, uint8_t bmRequestType, uint8_t bRequest, uint16_t wValue, uint16_t wIndex, unsigned char *data, uint16_t wLength, unsigned int timeout) so, for example a SET_FEATURE would be: libusb_control_transfer(udevh, LIBUSB_RECIPIENT_DEVICE | LIBUSB_REQUEST_TYPE_STANDARD, LIBUSB_REQUEST_SET_FEATURE, TEST_MODE, (testnumber << 8), NULL, 0, 1000); -- balbi |