[v4,0/6] enable CAAM's HWRNG as default
mbox series

Message ID 20191121155554.1227-1-andrew.smirnov@gmail.com
Headers show
Series
  • enable CAAM's HWRNG as default
Related show

Message

Andrey Smirnov Nov. 21, 2019, 3:55 p.m. UTC
Everyone:

This series is a continuation of original [discussion]. I don't know
if what's in the series is enough to use CAAMs HWRNG system wide, but
I am hoping that with enough iterations and feedback it will be.

Changes since [v1]:

    - Original hw_random replaced with the one using output of TRNG directly

    - SEC4 DRNG IP block exposed via crypto API

    - Small fix regarding use of GFP_DMA added to the series

Chagnes since [v2]:

    - msleep in polling loop to avoid wasting CPU cycles

    - caam_trng_read() bails out early if 'wait' is set to 'false'

    - fixed typo in ZII's name

Changes since [v3]:

    - DRNG's .cra_name is now "stdrng"

    - collected Reviewd-by tag from Lucas

    - typo fixes in commit messages of the series

Feedback is welcome!

Thanks,
Andrey Smirnov

[discussion] https://patchwork.kernel.org/patch/9850669/
[v1] https://lore.kernel.org/lkml/20191029162916.26579-1-andrew.smirnov@gmail.com
[v2] https://lore.kernel.org/lkml/20191118153843.28136-1-andrew.smirnov@gmail.com
[v3] https://lore.kernel.org/lkml/20191120165341.32669-1-andrew.smirnov@gmail.com

Andrey Smirnov (6):
  crypto: caam - RNG4 TRNG errata
  crypto: caam - enable prediction resistance in HRWNG
  crypto: caam - allocate RNG instantiation descriptor with GFP_DMA
  crypto: caam - move RNG presence check into a shared function
  crypto: caam - replace DRNG with TRNG for use with hw_random
  crypto: caam - expose SEC4 DRNG via crypto RNG API

 drivers/crypto/caam/Kconfig   |  15 +-
 drivers/crypto/caam/Makefile  |   3 +-
 drivers/crypto/caam/caamrng.c | 358 ----------------------------------
 drivers/crypto/caam/ctrl.c    |  29 ++-
 drivers/crypto/caam/desc.h    |   2 +
 drivers/crypto/caam/drng.c    | 175 +++++++++++++++++
 drivers/crypto/caam/intern.h  |  32 ++-
 drivers/crypto/caam/jr.c      |   3 +-
 drivers/crypto/caam/regs.h    |  14 +-
 drivers/crypto/caam/trng.c    |  89 +++++++++
 10 files changed, 338 insertions(+), 382 deletions(-)
 delete mode 100644 drivers/crypto/caam/caamrng.c
 create mode 100644 drivers/crypto/caam/drng.c
 create mode 100644 drivers/crypto/caam/trng.c

Comments

Chris Healy Nov. 23, 2019, 3:29 p.m. UTC | #1
Tested-by: Chris Healy <cphealy@gmail.com>

On Thu, Nov 21, 2019 at 7:56 AM Andrey Smirnov <andrew.smirnov@gmail.com> wrote:
>
> Everyone:
>
> This series is a continuation of original [discussion]. I don't know
> if what's in the series is enough to use CAAMs HWRNG system wide, but
> I am hoping that with enough iterations and feedback it will be.
>
> Changes since [v1]:
>
>     - Original hw_random replaced with the one using output of TRNG directly
>
>     - SEC4 DRNG IP block exposed via crypto API
>
>     - Small fix regarding use of GFP_DMA added to the series
>
> Chagnes since [v2]:
>
>     - msleep in polling loop to avoid wasting CPU cycles
>
>     - caam_trng_read() bails out early if 'wait' is set to 'false'
>
>     - fixed typo in ZII's name
>
> Changes since [v3]:
>
>     - DRNG's .cra_name is now "stdrng"
>
>     - collected Reviewd-by tag from Lucas
>
>     - typo fixes in commit messages of the series
>
> Feedback is welcome!
>
> Thanks,
> Andrey Smirnov
>
> [discussion] https://patchwork.kernel.org/patch/9850669/
> [v1] https://lore.kernel.org/lkml/20191029162916.26579-1-andrew.smirnov@gmail.com
> [v2] https://lore.kernel.org/lkml/20191118153843.28136-1-andrew.smirnov@gmail.com
> [v3] https://lore.kernel.org/lkml/20191120165341.32669-1-andrew.smirnov@gmail.com
>
> Andrey Smirnov (6):
>   crypto: caam - RNG4 TRNG errata
>   crypto: caam - enable prediction resistance in HRWNG
>   crypto: caam - allocate RNG instantiation descriptor with GFP_DMA
>   crypto: caam - move RNG presence check into a shared function
>   crypto: caam - replace DRNG with TRNG for use with hw_random
>   crypto: caam - expose SEC4 DRNG via crypto RNG API
>
>  drivers/crypto/caam/Kconfig   |  15 +-
>  drivers/crypto/caam/Makefile  |   3 +-
>  drivers/crypto/caam/caamrng.c | 358 ----------------------------------
>  drivers/crypto/caam/ctrl.c    |  29 ++-
>  drivers/crypto/caam/desc.h    |   2 +
>  drivers/crypto/caam/drng.c    | 175 +++++++++++++++++
>  drivers/crypto/caam/intern.h  |  32 ++-
>  drivers/crypto/caam/jr.c      |   3 +-
>  drivers/crypto/caam/regs.h    |  14 +-
>  drivers/crypto/caam/trng.c    |  89 +++++++++
>  10 files changed, 338 insertions(+), 382 deletions(-)
>  delete mode 100644 drivers/crypto/caam/caamrng.c
>  create mode 100644 drivers/crypto/caam/drng.c
>  create mode 100644 drivers/crypto/caam/trng.c
>
> --
> 2.21.0
>