This patch serie provides an implementation for the
EFI_SMART_CARD_READER_PROTOCOL added in UEFI version 2.5.

It is a port of my CCID driver from Unix to UEFI. Only part of the code
has been specifically written for UEFI and edk2. Only this part of the
code follows the coding rules. The idea os to keep most of the code
common to edk2 and my original CCID driver so code is easy to backport
from one project to the other.

patch 1: are files from the libccid project [1], GNU LGLP v2.1
patch 2: are files from the pcsc-lite project [2], TianoCore
Contribution
Agreement 1.0
patch 3: are files specifically written for edk2, TianoCore Contribution
Agreement 1.0
patch 4: edit MdeModulePkg/MdeModulePkg.dsc to add the driver, TianoCore
Contribution Agreement 1.0

The code has been tested on a Dell E6430 with an internal Broadcom
smart card reader and also different external USB smart card readers.

[1] https://pcsclite.alioth.debian.org/ccid.html                                
[2] https://pcsclite.alioth.debian.org/pcsclite.html


Ludovic Rousseau (4):
  MdeModulePkg/SmartCardReader: Add files from the libccid project
  MdeModulePkg/SmartCardReader: Add files from pcsc-lite project
  MdeModulePkg/SmartCardReader: Implement Smart Card Reader Protocol
  MdeModulePkg: add SmartCardReader.inf

 MdeModulePkg/Library/SmartCardReader/CcidDriver.c  |  819 +++++++
 MdeModulePkg/Library/SmartCardReader/CcidDriver.h  |  154 ++
 .../Library/SmartCardReader/ComponentName.c        |  198 ++
 .../Library/SmartCardReader/ComponentName.h        |  128 ++
 .../Library/SmartCardReader/DriverBinding.h        |  211 ++
 MdeModulePkg/Library/SmartCardReader/License.txt   |   87 +
 .../Library/SmartCardReader/SmartCardReader.inf    |   97 +
 .../Library/SmartCardReader/SmartCardReader_impl.c |  453 ++++
 .../Library/SmartCardReader/SmartCardReader_impl.h |   94 +
 MdeModulePkg/Library/SmartCardReader/config.h      |   64 +
 MdeModulePkg/Library/SmartCardReader/debug.c       |   62 +
 MdeModulePkg/Library/SmartCardReader/debuglog.h    |   81 +
 MdeModulePkg/Library/SmartCardReader/ifdhandler.h  |  825 +++++++
 .../Library/SmartCardReader/libccid/ccid.c         |  659 ++++++
 .../Library/SmartCardReader/libccid/ccid.h         |  340 +++
 .../SmartCardReader/libccid/ccid_ifdhandler.h      |   63 +
 .../Library/SmartCardReader/libccid/ccid_uefi.c    |  470 ++++
 .../Library/SmartCardReader/libccid/ccid_uefi.h    |   46 +
 .../Library/SmartCardReader/libccid/commands.c     | 2294 ++++++++++++++++++++
 .../Library/SmartCardReader/libccid/commands.h     |   64 +
 .../Library/SmartCardReader/libccid/debug.c        |  157 ++
 .../Library/SmartCardReader/libccid/debug.h        |  100 +
 .../Library/SmartCardReader/libccid/defs.h         |  126 ++
 .../Library/SmartCardReader/libccid/ifdhandler.c   | 2265 +++++++++++++++++++
 .../Library/SmartCardReader/libccid/openct/LICENSE |   28 +
 .../Library/SmartCardReader/libccid/openct/README  |    7 +
 .../SmartCardReader/libccid/openct/buffer.c        |   73 +
 .../SmartCardReader/libccid/openct/buffer.h        |   36 +
 .../SmartCardReader/libccid/openct/checksum.c      |   95 +
 .../SmartCardReader/libccid/openct/checksum.h      |   37 +
 .../SmartCardReader/libccid/openct/proto-t1.c      |  800 +++++++
 .../SmartCardReader/libccid/openct/proto-t1.h      |   85 +
 .../SmartCardReader/libccid/towitoko/COPYING       |  505 +++++
 .../SmartCardReader/libccid/towitoko/README        |   14 +
 .../Library/SmartCardReader/libccid/towitoko/atr.c |  365 ++++
 .../Library/SmartCardReader/libccid/towitoko/atr.h |  111 +
 .../SmartCardReader/libccid/towitoko/defines.h     |   56 +
 .../Library/SmartCardReader/libccid/towitoko/pps.c |  136 ++
 .../Library/SmartCardReader/libccid/towitoko/pps.h |   71 +
 .../Library/SmartCardReader/libccid/utils.c        |   85 +
 .../Library/SmartCardReader/libccid/utils.h        |   33 +
 MdeModulePkg/Library/SmartCardReader/misc.h        |   88 +
 MdeModulePkg/Library/SmartCardReader/pcsclite.h    |   65 +
 MdeModulePkg/Library/SmartCardReader/reader.h      |  285 +++
 MdeModulePkg/Library/SmartCardReader/wintypes.h    |  120 +
 MdeModulePkg/MdeModulePkg.dsc                      |    1 +
 46 files changed, 12953 insertions(+)
 create mode 100644 MdeModulePkg/Library/SmartCardReader/CcidDriver.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/CcidDriver.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/ComponentName.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/ComponentName.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/DriverBinding.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/License.txt
 create mode 100644 MdeModulePkg/Library/SmartCardReader/SmartCardReader.inf
 create mode 100644 MdeModulePkg/Library/SmartCardReader/SmartCardReader_impl.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/SmartCardReader_impl.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/config.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/debug.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/debuglog.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/ifdhandler.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/ccid.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/ccid.h
 create mode 100644 
MdeModulePkg/Library/SmartCardReader/libccid/ccid_ifdhandler.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/ccid_uefi.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/ccid_uefi.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/commands.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/commands.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/debug.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/debug.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/defs.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/ifdhandler.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/openct/LICENSE
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/openct/README
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/openct/buffer.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/openct/buffer.h
 create mode 100644 
MdeModulePkg/Library/SmartCardReader/libccid/openct/checksum.c
 create mode 100644 
MdeModulePkg/Library/SmartCardReader/libccid/openct/checksum.h
 create mode 100644 
MdeModulePkg/Library/SmartCardReader/libccid/openct/proto-t1.c
 create mode 100644 
MdeModulePkg/Library/SmartCardReader/libccid/openct/proto-t1.h
 create mode 100644 
MdeModulePkg/Library/SmartCardReader/libccid/towitoko/COPYING
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/towitoko/README
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/towitoko/atr.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/towitoko/atr.h
 create mode 100644 
MdeModulePkg/Library/SmartCardReader/libccid/towitoko/defines.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/towitoko/pps.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/towitoko/pps.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/utils.c
 create mode 100644 MdeModulePkg/Library/SmartCardReader/libccid/utils.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/misc.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/pcsclite.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/reader.h
 create mode 100644 MdeModulePkg/Library/SmartCardReader/wintypes.h

-- 
2.1.4


------------------------------------------------------------------------------
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to