]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
crypto: caam - increase TRNG clocks per sample
authorKim Phillips <kim.phillips@freescale.com>
Mon, 17 Sep 2012 23:21:55 +0000 (18:21 -0500)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 27 Sep 2012 05:32:15 +0000 (13:32 +0800)
we need to configure the TRNG to use more clocks per sample
to handle the two back-to-back 64KiB random descriptor requests
on higher frequency P5040s.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/caam/ctrl.c

index 414ba20c05a13f5265944a2ada5d0da97c6e447f..bf20dd891705890ad544086af82cfaf7e4a97fac 100644 (file)
@@ -129,7 +129,7 @@ static int instantiate_rng(struct device *jrdev)
 
 /*
  * By default, the TRNG runs for 200 clocks per sample;
- * 800 clocks per sample generates better entropy.
+ * 1600 clocks per sample generates better entropy.
  */
 static void kick_trng(struct platform_device *pdev)
 {
@@ -144,9 +144,9 @@ static void kick_trng(struct platform_device *pdev)
 
        /* put RNG4 into program mode */
        setbits32(&r4tst->rtmctl, RTMCTL_PRGM);
-       /* 800 clocks per sample */
+       /* 1600 clocks per sample */
        val = rd_reg32(&r4tst->rtsdctl);
-       val = (val & ~RTSDCTL_ENT_DLY_MASK) | (800 << RTSDCTL_ENT_DLY_SHIFT);
+       val = (val & ~RTSDCTL_ENT_DLY_MASK) | (1600 << RTSDCTL_ENT_DLY_SHIFT);
        wr_reg32(&r4tst->rtsdctl, val);
        /* min. freq. count */
        wr_reg32(&r4tst->rtfrqmin, 400);