linux/drivers/crypto/caam
Kim Phillips ddbb80884a crypto: caam - fix decryption shared vs. non-shared key setting
Key sharing is enabled by default in the shared descriptor.

Using CBC decrypt, AES has to alter the key in order to decrypt.
During high traffic decryption rates, i.e, when sharing starts to
take place, we need to use a different OPERATION option to tell AES
that the key was already altered by the PRIOR descriptor - we need
the following kind of logic:

if ( shared )
    operation where AES uses decryption key (DK=1)
else
    operation where AES uses encryption key (DK=0)

this patch implements this logic using a conditional and
a non-conditional local jump within the decryption job
descriptor.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2011-05-19 14:37:59 +10:00
..
caamalg.c crypto: caam - fix decryption shared vs. non-shared key setting 2011-05-19 14:37:59 +10:00
compat.h crypto: caam - Add support for the Freescale SEC4/CAAM 2011-03-27 10:45:16 +08:00
ctrl.c crypto: caam - platform_bus_type migration 2011-05-19 14:37:58 +10:00
desc_constr.h crypto: caam - Add support for the Freescale SEC4/CAAM 2011-03-27 10:45:16 +08:00
desc.h crypto: caam - Add support for the Freescale SEC4/CAAM 2011-03-27 10:45:16 +08:00
error.c crypto: caam - ARRAY_SIZE() vs sizeof() 2011-03-27 10:45:17 +08:00
error.h crypto: caam - fix printk recursion for long error texts 2011-05-04 15:15:06 +10:00
intern.h crypto: caam - Add support for the Freescale SEC4/CAAM 2011-03-27 10:45:16 +08:00
jr.c crypto: caam - handle interrupt lines shared across rings 2011-05-03 09:53:31 +10:00
jr.h crypto: caam - Add support for the Freescale SEC4/CAAM 2011-03-27 10:45:16 +08:00
Kconfig crypto: caam - Add support for the Freescale SEC4/CAAM 2011-03-27 10:45:16 +08:00
Makefile crypto: caam - Add support for the Freescale SEC4/CAAM 2011-03-27 10:45:16 +08:00
regs.h crypto: caam - fix queue interface detection 2011-05-03 09:53:35 +10:00