1. 16 Mar, 2018 3 commits
    • Vladimir Zapolskiy's avatar
      dt-bindings: rng: Document Freescale i.MX21 and i.MX31 RNGA compatibles · 9885b1bd
      Vladimir Zapolskiy authored
      Freescale i.MX21 and i.MX31 SoCs contain a Random Number Generator
      Accelerator module (RNGA), which is replaced by RNGB and RNGC modules
      on later i.MX SoC series, the change adds a new compatible property
      to describe the controller.
      
      Since all versions of Freescale RNG modules are legacy, apparently
      the documentation file has no more potential for further extensions,
      nevertheless generalize it by removing explicit RNGC specifics.
      Signed-off-by: default avatarVladimir Zapolskiy <vz@mleia.com>
      Reviewed-by: default avatarRob Herring <robh@kernel.org>
      Reviewed-by: default avatarFabio Estevam <fabio.estevam@nxp.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      9885b1bd
    • Eric Biggers's avatar
      crypto: arm64/speck - add NEON-accelerated implementation of Speck-XTS · 91a2abb7
      Eric Biggers authored
      Add a NEON-accelerated implementation of Speck128-XTS and Speck64-XTS
      for ARM64.  This is ported from the 32-bit version.  It may be useful on
      devices with 64-bit ARM CPUs that don't have the Cryptography
      Extensions, so cannot do AES efficiently -- e.g. the Cortex-A53
      processor on the Raspberry Pi 3.
      
      It generally works the same way as the 32-bit version, but there are
      some slight differences due to the different instructions, registers,
      and syntax available in ARM64 vs. in ARM32.  For example, in the 64-bit
      version there are enough registers to hold the XTS tweaks for each
      128-byte chunk, so they don't need to be saved on the stack.
      
      Benchmarks on a Raspberry Pi 3 running a 64-bit kernel:
      
         Algorithm                              Encryption     Decryption
         ---------                              ----------     ----------
         Speck64/128-XTS (NEON)                 92.2 MB/s      92.2 MB/s
         Speck128/256-XTS (NEON)                75.0 MB/s      75.0 MB/s
         Speck128/256-XTS (generic)             47.4 MB/s      35.6 MB/s
         AES-128-XTS (NEON bit-sliced)          33.4 MB/s      29.6 MB/s
         AES-256-XTS (NEON bit-sliced)          24.6 MB/s      21.7 MB/s
      
      The code performs well on higher-end ARM64 processors as well, though
      such processors tend to have the Crypto Extensions which make AES
      preferred.  For example, here are the same benchmarks run on a HiKey960
      (with CPU affinity set for the A73 cores), with the Crypto Extensions
      implementation of AES-256-XTS added:
      
         Algorithm                              Encryption     Decryption
         ---------                              -----------    -----------
         AES-256-XTS (Crypto Extensions)        1273.3 MB/s    1274.7 MB/s
         Speck64/128-XTS (NEON)                  359.8 MB/s     348.0 MB/s
         Speck128/256-XTS (NEON)                 292.5 MB/s     286.1 MB/s
         Speck128/256-XTS (generic)              186.3 MB/s     181.8 MB/s
         AES-128-XTS (NEON bit-sliced)           142.0 MB/s     124.3 MB/s
         AES-256-XTS (NEON bit-sliced)           104.7 MB/s      91.1 MB/s
      Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      91a2abb7
    • Markus Elfring's avatar
      crypto: ccp - Use memdup_user() rather than duplicating its implementation · 6c51dddd
      Markus Elfring authored
      Reuse existing functionality from memdup_user() instead of keeping
      duplicate source code.
      
      This issue was detected by using the Coccinelle software.
      Signed-off-by: default avatarMarkus Elfring <elfring@users.sourceforge.net>
      Reviewed-by: default avatarBrijesh Singh <brijesh.singh@amd.com>
      Acked-by: default avatarGary R Hook <gary.hook@amd.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      6c51dddd
  2. 09 Mar, 2018 23 commits
  3. 02 Mar, 2018 14 commits