From: michele.paolino <mic...@st...> - 2012-01-17 14:51:47
|
Hi, Thank you for your answers, On Tue, Jan 17, 2012 at 1:37 PM, Johannes Stezenbach <js...@si...> wrote: > Hi, > > On Tue, Jan 17, 2012 at 11:50:22AM +0000, Pete Batard wrote: > > On 2012.01.17 11:00, michele.paolino wrote: > > > > > libusb_set_configuration(cur_handle, 1) > > > > http://www.libusb.org/wiki/windows_backend#KnownRestrictions : > > "WinUSB cannot be used to set a device configuration that is different > > from the default one. This is a limitation of the Microsoft driver." > > > > You should try to avoid using libusb_set_configuration on Windows (at > > least as long as we only support WinUSB as a driver), unless you are > > certain to select the default one. > > Among other things, SET_CONFIGURATION resets the data toggle of > the endpoint to DATA0. However, SET_INTERFACE also should do it. > But since the question is about Cypress FX2, is this correctly > implemented in the FX2 firmware? > I have commented the line in wich I call libusb_set_configuration and libusb_clear_halt. Now debug output is similar to the previous. On the other hand now there is a line that says: libusb:debug [libusb_handle_events_timeout_completed] doing our own event handling About Cypress FX2, I have configured EP2 (and EP6) FIFO in AUTO mode. I would like to be able to write to FX2 through EP2 and read through EP6. I used as fw.c (the file that describes the framework) the original one. In the other C File the only modified function is TD_Init as below. Maybe I'm wrong, but I think that FX2 is properly configured (I have read the manual thousands of times :-( ). I have removed SYNCDELAY between every line to reduce the numbers of lines: void TD_Init( void ) { REVCTL=0x03; SYNCDELAY; CPUCS = 0x10; EP6FIFOPFH=0x19; EP6FIFOPFL=0xFA; PINFLAGSAB = 0x6A; PINFLAGSCD = 0xC8; IFCONFIG = 0x43; FIFORESET = 0x80; // activate NAK-ALL FIFORESET = 0x02; // reset, FIFO 2 FIFORESET = 0x04; // reset, FIFO 4 FIFORESET = 0x06; // reset, FIFO 6 FIFORESET = 0x08; // reset, FIFO 8 FIFORESET = 0x00; // deactivate NAK-ALL EP2CFG = 0xA2; EP6CFG = 0xE0; EP2FIFOCFG = 0x11; // AUTOOUT=1, WORDWIDE=1 OUTPKTEND=0x82; OUTPKTEND=0x82; EP6FIFOCFG = 0x09; // AUTOIN=1, ZEROLENIN=1, WORDWIDE=1 EP6AUTOINLENH = 0x02; // Auto-commit 512-byte packets EP6AUTOINLENL = 0x00; REVCTL=0x00; } > > Does the device work with other OS or is Win7 x64 the only one tried? > Sincerely I'm working with Seven x64 and is the only one I tried. I prefer (for this project) to use Windows because I have a lot of work done in VisualStudio. > > > HTH > Johannes > > > ------------------------------------------------------------------------------ > Keep Your Developer Skills Current with LearnDevNow! > The most comprehensive online learning library for Microsoft developers > is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, > Metro Style Apps, more. Free future releases when you subscribe now! > http://p.sf.net/sfu/learndevnow-d2d > _______________________________________________ > Libusb-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-devel > > > Regards -- Michele Paolino |