All of lore.kernel.org
 help / color / mirror / Atom feed
* Stall due to babble when reading card ATR from CCID device using UHCI
@ 2011-11-03 10:04 Lenthamre Johan
  2011-11-04 21:21 ` Aleš Nesrsta
  0 siblings, 1 reply; 4+ messages in thread
From: Lenthamre Johan @ 2011-11-03 10:04 UTC (permalink / raw)
  To: Grub-devel

Hi,

When reading card ATR from a CCID device (RDR_to_PC_DataBlock), the bulk-in endpoint is stalled due to babble. I still get the complete ATR though. I've successfully issued other commands, such as PC_to_RDR_GetSlotStatus and read back the result ok. The reader is a 2.0 device plugged into a 1.1 controller using GRUB's UHCI driver. The TD status is 0x18500009; stall + babble. I am not really sure where to go from here or where to start looking. Any hints are appreciated.

Clear halt doesn't solve the issue.

BR

/Johan

---------------------------------------
Johan Lenthamre
Software Engineer
Command and Control Systems Division
Security and Defence Solutions
Telephone: +46 8 5808 4818
Mobile: +46 73 437 4818
johan.lenthamre@saabgroup.com 
Saab
Nettovägen 6
SE-175 88 Järfälla
www.saabgroup.com 
---------------------------------------
This e-mail is private and confidential between the sender and the addressee. In the event of misdirection, the recipient is prohibited from using, copying or disseminating it or any information in it. Please notify the above of any such misdirection.




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Stall due to babble when reading card ATR from CCID device using UHCI
  2011-11-03 10:04 Stall due to babble when reading card ATR from CCID device using UHCI Lenthamre Johan
@ 2011-11-04 21:21 ` Aleš Nesrsta
  2011-11-07 13:09   ` Lenthamre Johan
  0 siblings, 1 reply; 4+ messages in thread
From: Aleš Nesrsta @ 2011-11-04 21:21 UTC (permalink / raw)
  To: The development of GNU GRUB

Hi,

AFAIK, the babble is fatal bus error which should not normally occur, so
if You get it regularly, there is probably something wrong in protocol
data / parameters / request sent into device.
I expect that only reset of the device or some class-specific reset can
help in recovery. Try see into related CCID class specification or USB
1.1 specification for bubble recovery.
Unfortunately I don't know USB CCID class device protocol (and I have no
time to study it yet...), so I cannot help You more.

BR,
Ales

Lenthamre Johan píše v Čt 03. 11. 2011 v 10:04 +0000:
> Hi,
> 
> When reading card ATR from a CCID device (RDR_to_PC_DataBlock), the bulk-in endpoint is stalled due to babble. I still get the complete ATR though. I've successfully issued other commands, such as PC_to_RDR_GetSlotStatus and read back the result ok. The reader is a 2.0 device plugged into a 1.1 controller using GRUB's UHCI driver. The TD status is 0x18500009; stall + babble. I am not really sure where to go from here or where to start looking. Any hints are appreciated.
> 
> Clear halt doesn't solve the issue.
> 
> BR
> 
> /Johan
> 
> ---------------------------------------
> Johan Lenthamre
> Software Engineer
> Command and Control Systems Division
> Security and Defence Solutions
> Telephone: +46 8 5808 4818
> Mobile: +46 73 437 4818
> johan.lenthamre@saabgroup.com 
> Saab
> Nettovägen 6
> SE-175 88 Järfälla
> www.saabgroup.com 
> ---------------------------------------
> This e-mail is private and confidential between the sender and the addressee. In the event of misdirection, the recipient is prohibited from using, copying or disseminating it or any information in it. Please notify the above of any such misdirection.
> 
> 
> 
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
> 




^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: Stall due to babble when reading card ATR from CCID device using UHCI
  2011-11-04 21:21 ` Aleš Nesrsta
@ 2011-11-07 13:09   ` Lenthamre Johan
  2011-11-14 18:32     ` Aleš Nesrsta
  0 siblings, 1 reply; 4+ messages in thread
From: Lenthamre Johan @ 2011-11-07 13:09 UTC (permalink / raw)
  To: The development of GNU GRUB

Hi Ales,

I'm fairly new to USB at this lower level, and I realized that I used the wrong read API call. Since the ATR is of variable size I should've use the grub_usb_bulk_read_extended() call. Reading less resulted in babble and reading too much in a timeout. Using read_extended() worked fine.

Ales, I also downloaded your EHCI branch; any idea when/if it will support companion controllers?

Anyhow, thanks for your input!

Regards,

/Johan

-----Original Message-----
From: grub-devel-bounces+johan.lenthamre=saabgroup.com@gnu.org [mailto:grub-devel-bounces+johan.lenthamre=saabgroup.com@gnu.org] On Behalf Of Aleš Nesrsta
Sent: den 4 november 2011 22:21
To: The development of GNU GRUB
Subject: Re: Stall due to babble when reading card ATR from CCID device using UHCI

Hi,

AFAIK, the babble is fatal bus error which should not normally occur, so if You get it regularly, there is probably something wrong in protocol data / parameters / request sent into device.
I expect that only reset of the device or some class-specific reset can help in recovery. Try see into related CCID class specification or USB
1.1 specification for bubble recovery.
Unfortunately I don't know USB CCID class device protocol (and I have no time to study it yet...), so I cannot help You more.

BR,
Ales

