|
|
Subscribe / Log in / New account

crypto: Accelerated AES/GCM stitched implementation

From:  Danny Tsen <dtsen-AT-linux.ibm.com>
To:  linux-crypto-AT-vger.kernel.org
Subject:  [PATCH v3 0/6] crypto: Accelerated AES/GCM stitched implementation
Date:  Fri, 17 Feb 2023 11:17:59 -0500
Message-ID:  <20230217161805.236319-1-dtsen@linux.ibm.com>
Cc:  herbert-AT-gondor.apana.org.au, leitao-AT-debian.org, nayna-AT-linux.ibm.com, appro-AT-cryptogams.org, linux-kernel-AT-vger.kernel.org, ltcgcw-AT-linux.vnet.ibm.com, dtsen-AT-us.ibm.com, Danny Tsen <dtsen-AT-linux.ibm.com>
Archive-link:  Article

This patch series enable an accelerated AES/GCM stitched implementation for
Power10+ CPU(ppc64le).  This module supports AEAD algorithm.  The stitched
implementation provides 3.5X+ better performance than the baseline.

This patch has been tested with the kernel crypto module tcrypt.ko and has
passed the selftest.  The patch is also tested with
CONFIG_CRYPTO_MANAGER_EXTRA_TESTS enabled.

Danny Tsen (6):
  Update Kconfig and Makefile.
  Glue code for AES/GCM stitched implementation.
  An accelerated AES/GCM stitched implementation.
  Supporting functions for AES.
  Supporting functions for ghash.
  A perl script to process PowerPC assembler source.

 arch/powerpc/crypto/Kconfig            |   11 +
 arch/powerpc/crypto/Makefile           |   13 +
 arch/powerpc/crypto/aesp8-ppc.pl       | 3846 ++++++++++++++++++++++++
 arch/powerpc/crypto/ghashp8-ppc.pl     |  370 +++
 arch/powerpc/crypto/p10-aes-gcm-glue.c |  345 +++
 arch/powerpc/crypto/p10_aes_gcm.S      | 1521 ++++++++++
 arch/powerpc/crypto/ppc-xlate.pl       |  229 ++
 7 files changed, 6335 insertions(+)
 create mode 100644 arch/powerpc/crypto/aesp8-ppc.pl
 create mode 100644 arch/powerpc/crypto/ghashp8-ppc.pl
 create mode 100644 arch/powerpc/crypto/p10-aes-gcm-glue.c
 create mode 100644 arch/powerpc/crypto/p10_aes_gcm.S
 create mode 100644 arch/powerpc/crypto/ppc-xlate.pl

-- 
2.31.1



Copyright © 2023, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds