Hi, I'm trying to connect a scanner to my embedded linux PXA platform (2.6.0-test2 with Cypress 67300 controller). It appears the device fails to enumerate due to linux only reading 8 bytes during the initial GetDescriptor frame.
The device works properly when connected to a Windoze machine, which does a GetDescriptor prior to SetAddress. This results in the GetDescriptor after SetAddress reading all 18 bytes. Windows trace: GetDescriptor (Device) h->d setup (ack) h<-d in (ack) h->d out (ack) SetAddress h->d setup (ack) h<-d in (ack) GetDescriptor (Device) h->d setup (ack) h<-d in (ack) h<-d in (ack) h<-d in (ack) h->d out (ack) ..... and everything works. On linux (both desktop and embedded device) I get SetAddress h->d setup (ack) h<-d in (ack) GetDescriptor (Device) h->d setup (ack) h<-d in (ack) h->d out (nak) ... followed by frames full of OUT and NAKs If I hack the code to read 18 bytes for the GetDescriptor, the enumeration works. I assume this is a buggy device, but I got to make it work. Anyone seen this before? Any suggestions? Thanks, Kyle. ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel