[PATCH 0/9] crypto: caam - Add RTA descriptor creation library

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch set adds Run Time Assembler (RTA) SEC descriptor library.

The main reason of replacing incumbent "inline append" is
to have a single code base both for user space and kernel space.

Patches are based on latest cryptodev, but with the following on top:
[PATCH 00/10] CAAM - DMA API fixes
http://www.mail-archive.com/linux-crypto@xxxxxxxxxxxxxxx/msg11381.html
[PATCH] crypto: caam - set DK (Decrypt Key) bit only for AES accelerator
www.mail-archive.com/linux-crypto@xxxxxxxxxxxxxxx/msg11392.html

Patches 01-04 are fixes, clean-ups.

Patch 05 adds the RTA library.

Patch 06 rewrites "inline append" descriptors using RTA.
Descriptors (hex dumps) were tested to be bit-exact,
with a few exceptions (see commit message).

Patch 07 removes "inline append".

Patch 08 refactors code that generates the descriptors,
to make code more comprehensible and maintainable.

Patch 09 adds support for generating kernel-doc for RTA.
It depends on upstream (torvalds/linux.git) commit
cbb4d3e6510b99522719c5ef0cd0482886a324c0
("scripts/kernel-doc: handle object-like macros")

Thanks,
Horia

Horia Geanta (9):
  crypto: caam - completely remove error propagation handling
  crypto: caam - desc.h fixes
  crypto: caam - code cleanup
  crypto: caam - move sec4_sg_entry to sg_sw_sec4.h
  crypto: caam - add Run Time Library (RTA)
  crypto: caam - use RTA instead of inline append
  crypto: caam - completely remove inline append
  crypto: caam - refactor descriptor creation
  crypto: caam - add Run Time Library (RTA) docbook

 Documentation/DocBook/Makefile                     |    3 +-
 Documentation/DocBook/rta-api.tmpl                 |  245 ++
 Documentation/DocBook/rta/.gitignore               |    1 +
 Documentation/DocBook/rta/Makefile                 |    5 +
 Documentation/DocBook/rta/rta_arch.svg             |  381 +++
 drivers/crypto/caam/Makefile                       |    4 +-
 drivers/crypto/caam/caamalg.c                      |  850 ++++---
 drivers/crypto/caam/caamhash.c                     |  550 ++---
 drivers/crypto/caam/caamrng.c                      |   53 +-
 drivers/crypto/caam/compat.h                       |    1 +
 drivers/crypto/caam/ctrl.c                         |   98 +-
 drivers/crypto/caam/ctrl.h                         |    2 +-
 drivers/crypto/caam/desc.h                         | 1621 -------------
 drivers/crypto/caam/desc_constr.h                  |  388 ---
 drivers/crypto/caam/error.c                        |    7 +-
 drivers/crypto/caam/flib/desc.h                    | 2541 ++++++++++++++++++++
 drivers/crypto/caam/flib/desc/common.h             |   39 +
 drivers/crypto/caam/flib/desc/jobdesc.h            |   75 +
 drivers/crypto/caam/flib/rta.h                     |  926 +++++++
 drivers/crypto/caam/flib/rta/fifo_load_store_cmd.h |  319 +++
 drivers/crypto/caam/flib/rta/header_cmd.h          |  209 ++
 drivers/crypto/caam/flib/rta/jump_cmd.h            |  181 ++
 drivers/crypto/caam/flib/rta/key_cmd.h             |  192 ++
 drivers/crypto/caam/flib/rta/load_cmd.h            |  308 +++
 drivers/crypto/caam/flib/rta/math_cmd.h            |  388 +++
 drivers/crypto/caam/flib/rta/move_cmd.h            |  408 ++++
 drivers/crypto/caam/flib/rta/nfifo_cmd.h           |  164 ++
 drivers/crypto/caam/flib/rta/operation_cmd.h       |  545 +++++
 drivers/crypto/caam/flib/rta/protocol_cmd.h        |  595 +++++
 drivers/crypto/caam/flib/rta/sec_run_time_asm.h    |  755 ++++++
 drivers/crypto/caam/flib/rta/seq_in_out_ptr_cmd.h  |  168 ++
 drivers/crypto/caam/flib/rta/signature_cmd.h       |   36 +
 drivers/crypto/caam/flib/rta/store_cmd.h           |  156 ++
 drivers/crypto/caam/jr.c                           |    6 +-
 drivers/crypto/caam/key_gen.c                      |   36 +-
 drivers/crypto/caam/key_gen.h                      |    2 +-
 drivers/crypto/caam/pdb.h                          |  402 ----
 drivers/crypto/caam/sg_sw_sec4.h                   |   12 +-
 38 files changed, 9511 insertions(+), 3161 deletions(-)
 create mode 100644 Documentation/DocBook/rta-api.tmpl
 create mode 100644 Documentation/DocBook/rta/.gitignore
 create mode 100644 Documentation/DocBook/rta/Makefile
 create mode 100644 Documentation/DocBook/rta/rta_arch.svg
 delete mode 100644 drivers/crypto/caam/desc.h
 delete mode 100644 drivers/crypto/caam/desc_constr.h
 create mode 100644 drivers/crypto/caam/flib/desc.h
 create mode 100644 drivers/crypto/caam/flib/desc/common.h
 create mode 100644 drivers/crypto/caam/flib/desc/jobdesc.h
 create mode 100644 drivers/crypto/caam/flib/rta.h
 create mode 100644 drivers/crypto/caam/flib/rta/fifo_load_store_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/header_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/jump_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/key_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/load_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/math_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/move_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/nfifo_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/operation_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/protocol_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/sec_run_time_asm.h
 create mode 100644 drivers/crypto/caam/flib/rta/seq_in_out_ptr_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/signature_cmd.h
 create mode 100644 drivers/crypto/caam/flib/rta/store_cmd.h
 delete mode 100644 drivers/crypto/caam/pdb.h

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]

  Powered by Linux