Re: [Bugme-new] [Bug 8297] New: ldusb returns bad data on subsequent reads if no data is available.

"Shawn Bohrer" <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
On 4/4/07, Oliver Neukum <[email protected]> wrote:

> +       spin_lock(&dev->rbsl);
>         if (urb->actual_length > 0) {
>                 next_ring_head = (dev->ring_head+1) % ring_buffer_size;
>                 if (next_ring_head != dev->ring_tail) {
> @@ -245,17 +249,20 @@
>                         dev_warn(&dev->intf->dev,
>                                  "Ring buffer overflow, %d bytes dropped\n",
>                                  urb->actual_length);
> +                       dev->buffer_overflow = 1;
>         }

It looks like you are missing brackets around the else case.

This patch does seem to fix the problem I described, though admittedly
I haven't exactly figured out how you are supposed to use the ldusb
driver.  It looks like I need to first write some magic numbers to
initialize the device before a read will produce useful data.  I guess
I need to study Greg KH's Go!Temp driver to figure out what exactly I
am supposed to write to the device.

-Shawn

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.