summaryrefslogtreecommitdiffstats
path: root/drivers/crypto
Commit message (Collapse)AuthorAgeFilesLines
* crypto: caam - fix RNG buffer cache alignmentOleksij Rempel2017-03-301-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this is alternate version of linux fix: --------------------------------------------------------------------- | commit 412c98c1bef65fe7589f1300e93735d96130307c | Author: Steve Cornelius <steve.cornelius@freescale.com> | Date: Mon Jun 15 16:52:59 2015 -0700 | | crypto: caam - fix RNG buffer cache alignment | | The hwrng output buffers (2) are cast inside of a a struct (caam_rng_ctx) | allocated in one DMA-tagged region. While the kernel's heap allocator | should place the overall struct on a cacheline aligned boundary, the 2 | buffers contained within may not necessarily align. Consenquently, the | ends of unaligned buffers may not fully flush, and if so, stale data will be | left behind, resulting in small repeating patterns. | | This fix aligns the buffers inside the struct. | | Note that not all of the data inside caam_rng_ctx necessarily needs to | be DMA-tagged, only the buffers themselves require this. However, a fix | would incur the expense of error-handling bloat in the case of allocation | failure. | | Cc: stable@vger.kernel.org | Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com> | Signed-off-by: Victoria Milhoan <vicki.milhoan@freescale.com> | Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> --------------------------------------------------------------------- instead we will use just dma_alloc() Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* caamrng: port to hwrng frameworkOleksij Rempel2017-03-302-28/+13
| | | | | Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* crypto: add i.MX6 CAAM supportSteffen Trumtrar2016-02-1215-0/+4636
Add the i.MX6 crypto core CAAM with support for the random number generator. The core itself works with jobrings in which descriptors can be queued/dequeued for processing. Depending on descriptor type the CAAM unit then either produces random numbers or decrypts/encrypts data. The code is based on the Linux v4.1 driver of the same name without all the crypto/hashing components. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>