crypto: caam/jr - Removed redundant vars from job ring private data
authorVakul Garg <vakul.garg@nxp.com>
Fri, 22 Mar 2019 02:00:35 +0000 (02:00 +0000)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 28 Mar 2019 05:55:34 +0000 (13:55 +0800)
For each job ring, the variable 'ringsize' is initialised but never
used. Similarly variables 'inp_ring_write_index' and 'head' always track
the same value and instead of 'inp_ring_write_index', caam_jr_enqueue()
can use 'head' itself. Both these variables have been removed.

Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/caam/intern.h
drivers/crypto/caam/jr.c

index 48d62e02059941df44dfc47603dc3e60f189f302..3392615dc91be6fa2ca48b010da1e917b57fecf8 100644 (file)
@@ -49,10 +49,8 @@ struct caam_drv_private_jr {
        atomic_t tfm_count ____cacheline_aligned;
 
        /* Job ring info */
-       int ringsize;   /* Size of rings (assume input = output) */
        struct caam_jrentry_info *entinfo;      /* Alloc'ed 1 per ring entry */
        spinlock_t inplock ____cacheline_aligned; /* Input ring index lock */
-       int inp_ring_write_index;       /* Input index "tail" */
        u32 inpring_avail;      /* Number of free entries in input ring */
        int head;                       /* entinfo (s/w ring) head index */
        dma_addr_t *inpring;    /* Base of input ring, alloc DMA-safe */
index d1021026f5b2c4067a903bba367b83c19ebeccbf..e95f82778fa1df701a7da4c4e94ae37300f929a7 100644 (file)
@@ -358,7 +358,7 @@ int caam_jr_enqueue(struct device *dev, u32 *desc,
        head_entry->cbkarg = areq;
        head_entry->desc_addr_dma = desc_dma;
 
-       jrp->inpring[jrp->inp_ring_write_index] = cpu_to_caam_dma(desc_dma);
+       jrp->inpring[head] = cpu_to_caam_dma(desc_dma);
 
        /*
         * Guarantee that the descriptor's DMA address has been written to
@@ -367,8 +367,6 @@ int caam_jr_enqueue(struct device *dev, u32 *desc,
         */
        smp_wmb();
 
-       jrp->inp_ring_write_index = (jrp->inp_ring_write_index + 1) &
-                                   (JOBR_DEPTH - 1);
        jrp->head = (head + 1) & (JOBR_DEPTH - 1);
 
        /*
@@ -434,7 +432,6 @@ static int caam_jr_init(struct device *dev)
                jrp->entinfo[i].desc_addr_dma = !0;
 
        /* Setup rings */
-       jrp->inp_ring_write_index = 0;
        jrp->out_ring_read_index = 0;
        jrp->head = 0;
        jrp->tail = 0;
@@ -444,7 +441,6 @@ static int caam_jr_init(struct device *dev)
        wr_reg32(&jrp->rregs->inpring_size, JOBR_DEPTH);
        wr_reg32(&jrp->rregs->outring_size, JOBR_DEPTH);
 
-       jrp->ringsize = JOBR_DEPTH;
        jrp->inpring_avail = JOBR_DEPTH;
 
        spin_lock_init(&jrp->inplock);