Re: USB Bulk transfer errors when trying to access external USB crytographic token
Ludovic Rousseau <[email protected]>
| Newsgroups | gmane.comp.lib.muscle |
|---|---|
| Message-ID | <CAGstE8DZv_+qvkDQVe1w38wd2wy+DNnoc7xzeRG-UFaCdFg+2w@mail.gmail.com> |
2013/11/17 Ricardo Scop <[email protected]>: > Hi all, > > While debugging an embedded system based on a Maxim MAX32590 secure ARM > processor, I find a lot of bulk transfer errors while trying to access an > external USB token using pcsc-lite, ccid driver and libusb. > > Kernel is a Maxim's customized version based on Linux version 2.6.36 with > contributions from linux-arm stable, and usb host controller driver is > ohci-hcd with glue driver (maximasp_ohci) by Maxim. > Pcsc-lite and ccid driver are also customized versions of pcsc-lite 1.7.4 > and ccid 1.4.4, customizations made by the vendor of the USB token, which is > a company called Watchdata Pte, from China. uSB token vendor also includes a > proprietary PKCS#11 API library in binary form, which is linked to > libpcsclite 1.7.4 and which my test application is using to communicate with > the external USB token. > > Whatchdata claims that their solution works well with 2 other ARM embedded > environments, both with newer kernel releases (3.2). So they basically gave > up helping me, despite all their customization. But at least they've sent me > their custom source codes for pcsc-lite 1.7.4 and ccid 1.4.4. I already had USB problems on ARM with an "old" Linux kernel. Using a newer version solved the problem. I recommend you to test with a newer Linux kernel, even if you do not have the drivers for everything you use. You will check if the problem has been solved or not in the kernel USB layer or not. Good luck, -- Dr. Ludovic Rousseau