[Pcsclite-cvs-commit] r6784 - trunk/Drivers/ccid/src

ludovic.rousseau at free.fr ludovic.rousseau at free.fr
Thu Oct 24 09:46:35 UTC 2013


Author: rousseau
Date: 2013-10-24 09:46:35 +0000 (Thu, 24 Oct 2013)
New Revision: 6784

Modified:
   trunk/Drivers/ccid/src/ccid_usb.c
   trunk/Drivers/ccid/src/ifdhandler.c
Log:
Add support of Gemalto GemCore SIM Pro firmware 2.0

The new firmware of the Gemalto GemCore SIM Pro removes a limitation of
the firmware 1.0. The 2 slots now supports the same data rates. The
second slot is no more limited to some values only.


Modified: trunk/Drivers/ccid/src/ccid_usb.c
===================================================================
--- trunk/Drivers/ccid/src/ccid_usb.c	2013-10-24 09:36:52 UTC (rev 6783)
+++ trunk/Drivers/ccid/src/ccid_usb.c	2013-10-24 09:46:35 UTC (rev 6784)
@@ -447,9 +447,12 @@
 						/* we reuse the same device
 						 * and the reader is multi-slot */
 						usbDevice[reader_index] = usbDevice[previous_reader_index];
-						/* the other slots do not have the same data rates */
+						/* The other slots of GemCore SIM Pro firmware
+						 * 1.0 do not have the same data rates.
+						 * Firmware 2.0 do not have this limitation */
 						if ((GEMCOREPOSPRO == readerID)
-							|| (GEMCORESIMPRO == readerID))
+							|| ((GEMCORESIMPRO == readerID)
+							&& (usbDevice[reader_index].ccid.IFD_bcdDevice < 0x0200)))
 						{
 							usbDevice[reader_index].ccid.arrayOfSupportedDataRates = SerialCustomDataRates;
 							usbDevice[reader_index].ccid.dwMaxDataRate = 125000;

Modified: trunk/Drivers/ccid/src/ifdhandler.c
===================================================================
--- trunk/Drivers/ccid/src/ifdhandler.c	2013-10-24 09:36:52 UTC (rev 6783)
+++ trunk/Drivers/ccid/src/ifdhandler.c	2013-10-24 09:46:35 UTC (rev 6784)
@@ -1709,8 +1709,11 @@
 
 	ccid_descriptor = get_ccid_descriptor(reader_index);
 
-	if (GEMCORESIMPRO == ccid_descriptor->readerID)
+	if ((GEMCORESIMPRO == ccid_descriptor->readerID)
+	     && (ccid_descriptor->IFD_bcdDevice < 0x0200))
 	{
+		/* GemCore SIM Pro firmware 2.00 and up features
+		 * a full independant second slot */
 		return_value = ccid_descriptor->dwSlotStatus;
 		goto end;
 	}




More information about the Pcsclite-cvs-commit mailing list