On Wed, Jan 03, 2007 at 08:58:07PM -0800, David Brownell wrote:
> On Monday 01 January 2007 4:52 am, amateur wrote:
> > Hi Guys,
> > 
> > I have a problem with bluez on a arm platform. Here is the detail:
> > On the arm embedded platform, I invoke this command
> >     l2ping -s 667 BDADDR
> > to test the bluetooth L2CAP connection, where BDADDR is the bluetooth
> > address of my Linux/Bluez laptop. At the same time, I use 
> >     hcidump -x -R
> > on my laptop to monitor the bluetooth traffic. The problem is that the
> > data I sent from the embedded arm platform got corrupted on
> > receptioin.  
> 
> You're being unclear here ... Linux on both ends?  Is the data
> corrupted in memory before the ARM sends it?  After?  There's
> some kind of USB dongle on both ends?  The same kind?

Yes, I have linux both on the arm embedded platform and on my thinkpad. 
The data in memory is not corrupted before nor after USB TX. I have
checked the transfer buffer associated with the urb. 

> 
> 
> > After a careful check, I found that the error has the 
> > following pattern: Some bytes of the ACL data packet, which
> > corresponding to the L2CAP Echo Request Command, will have some 4
> > bytes of its content changed from valid data to 4 bytes of zero on
> > occasion. And this change-to-zero error may occur several times in a
> > ACL Packet sometimes. The distance between consecutive errors is
> > always a multiple of 64-bytes which is the maxPacketSize of the USB
> > pipe of the bluetooth dongle.  The offset of the error position in the
> > ACL Packet is always 64*i+4-64*i+7(4 bytes), where 'i' is an integer.
> 
> That is, (64 * i) + 4 - (64 * i) + 7 == +11 bytes offset always??
That's (64 * i) + 4  ->  (64 * i) + 7, namely, 4 bytes starting from
offset 4. Sorry I didn't make it clear.

> 
> Check out the data before and after TX; you can just checksum it.
> That will let you verify that it was OK on TX.  Do the same kind
I didn't do the check on my laptop which runs linux-2.6.18-7. Because
I don't think the problem is at the laptop end.

> 
> > I am really confused. I have checked the skb and urb associated with
> > the ACL Packet. And they both looks fine(content correct). So where
> > could the problem lies in? Has anyone have had such a problem before?
> > Any clue or hints are welcome!
> > 
> > Is this an known bug of OHCI HC driver usb-ohci in kernel 2.4.21? What
> > makes me more confused is that the Usb Storage Disk works great on the
> > embedded system.
> 
> If you're asking about support for USB in 2.4, or ARM on 2.4, you're
> pretty much on your own (unless you have a contract with some vendor
> to support you).  You're asking for support for _both_ of those, as
> well as Bluetooth ... all of which adds up to your being really unlikely
> to get any useful answers from the Linux community.  (Except via paid
> support contracts.)
> 
> The OHCI driver has been seriously reworked since 2.4, in part to get
> rid of lots of little problems that slower CPUs (like ARM) were very
> good at turning up.  The 2.6 OHCI code is pretty solid, and works on
> a surprisingly large variety of silicon implementations.
I know that 2.4.21 is pretty old. But the only kernels the vendor(Cirrus)
support are 2.4.21 and 2.6.8-1. I also tried 2.6.8-1, which also
failed, and the problem is exactly the same one.

> 
> > I'm using linux-2.4.21 with patch-linux-2.4.21-mh10 and a cirrus edb9312
> > embedded arm platform which has a OHCI-Compatible USB Host Controller.
> > The bluetooth dongle is a CSR one which works normally on my laptop
> > PC.
> 
> Try upgrading to Linux 2.6.20-rc, and see if that changes anything.
> 
> Don't ask for support for any Linux-ARM 2.4 kernel and expect anything
> more than a pointer to the FAQ that says "upgrade to 2.6 and try again".
> It's been a few years since starting new projects on 2.4 kernels was a
> good idea.
Thank you for your time though. 

> 
> - Dave
> 
-------------------------

-- 
Q:      What do monsters eat?
A:      Things.

Q:      What do monsters drink?
A:      Coke.  (Because Things go better with Coke.)

-------------------------------------------------------------------------
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
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to