High CPU load and reading from usb intr bulk

From: Sergej Pupykin
Date: Fri Jun 16 2006 - 11:08:24 EST



Hi!

I write usb driver for embedded sh4 200MHz system (2.4.28 kernel) and added
printk into rx_callback and it prints following.
(this is just example)

packet 1: length=14, data=02 02 02 02 02 02 02 02 02 02 01 01 01 01
packet 2: length=10, data=02 02 02 02 02 02 02 02 02 02

while right result must be
packet 1: length=14, data=01 01 01 01 01 01 01 01 01 01 01 01 01 01
packet 2: length=10, data=02 02 02 02 02 02 02 02 02 02

It seems that 2nd packet placed over 1st one.
I submit single int urb and it happens often while high CPU usage.

As I understand it can not be fixed because of there is no HCI flow control
between host and usb device. Am I right?

(I use usb-skeleton.c as a template)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/