lkml.org 
[lkml]   [2018]   [Jan]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/7] Introduce Arm TrustZone CryptoCell
    Date
    Arm TrustZone CryptoCell is a security hardware IP that
    includes support for hardware based hash, digest, cipher
    and AEAD operations. This driver provides support for
    these as part of the Linux Crypto sub-system.

    The driver spent some time now in the staging tree being
    cleaned up and is now submitted for review for the
    purpose of moving into the crypto tree. The first patch
    therefore delete it's copy in the staging directory
    otherwise there is a build failure due to collisions
    with it's other copy there.

    Please note that the driver include some stubs for yet
    unexposed functionality (ivgen and secure HW keys).

    Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com>

    Gilad Ben-Yossef (7):
    staging: ccree: remove ccree from staging tree
    crypto: ccree: introduce CryptoCell driver
    crypto: ccree: add ablkcipher support
    crypto: ccree: add ahash support
    crypto: ccree: add AEAD support
    crypto: ccree: add FIPS support
    MAINTAINERS: update ccree entry

    MAINTAINERS | 5 +-
    drivers/crypto/Kconfig | 27 +
    drivers/crypto/Makefile | 1 +
    drivers/crypto/ccree/Makefile | 7 +
    .../ccree/ssi_aead.c => crypto/ccree/cc_aead.c} | 1120 ++++++------
    .../ccree/ssi_aead.h => crypto/ccree/cc_aead.h} | 56 +-
    .../ccree/cc_buffer_mgr.c} | 1085 ++++++------
    drivers/crypto/ccree/cc_buffer_mgr.h | 74 +
    .../ssi_cipher.c => crypto/ccree/cc_cipher.c} | 716 +++-----
    drivers/crypto/ccree/cc_cipher.h | 74 +
    drivers/{staging => crypto}/ccree/cc_crypto_ctx.h | 38 +-
    drivers/crypto/ccree/cc_debugfs.c | 101 ++
    drivers/crypto/ccree/cc_debugfs.h | 32 +
    drivers/crypto/ccree/cc_driver.c | 477 +++++
    drivers/crypto/ccree/cc_driver.h | 194 +++
    .../ccree/ssi_fips.c => crypto/ccree/cc_fips.c} | 44 +-
    drivers/crypto/ccree/cc_fips.h | 37 +
    .../ccree/ssi_hash.c => crypto/ccree/cc_hash.c} | 1818 +++++++++-----------
    drivers/crypto/ccree/cc_hash.h | 114 ++
    drivers/crypto/ccree/cc_host_regs.h | 142 ++
    .../{staging => crypto}/ccree/cc_hw_queue_defs.h | 40 +-
    .../ccree/ssi_ivgen.c => crypto/ccree/cc_ivgen.c} | 141 +-
    drivers/crypto/ccree/cc_ivgen.h | 55 +
    drivers/crypto/ccree/cc_kernel_regs.h | 167 ++
    drivers/{staging => crypto}/ccree/cc_lli_defs.h | 19 +-
    drivers/crypto/ccree/cc_pm.c | 123 ++
    drivers/crypto/ccree/cc_pm.h | 57 +
    drivers/crypto/ccree/cc_request_mgr.c | 714 ++++++++
    drivers/crypto/ccree/cc_request_mgr.h | 51 +
    .../ssi_sram_mgr.c => crypto/ccree/cc_sram_mgr.c} | 70 +-
    drivers/crypto/ccree/cc_sram_mgr.h | 65 +
    drivers/staging/Kconfig | 2 -
    drivers/staging/Makefile | 1 -
    .../devicetree/bindings/crypto/arm-cryptocell.txt | 27 -
    drivers/staging/ccree/Kconfig | 25 -
    drivers/staging/ccree/Makefile | 3 -
    drivers/staging/ccree/TODO | 30 -
    drivers/staging/ccree/dx_crys_kernel.h | 180 --
    drivers/staging/ccree/dx_host.h | 155 --
    drivers/staging/ccree/dx_reg_common.h | 26 -
    drivers/staging/ccree/hash_defs.h | 36 -
    drivers/staging/ccree/ssi_buffer_mgr.h | 91 -
    drivers/staging/ccree/ssi_cipher.h | 84 -
    drivers/staging/ccree/ssi_config.h | 36 -
    drivers/staging/ccree/ssi_driver.c | 538 ------
    drivers/staging/ccree/ssi_driver.h | 206 ---
    drivers/staging/ccree/ssi_fips.h | 49 -
    drivers/staging/ccree/ssi_hash.h | 103 --
    drivers/staging/ccree/ssi_ivgen.h | 71 -
    drivers/staging/ccree/ssi_pm.c | 145 --
    drivers/staging/ccree/ssi_pm.h | 43 -
    drivers/staging/ccree/ssi_request_mgr.c | 610 -------
    drivers/staging/ccree/ssi_request_mgr.h | 60 -
    drivers/staging/ccree/ssi_sram_mgr.h | 79 -
    drivers/staging/ccree/ssi_sysfs.c | 172 --
    drivers/staging/ccree/ssi_sysfs.h | 55 -
    56 files changed, 4706 insertions(+), 5785 deletions(-)
    create mode 100644 drivers/crypto/ccree/Makefile
    rename drivers/{staging/ccree/ssi_aead.c => crypto/ccree/cc_aead.c} (70%)
    rename drivers/{staging/ccree/ssi_aead.h => crypto/ccree/cc_aead.h} (64%)
    rename drivers/{staging/ccree/ssi_buffer_mgr.c => crypto/ccree/cc_buffer_mgr.c} (56%)
    create mode 100644 drivers/crypto/ccree/cc_buffer_mgr.h
    rename drivers/{staging/ccree/ssi_cipher.c => crypto/ccree/cc_cipher.c} (58%)
    create mode 100644 drivers/crypto/ccree/cc_cipher.h
    rename drivers/{staging => crypto}/ccree/cc_crypto_ctx.h (78%)
    create mode 100644 drivers/crypto/ccree/cc_debugfs.c
    create mode 100644 drivers/crypto/ccree/cc_debugfs.h
    create mode 100644 drivers/crypto/ccree/cc_driver.c
    create mode 100644 drivers/crypto/ccree/cc_driver.h
    rename drivers/{staging/ccree/ssi_fips.c => crypto/ccree/cc_fips.c} (61%)
    create mode 100644 drivers/crypto/ccree/cc_fips.h
    rename drivers/{staging/ccree/ssi_hash.c => crypto/ccree/cc_hash.c} (52%)
    create mode 100644 drivers/crypto/ccree/cc_hash.h
    create mode 100644 drivers/crypto/ccree/cc_host_regs.h
    rename drivers/{staging => crypto}/ccree/cc_hw_queue_defs.h (94%)
    rename drivers/{staging/ccree/ssi_ivgen.c => crypto/ccree/cc_ivgen.c} (62%)
    create mode 100644 drivers/crypto/ccree/cc_ivgen.h
    create mode 100644 drivers/crypto/ccree/cc_kernel_regs.h
    rename drivers/{staging => crypto}/ccree/cc_lli_defs.h (69%)
    create mode 100644 drivers/crypto/ccree/cc_pm.c
    create mode 100644 drivers/crypto/ccree/cc_pm.h
    create mode 100644 drivers/crypto/ccree/cc_request_mgr.c
    create mode 100644 drivers/crypto/ccree/cc_request_mgr.h
    rename drivers/{staging/ccree/ssi_sram_mgr.c => crypto/ccree/cc_sram_mgr.c} (50%)
    create mode 100644 drivers/crypto/ccree/cc_sram_mgr.h
    delete mode 100644 drivers/staging/ccree/Documentation/devicetree/bindings/crypto/arm-cryptocell.txt
    delete mode 100644 drivers/staging/ccree/Kconfig
    delete mode 100644 drivers/staging/ccree/Makefile
    delete mode 100644 drivers/staging/ccree/TODO
    delete mode 100644 drivers/staging/ccree/dx_crys_kernel.h
    delete mode 100644 drivers/staging/ccree/dx_host.h
    delete mode 100644 drivers/staging/ccree/dx_reg_common.h
    delete mode 100644 drivers/staging/ccree/hash_defs.h
    delete mode 100644 drivers/staging/ccree/ssi_buffer_mgr.h
    delete mode 100644 drivers/staging/ccree/ssi_cipher.h
    delete mode 100644 drivers/staging/ccree/ssi_config.h
    delete mode 100644 drivers/staging/ccree/ssi_driver.c
    delete mode 100644 drivers/staging/ccree/ssi_driver.h
    delete mode 100644 drivers/staging/ccree/ssi_fips.h
    delete mode 100644 drivers/staging/ccree/ssi_hash.h
    delete mode 100644 drivers/staging/ccree/ssi_ivgen.h
    delete mode 100644 drivers/staging/ccree/ssi_pm.c
    delete mode 100644 drivers/staging/ccree/ssi_pm.h
    delete mode 100644 drivers/staging/ccree/ssi_request_mgr.c
    delete mode 100644 drivers/staging/ccree/ssi_request_mgr.h
    delete mode 100644 drivers/staging/ccree/ssi_sram_mgr.h
    delete mode 100644 drivers/staging/ccree/ssi_sysfs.c
    delete mode 100644 drivers/staging/ccree/ssi_sysfs.h

    --
    2.7.4

    \
     
     \ /
      Last update: 2018-01-14 23:22    [W:6.154 / U:0.912 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site