I agree that the license is an issue. Having GPL or LGPL code in EDK2 risks 
implementations that use this code. Even if an implementation choses not to 
carry this specific driver in binary format, just having the GPL source in the 
same tree is a risk. What if developers copy fragments of code from the GPL 
licensed driver and use in another module in the tree that is BSD licensed. 
Developeers may not pay attention to the license and its implications since 
EDK2 so far has used only BSD or BSD-like license.



-----Original Message-----
From: Tian, Feng [feng.t...@intel.com]
Received: Wednesday, 10 Jun 2015, 9:52PM
To: edk2-devel@lists.sourceforge.net [edk2-devel@lists.sourceforge.net]
Subject: Re: [edk2] [PATCH 0/4] Add an implementation of 
EFI_SMART_CARD_READER_PROTOCOL

Ludovic,

The license issue is the biggest concern. EDKII project is BSD license, but 
your proposed patch 1 is using LGPL license which may corrupt EDKII project.

Thanks
Feng

-----Original Message-----
From: Ludovic Rousseau [mailto:ludovic.rouss...@gmail.com]
Sent: Thursday, June 11, 2015 02:28
To: edk2-devel@lists.sourceforge.net
Cc: Ludovic Rousseau
Subject: [edk2] [PATCH 0/4] Add an implementation of 
EFI_SMART_CARD_READER_PROTOCOL

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

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

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

Reply via email to