CCID descriptor statistics: bMaxCCIDBusySlots

Article from the serie "CCID descriptor statistics"

The bMaxCCIDBusySlots field is a number value from the CCID USB descriptor: Maximum number of slots which can be simultaneously busy.

If the CCID does not support queuing, it reports bMaxCCIDBusySlots equal to 01h; which means that the CCID will treat all commands synchronously.

bMaxCCIDBusySlots # %
1 251 98.82 %
0 1 0.39 %
2 1 0.39 %
5 1 0.39 %

The normal value for a CCID interface is 1.

The value 0 is bogus. If only 0 slot can be busy (used) then the reader can be used at all. This is the case of the Feitian Technologies FT SCR310 reader.

The value 2 is used by the COVADIS Auriga reader. This reader also declares 3 slots (bMaxSlotIndex: 0x02) so 2 slots (among 3) can be used at the same time.

The value 5 is used by Teridian Semiconductors TSC12xxFV.09. This reader has 5 slots (bMaxSlotIndex: 0x04). So all the 5 slots can be used at the same time.

My CCID driver do not use this value. Only one slot of a reader can be used at the same time. This may evolve but only few readers would benefit some this improvement.