linux/drivers/crypto
Joel Fernandes 6242332ff2 crypto: omap-aes - Add support for cases of unaligned lengths
For cases where offset/length of on any page of the input SG is not aligned by
AES_BLOCK_SIZE, we copy all the pages from the input SG list into a contiguous
buffer and prepare a single element SG list for this buffer with length as the
total bytes to crypt.

This is requried for cases such as when an SG list of 16 bytes total size
contains 16 pages each containing 1 byte. DMA using the direct buffers of such
instances is not possible.

For this purpose, we first detect if the unaligned case and accordingly
allocate enough number of pages to satisfy the request and prepare SG lists.
We then copy data into the buffer, and copy data out of it on completion.

Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2013-08-21 21:28:05 +10:00
..
amcc crypto: crypto4xx - Staticize local symbols 2013-08-14 20:42:03 +10:00
caam crypto: caam - add option for enabling DEBUG mode 2013-08-21 21:08:37 +10:00
nx crypto: nx - fix nx-aes-gcm verification 2013-08-21 21:08:38 +10:00
ux500 crypto: ux500 - Fix logging, make arrays const, neatening 2013-08-01 10:53:59 +10:00
atmel-aes-regs.h crypto: atmel - add Atmel AES driver 2012-07-11 11:07:40 +08:00
atmel-aes.c crypto: atmel-aes - add support for latest release of the IP (0x130) 2013-03-10 16:46:42 +08:00
atmel-sha-regs.h crypto: atmel-sha - add support for latest release of the IP (0x410) 2013-03-10 16:46:42 +08:00
atmel-sha.c crypto: atmel-sha - add support for latest release of the IP (0x410) 2013-03-10 16:46:42 +08:00
atmel-tdes-regs.h crypto: atmel-tdes - add support for latest release of the IP (0x700) 2013-03-10 16:46:42 +08:00
atmel-tdes.c crypto: atmel-tdes - add support for latest release of the IP (0x700) 2013-03-10 16:46:42 +08:00
bfin_crc.c crypto: bfin_crc - Fix possible NULL pointer dereference 2013-03-10 16:46:43 +08:00
dcp.c crypto: dcp - Staticize local symbols 2013-06-05 16:43:08 +08:00
geode-aes.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
geode-aes.h
hifn_795x.c crypto: hifn_795x - Pass correct pointer to free_irq() 2013-05-28 15:43:04 +08:00
ixp4xx_crypto.c IXP4xx crypto: MOD_AES{128,192,256} already include key size. 2012-11-22 03:36:15 +00:00
Kconfig crypto: omap-sham - Add SHA384 and SHA512 Support 2013-08-01 10:54:00 +10:00
Makefile crypto: dcp - Added support for Freescale's DCP co-processor 2013-05-28 15:43:03 +08:00
mv_cesa.c crypto: mv_cesa: Remove redundant platform_set_drvdata() 2013-05-24 17:55:28 +08:00
mv_cesa.h crypto: mv_cesa - Add sha1 and hmac(sha1) async hash drivers 2010-04-13 16:50:49 +08:00
n2_asm.S crypto: n2 - Add Niagara2 crypto driver 2010-05-19 14:14:04 +10:00
n2_core.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
n2_core.h crypto: n2 - Add Niagara2 crypto driver 2010-05-19 14:14:04 +10:00
omap-aes.c crypto: omap-aes - Add support for cases of unaligned lengths 2013-08-21 21:28:05 +10:00
omap-sham.c crypto: omap-sham - Convert to devm_kzalloc() 2013-08-01 10:54:01 +10:00
padlock-aes.c crypto: drivers - remove cra_list initialization 2012-08-01 17:47:28 +08:00
padlock-sha.c crypto: Add support for x86 cpuid auto loading for x86 crypto drivers 2012-01-26 16:48:10 -08:00
picoxcell_crypto_regs.h crypto: picoxcell - add support for the picoxcell crypto engines 2011-02-21 22:42:40 +11:00
picoxcell_crypto.c crypto: picoxcell - replace strict_strtoul() with kstrtoul() 2013-06-05 16:43:08 +08:00
s5p-sss.c crypto: s5p-sss: Remove redundant platform_set_drvdata() 2013-05-24 17:55:28 +08:00
sahara.c crypto: sahara - Staticize local symbol 2013-08-14 20:42:02 +10:00
talitos.c Revert "crypto: talitos - add IPsec ESN support" 2013-03-21 17:36:02 +08:00
talitos.h crypto: talitos - add sha224, sha384 and sha512 to existing AEAD algorithms 2012-07-11 11:08:29 +08:00
tegra-aes.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
tegra-aes.h crypto: driver for Tegra AES hardware 2012-01-13 16:38:37 +11:00