I have a Cypress FX2 based USB interface board connected to our radar data 
acquisition chassis. It is used for configuring the hardware and getting data 
back to the PC.

I wrote a driver which is a very skinny wrapper around the (very handy) 
usb_fifo device node code.

I have several end points, all bulk. 2 are for serial comms, 2 for a low speed 
control bus and 1 for high speed data back to the PC.

The PC sends 10-250 byte packets out to modules on the serial bus and gets 
replies (after a 10-500 msec) of a similar size.

The low speed control bus is driven by the FX2 and the PC sends it 3 byte 
packets which is processes to read/write on the control bus, then sends a 3 
byte packet back.

I find that my application has rare problems where it does not get a reply from 
the micro to a control bus packet, or perhaps the micro doesn't receive it (I 
need to add a sequence number or similar to my protocol to try and detect it I 

I found that this problem happens much less rarely (less than once a day) on a 
UP machine than on an SMP one.

Given that I am wondering if it is some sort of locking issue, and if anyone 
has seen anything similar?

I can supply the driver code if anyone is interested :)


Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C

freebsd-usb@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"

Reply via email to