From: shino k. <shi...@ya...> - 2003-03-23 21:20:29
|
Hi I'm using Linux 2.4.18-3 kernel with libusb. I have a device setup with DMA read and write. My dma uses scatter/gather mode operation. My problem is usb_bulk_read is taking longer time to complete compared to usb_bulk_write write takes 20ms an read takes 350ms. Once I setup my dma descriptors I do one single write of ~200k bytes. These bytes are scattered all over the place in memory.I assume the these are getting queued and takes only 20ms to get done. My read for same amount of data takes more time (350ms) and often it fails if my number of descriptors is greater than 1000, meaning I have to do dma read from 1000 or more different memory locations. 1. Why is my read taking more time? Is there a way to reduce it? Is queuing enabled for read also. 2. Why is it failing with >1000 descriptors? Does continuous read causes anything to fail? Any help will be appreciated __________________________________________________ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com |