[RFC PATCH 00/10] crypto: caam - add DPAA2 (DPSECI) driver

Horia Geantă horia.geanta at nxp.com
Thu Aug 10 10:42:43 PDT 2017


Hi,

This patch set adds the CAAM crypto engine driver for DPAA2
(Data Path Acceleration Architecture v2) found on ARMv8-based SoCs
like LS1088A, LS2088A.

Driver consists of:
-DPSECI (Data Path SEC Interface) backend - low-level API that allows
to manage DPSECI devices (DPAA2 objects) that sit on
the Management Complex (MC) fsl-mc bus
-algorithms frontend - AEAD and ablkcipher algorithms implementation

Patches 1-4 include DPIO object dependencies.
I am aware that DPIO is currently in staging, however I don't consider
these to be a large feature set. Anyhow, please let me know if going
with the patches through staging is acceptable.

Patches 5-9 are the core of the patch set, adding the driver.
For symmetric encryption the legacy ablkcipher interface is used; the
plan is to convert to skcipher all CAAM frontends at once at a certain
point in time.

Patch 10 enables driver on arm64. It will be built only if dependency
on DPIO (CONFIG_FSL_MC_DPIO) is satisfied.

Thanks,
Horia

Horia Geantă (9):
  staging: fsl-mc: dpio: add frame list format support
  staging: fsl-mc: dpio: add congestion notification support
  staging: fsl-dpaa2/eth: move generic FD defines to DPIO
  crypto: caam/qi - prepare for gcm(aes) support
  crypto: caam - add DPAA2-CAAM (DPSECI) backend API
  crypto: caam - add Queue Interface v2 error codes
  crypto: caam/qi2 - add DPAA2-CAAM driver
  crypto: caam/qi2 - add ablkcipher algorithms
  arm64: defconfig: enable CAAM crypto engine on QorIQ DPAA2 SoCs

Radu Alexe (1):
  staging: fsl-mc: dpio: add order preservation support

 arch/arm64/configs/defconfig                   |    1 +
 drivers/crypto/Makefile                        |    2 +-
 drivers/crypto/caam/Kconfig                    |   57 +-
 drivers/crypto/caam/Makefile                   |    9 +-
 drivers/crypto/caam/caamalg.c                  |   19 +-
 drivers/crypto/caam/caamalg_desc.c             |  165 +-
 drivers/crypto/caam/caamalg_desc.h             |   24 +-
 drivers/crypto/caam/caamalg_qi2.c              | 3949 ++++++++++++++++++++++++
 drivers/crypto/caam/caamalg_qi2.h              |  243 ++
 drivers/crypto/caam/compat.h                   |    1 +
 drivers/crypto/caam/dpseci.c                   |  858 +++++
 drivers/crypto/caam/dpseci.h                   |  395 +++
 drivers/crypto/caam/dpseci_cmd.h               |  261 ++
 drivers/crypto/caam/error.c                    |   75 +-
 drivers/crypto/caam/error.h                    |    6 +-
 drivers/crypto/caam/key_gen.c                  |   30 -
 drivers/crypto/caam/key_gen.h                  |   30 +
 drivers/crypto/caam/regs.h                     |    2 +
 drivers/staging/fsl-dpaa2/ethernet/dpaa2-eth.c |    8 +-
 drivers/staging/fsl-dpaa2/ethernet/dpaa2-eth.h |   19 +-
 drivers/staging/fsl-mc/include/dpaa2-fd.h      |  255 ++
 drivers/staging/fsl-mc/include/dpaa2-io.h      |   43 +
 drivers/staging/fsl-mc/include/dpopr.h         |  110 +
 23 files changed, 6463 insertions(+), 99 deletions(-)
 create mode 100644 drivers/crypto/caam/caamalg_qi2.c
 create mode 100644 drivers/crypto/caam/caamalg_qi2.h
 create mode 100644 drivers/crypto/caam/dpseci.c
 create mode 100644 drivers/crypto/caam/dpseci.h
 create mode 100644 drivers/crypto/caam/dpseci_cmd.h
 create mode 100644 drivers/staging/fsl-mc/include/dpopr.h

-- 
2.12.0.264.gd6db3f216544




More information about the linux-arm-kernel mailing list