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? > 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?? 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 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'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. - Dave ------------------------------------------------------------------------- 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