USB Smart card reader/writer problem

Hans Petter Selasky hselasky at c2i.net
Mon Mar 10 16:47:49 UTC 2008


On Monday 10 March 2008, Vladimir Terziev wrote:
> 	Hi,
>
> 	thanks, but i thought there is some userland-based solution ...
>
> 	If i remove the "clear stall" command from the kernel, how will this
> affect the other USB devices ? Is there a guarantee they will continue to
> function as normal  ?

You might loose an USB packet if the Data-toggle is wrong.

--HPS

>
> 		Vladimir
>
>
> On Fri, 7 Mar 2008 18:55:46 +0100
>
> Hans Petter Selasky <hselasky at c2i.net> wrote:
> > Hi,
> >
> > You could search in /sys/dev/usb for xxx_pipe_open() or something like
> > that, and remove the clear stall command from that function and the
> > recompile your kernel and modules.
> >
> > --HPS
> >
> > On Friday 07 March 2008, Vladimir Terziev wrote:
> > > On Thu, 6 Mar 2008 18:07:44 +0100
> > >
> > > Hans Petter Selasky <hselasky at c2i.net> wrote:
> > > > On Thursday 06 March 2008, Vladimir Terziev wrote:
> > > > > 	Hi,
> > > > >
> > > > > 	i have ACS ACR38T Smart card reader/write device (idVendor=0x072f,
> > > > > idProduct=0x90cc), which is an USB stick. I try to make it to work
> > > > > under FreeBSD (trys have been done on 5.4, 5.5 and 6.2).
> > > > >
> > > > > 	The device has 3 endpoints -- interrupt-in, configured as
> > > > > /dev/ugenX.1 and bulk-in/bulk-out, configured as /dev/ugenX.2.
> > > > >
> > > > > 	Neither the driver from openct-0.6.14 port nor the driver from
> > > > > ccid-1.3.5 port work for the device.
> > > > >
> > > > > 	The communication with the device gets stuck on BULK-OUT
> > > > > operations. write(2) calls to /dev/ugenX.2 hang forever despite the
> > > > > timeout set with USB_SET_TIMEOUT.
> > > > >
> > > > > 	The device has been tested to work under Windoze, so as general,
> > > > > it's not broken, but just irresponsive.
> > > > >
> > > > > 	Could someone give me some clues about the nature of the problem ?
> > > > >
> > > > > 	Thanks in advance!
> > > > >
> > > > > 		Vladimir
> > > >
> > > > Hi,
> > > >
> > > > Some USB devices have problems with Clear Stall. FreeBSD usually
> > > > clears the stall on the endpoints before starting to use them. Some
> > > > devices empty the fifo when receiving this clear stall, and does not
> > > > requeue the data. That is why your device most likely does not work.
> > > >
> > > > --HPS
> > >
> > > Is there something i could do in order to workaround such a behaviour ?
> > >
> > > 	Vladimir




More information about the freebsd-usb mailing list