From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web09.3166.1649831080670201284 for ; Tue, 12 Apr 2022 23:24:41 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=R2K6oaoF; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: yi1.li@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1649831080; x=1681367080; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=I1VDIbQNGnsf9TBEdZlRt1Q2gVEmrkWJsIEq1wcjnGs=; b=R2K6oaoFrkM/kuwdbAlzVLXRbXuSZlrkAieLwxsmwM3wpLSXoqancQ1R ojnifBZXuLodb7vqaUJXGVYLz4trrQo4QsXkAMpHESpHBucg21Kjp1c7F QOtdz4ku54zY9m6tnleSCii3/6LOgQmmKwEa3nNeKd8gotoymImnjDiUi GDymWJ9B8krayO68M9+g4bbLOF0YDDoCA33K6TJ+ZWqihJFcF9mtjylQ8 SxJXddTIMAsBANsQM5Zynh4s9EvgVjZSG/5iy6eSv8+uANuVSBRckCrpy kKXAhp1MNRyHkqHaWmk1d2eBKtspqpMCSbtzfIEj8XgRspcHJIMqAWkLQ g==; X-IronPort-AV: E=McAfee;i="6400,9594,10315"; a="323030834" X-IronPort-AV: E=Sophos;i="5.90,256,1643702400"; d="scan'208";a="323030834" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Apr 2022 23:24:39 -0700 X-IronPort-AV: E=Sophos;i="5.90,256,1643702400"; d="scan'208";a="573133377" Received: from shwdejointd178.ccr.corp.intel.com ([10.239.153.103]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Apr 2022 23:24:38 -0700 From: "yi1 li" To: devel@edk2.groups.io Cc: yi1 li , Jiewen Yao , Jian J Wang Subject: [PATCH 0/3] CryptoPkg: Enable ECC in openssllib by a customize-able way Date: Wed, 13 Apr 2022 14:24:29 +0800 Message-Id: X-Mailer: git-send-email 2.33.0.windows.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit EDK2 has Enabled a feature which allow SOURCE section in INF files to use Pcd to customize source files list. If Pcd equal to FALSE, this file will not be compiled. https://github.com/tianocore/edk2/commit/ bf9230a9f3dde065c3c8b4175ccd32e44e8f0362 The patches add a customizable EC feature to CryptoPkg by this feature. If Pcd equal to FALSE(Diabled), the binary size will not be changed. Size diff(Bytes): | CryptDxe.efi | CryptPei.efi | CryptSmm.efi | Before | 815,616 | 540,544 | 563,712 | Diabled | 815,616 | 540,544 | 563,712 | Enabled | 1,008,352 | 721,408 | 744,832 | Cc: Jiewen Yao Cc: Jian J Wang Signed-off-by: yi1 li yi1 li (3): CryptoPkg: Add instrinsics to support building ECC on IA32 windows CryptoPkg: Reconfigure OpensslLib to add EC algorithms CryptoPkg: Make EC source file config-able CryptoPkg/CryptoPkg.dec | 4 + .../Library/Include/openssl/opensslconf.h | 10 +- .../Library/IntrinsicLib/Ia32/MathLlmul.asm | 98 +++++++++++++++++++ .../Library/IntrinsicLib/Ia32/MathLlshr.asm | 78 +++++++++++++++ .../Library/IntrinsicLib/IntrinsicLib.inf | 2 + CryptoPkg/Library/OpensslLib/OpensslLib.inf | 50 ++++++++++ .../Library/OpensslLib/OpensslLibCrypto.inf | 50 ++++++++++ CryptoPkg/Library/OpensslLib/process_files.pl | 2 +- 8 files changed, 289 insertions(+), 5 deletions(-) create mode 100644 CryptoPkg/Library/IntrinsicLib/Ia32/MathLlmul.asm create mode 100644 CryptoPkg/Library/IntrinsicLib/Ia32/MathLlshr.asm -- 2.33.0.windows.2