Dear guys,
My name is Peter Volny, I'm from Czech Republic and I'd like
to ask for for little help. I've written a USB driver into the embedded
system,
based on ARM Cortex-M3 processor with USB slave controller, which should
work as FT232BM chip. Everything worked with Windows and Linux, until
yesterday,
when I installed an Ubuntu 9.10 with new kernel 2.6.31.-14, where is
your ftdi_sio
driver version 1.5.0.
The problem seems so, that, when I'm trying to send a periodic message
every 'latency' timeout (those 2 bytes of status info without a data
on IN BULK endpoint), my controller doesn't get an acknowledgement
from USB host.
I know, that the linux driver normaly doesn't answer (acknowledge)
until some application opens a serial port (at least it worked so).
After opening port the host started to acknowledge those data on IN BULK
endpoint (Windows host works the same way). With your new driver 1.5.0 I
can't get
this acknowledgement. When I open this serial port on linux I'll get one
acknowledgement,
I send another USB packet and from now on I don't get any further
acknowledgement.
More interesting thin ghappens, when I'm starting the linux with my box
connected
to the USB. Then the kernel hangs up with 2 messages repeated forever.
bad: schedulig from idle thread
BUG: scheduling while at atomic swapper 0/0x00001010
or somethig like this (the listing goes very fast!!!)
I suppose, that I've made something wrong, but I'd like
to find it.
So, could you be so kind and send me a detailed description of USB
protocol for
FTDI chips? I understood, that you've got one.
Have you any idea, what I do wrong?
P.S. I think, that it could be some race conditions problem, because
I found one machine in our office, my little box worked
with, and this machine tun the linux 2.6.31.-14 version with ftdi_sio
1.5.0 .
Thanks,
Peter
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html