Hi,

I am sorry, please ignore this email.
It was send by mistake.

Best
Sven

On Wed, Jul 08, 2020 at 05:06:05PM +0200, sven.auha...@voleatech.de wrote:
> From: Sven Auhagen <sven.auha...@voleatech.de>
> 
> ---
>  drivers/crypto/inside-secure/safexcel.h        | 1 +
>  drivers/crypto/inside-secure/safexcel_cipher.c | 6 +++++-
>  drivers/crypto/inside-secure/safexcel_hash.c   | 6 ++++++
>  3 files changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/crypto/inside-secure/safexcel.h 
> b/drivers/crypto/inside-secure/safexcel.h
> index a7ab1183a723..7341f047cb2f 100644
> --- a/drivers/crypto/inside-secure/safexcel.h
> +++ b/drivers/crypto/inside-secure/safexcel.h
> @@ -40,6 +40,7 @@
>  
>  /* Static configuration */
>  #define EIP197_DEFAULT_RING_SIZE             400
> +#define EIP197_DEFAULT_RING_ROTATE           50
>  #define EIP197_EMB_TOKENS                    4 /* Pad CD to 16 dwords */
>  #define EIP197_MAX_TOKENS                    16
>  #define EIP197_MAX_RINGS                     4
> diff --git a/drivers/crypto/inside-secure/safexcel_cipher.c 
> b/drivers/crypto/inside-secure/safexcel_cipher.c
> index 2018b7f3942d..2c4bda960ee6 100644
> --- a/drivers/crypto/inside-secure/safexcel_cipher.c
> +++ b/drivers/crypto/inside-secure/safexcel_cipher.c
> @@ -1218,7 +1218,11 @@ static int safexcel_queue_req(struct 
> crypto_async_request *base,
>  
>       ring = ctx->base.ring;
>  
> -     printk("Ring %d queue length %d\n", ring, priv->ring[ring].queue->qlen);
> +     // Rotate ring if full
> +     if (priv->ring[ring].queue.qlen > EIP197_DEFAULT_RING_ROTATE) {
> +             ctx->base.ring = safexcel_select_ring(priv);
> +             ring = ctx->base.ring;
> +     }
>  
>       spin_lock_bh(&priv->ring[ring].queue_lock);
>       ret = crypto_enqueue_request(&priv->ring[ring].queue, base);
> diff --git a/drivers/crypto/inside-secure/safexcel_hash.c 
> b/drivers/crypto/inside-secure/safexcel_hash.c
> index e1d65788bf41..55a573bbb3ae 100644
> --- a/drivers/crypto/inside-secure/safexcel_hash.c
> +++ b/drivers/crypto/inside-secure/safexcel_hash.c
> @@ -744,6 +744,12 @@ static int safexcel_ahash_enqueue(struct ahash_request 
> *areq)
>  
>       ring = ctx->base.ring;
>  
> +     // Rotate ring if full
> +     if (priv->ring[ring].queue.qlen > EIP197_DEFAULT_RING_ROTATE) {
> +             ctx->base.ring = safexcel_select_ring(priv);
> +             ring = ctx->base.ring;
> +     }
> +
>       spin_lock_bh(&priv->ring[ring].queue_lock);
>       ret = crypto_enqueue_request(&priv->ring[ring].queue, &areq->base);
>       spin_unlock_bh(&priv->ring[ring].queue_lock);
> -- 
> 2.24.3 (Apple Git-128)
> 

Reply via email to