Lenthamre Johan píše v Čt 03. 11. 2011 v 10:04 +0000:
> Hi,
> 
> When reading card ATR from a CCID device (RDR_to_PC_DataBlock), the bulk-in endpoint is stalled due to babble. I still get the complete ATR though. I've successfully issued other commands, such as PC_to_RDR_GetSlotStatus and read back the result ok. The reader is a 2.0 device plugged into a 1.1 controller using GRUB's UHCI driver. The TD status is 0x18500009; stall + babble. I am not really sure where to go from here or where to start looking. Any hints are appreciated.
> 
> Clear halt doesn't solve the issue.
> 
> BR
> 
> /Johan
> 
> ---------------------------------------
> Johan Lenthamre
> Software Engineer
> Command and Control Systems Division
> Security and Defence Solutions
> Telephone: +46 8 5808 4818
> Mobile: +46 73 437 4818
> johan.lenthamre@saabgroup.com
> Saab
> Nettovägen 6
> SE-175 88 Järfälla
> www.saabgroup.com
> ---------------------------------------
> This e-mail is private and confidential between the sender and the addressee. In the event of misdirection, the recipient is prohibited from using, copying or disseminating it or any information in it. Please notify the above of any such misdirection.
> 
> 
> 
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
> 



_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: Stall due to babble when reading card ATR from CCID device using UHCI
  2011-11-07 13:09   ` Lenthamre Johan
@ 2011-11-14 18:32     ` Aleš Nesrsta
  0 siblings, 0 replies; 4+ messages in thread
From: Aleš Nesrsta @ 2011-11-14 18:32 UTC (permalink / raw)
  To: The development of GNU GRUB

Hi Johan,

support of companion controllers should work, it is included in driver.

But You need to load both modules - for EHCI and OHCI/UHCI.
Also order of drivers loading can be critical, I suggest first to load
EHCI and then OHCI/UHCI. In fact, also reverse order should work - but
EHCI probably resets USB devices configured by OHCI/UHCI driver
It works on my computer - I have EHCI with UHCI companion controllers.

But because my knowledges (and HW for testing, and time etc. ...) are
very limited, there could be some reasons why companion drivers will not
work. So, if it will not work for You even if You load right
EHCI/companion driver combination, it will be interesting to find the
reason. In this case, for the first look try to send to me outputs of
"lspci -vvv" and "lsusb -vvv" (from Linux command line, not from
GRUB :-) ).

If You will play with EHCI driver, don't forget known problems of EHCI
drivers which are still not fixed (details see in little bit older post
in thread "[PATCH] EHCI driver - USB 2.0 support") - I am unfortunately
too busy for long time to maintain it, sorry.

Best regards
Ales


Lenthamre Johan píše v Po 07. 11. 2011 v 13:09 +0000:
> Hi Ales,
> 
> I'm fairly new to USB at this lower level, and I realized that I used the wrong read API call. Since the ATR is of variable size I should've use the grub_usb_bulk_read_extended() call. Reading less resulted in babble and reading too much in a timeout. Using read_extended() worked fine.
> 
> Ales, I also downloaded your EHCI branch; any idea when/if it will support companion controllers?
> 
> Anyhow, thanks for your input!
> 
> Regards,
> 
> /Johan
> 
> -----Original Message-----
> From: grub-devel-bounces+johan.lenthamre=saabgroup.com@gnu.org [mailto:grub-devel-bounces+johan.lenthamre=saabgroup.com@gnu.org] On Behalf Of Aleš Nesrsta
> Sent: den 4 november 2011 22:21
> To: The development of GNU GRUB
> Subject: Re: Stall due to babble when reading card ATR from CCID device using UHCI
> 
> Hi,
> 
> AFAIK, the babble is fatal bus error which should not normally occur, so if You get it regularly, there is probably something wrong in protocol data / parameters / request sent into device.
> I expect that only reset of the device or some class-specific reset can help in recovery. Try see into related CCID class specification or USB
> 1.1 specification for bubble recovery.
> Unfortunately I don't know USB CCID class device protocol (and I have no time to study it yet...), so I cannot help You more.
> 
> BR,
> Ales
> 
> Lenthamre Johan píše v Čt 03. 11. 2011 v 10:04 +0000:
> > Hi,
> > 
> > When reading card ATR from a CCID device (RDR_to_PC_DataBlock), the bulk-in endpoint is stalled due to babble. I still get the complete ATR though. I've successfully issued other commands, such as PC_to_RDR_GetSlotStatus and read back the result ok. The reader is a 2.0 device plugged into a 1.1 controller using GRUB's UHCI driver. The TD status is 0x18500009; stall + babble. I am not really sure where to go from here or where to start looking. Any hints are appreciated.
> > 
> > Clear halt doesn't solve the issue.
> > 
> > BR
> > 
> > /Johan
> > 
> > ---------------------------------------
> > Johan Lenthamre
> > Software Engineer
> > Command and Control Systems Division
> > Security and Defence Solutions
> > Telephone: +46 8 5808 4818
> > Mobile: +46 73 437 4818
> > johan.lenthamre@saabgroup.com
> > Saab
> > Nettovägen 6
> > SE-175 88 Järfälla
> > www.saabgroup.com
> > ---------------------------------------
> > This e-mail is private and confidential between the sender and the addressee. In the event of misdirection, the recipient is prohibited from using, copying or disseminating it or any information in it. Please notify the above of any such misdirection.
> > 
> > 
> > 
> > _______________________________________________
> > Grub-devel mailing list
> > Grub-devel@gnu.org
> > https://lists.gnu.org/mailman/listinfo/grub-devel
> > 
> 
> 
> 
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-11-14 18:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-03 10:04 Stall due to babble when reading card ATR from CCID device using UHCI Lenthamre Johan
2011-11-04 21:21 ` Aleš Nesrsta
2011-11-07 13:09   ` Lenthamre Johan
2011-11-14 18:32     ` Aleš Nesrsta

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.