While trying to fix Broadcom Corp CCID build-in reader (USB ID 
0A5C:5801) found Dell Latitude E6400 and others, I discovered that the 
device's advertised
second bit (0x2) of the dwFeatures flags of USB CCID descriptor causes 
problems for the openct ifd-ccid.c reader driver. The driver cannot 
power up a card.

The bit 0x2 is described in CCID USB document as "* 00000002h Automatic 
parameter configuration based on ATR data".

If I ignore that bit the ifd-ccid.c powers up the card. If I don't, the 
card doesn't power up.

The first difference between two cases is the set parameters command:

Fails with 0xFB:
  Req : 61 07 00 00 00 00 04 01 00 00 00 00 00 00 00 00 00
  Repl: 82 07 00 00 00 00 04 40 fb 00 00 00 00 00 00 00 00

Succeeds:
  Req : 61 07 00 00 00 00 04 01 00 00 96 10 00 45 00 fe 00
  Repl: 82 07 00 00 00 00 04 00 ff 00 96 10 00 45 00 fe 00

As you can see, the second request, which succeeds, is filled with 
parameters parsed from ATR, while the corresponding parameters are 
zeroes in the first request.

Also see http://www.natisbad.org/E4300/index.html .

I wonder what is the correct interpretation of the 0x02 bit of 
dwFeatures ? Thank you.
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to