linux/crypto
Dan Williams 0036731c88 async_tx: kill tx_set_src and tx_set_dest methods
The tx_set_src and tx_set_dest methods were originally implemented to allow
an array of addresses to be passed down from async_xor to the dmaengine
driver while minimizing stack overhead.  Removing these methods allows
drivers to have all transaction parameters available at 'prep' time, saves
two function pointers in struct dma_async_tx_descriptor, and reduces the
number of indirect branches..

A consequence of moving this data to the 'prep' routine is that
multi-source routines like async_xor need temporary storage to convert an
array of linear addresses into an array of dma addresses.  In order to keep
the same stack footprint of the previous implementation the input array is
reused as storage for the dma addresses.  This requires that
sizeof(dma_addr_t) be less than or equal to sizeof(void *).  As a
consequence CONFIG_DMADEVICES now depends on !CONFIG_HIGHMEM64G.  It also
requires that drivers be able to make descriptor resources available when
the 'prep' routine is polled.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Acked-by: Shannon Nelson <shannon.nelson@intel.com>
2008-02-06 10:12:17 -07:00
..
async_tx async_tx: kill tx_set_src and tx_set_dest methods 2008-02-06 10:12:17 -07:00
ablkcipher.c [CRYPTO] api: Show async type 2008-01-11 08:16:56 +11:00
aead.c [CRYPTO] api: Show async type 2008-01-11 08:16:56 +11:00
aes_generic.c [CRYPTO] aes-generic: Make key generation exportable 2008-01-11 08:16:09 +11:00
algapi.c [CRYPTO] api: Add crypto_attr_alg_name 2008-01-11 08:16:40 +11:00
anubis.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
api.c [CRYPTO] skcipher: Create default givcipher instances 2008-01-11 08:16:46 +11:00
arc4.c
authenc.c [CRYPTO] authenc: Add givencrypt operation 2008-01-11 08:16:50 +11:00
blkcipher.c [CRYPTO] skcipher: Create default givcipher instances 2008-01-11 08:16:46 +11:00
blowfish.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
camellia.c [CRYPTO] camellia: Move more common code into camellia_setup_tail 2008-01-11 08:16:22 +11:00
cast5.c
cast6.c [CRYPTO] cast6: inline bloat-- 2008-01-11 08:17:02 +11:00
cbc.c [CRYPTO] cbc: Require block size to be a power of 2 2008-01-11 08:16:19 +11:00
ccm.c [CRYPTO] ccm: Added CCM mode 2008-01-11 08:16:53 +11:00
chainiv.c [CRYPTO] chainiv: Avoid lock spinning where possible 2008-01-11 08:16:55 +11:00
cipher.c [CRYPTO] api: Add missing headers for setkey_unaligned 2007-10-10 16:55:40 -07:00
compress.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
crc32c.c
cryptd.c [CRYPTO] cryptd: Use geniv of the underlying algorithm 2008-01-11 08:16:43 +11:00
crypto_null.c [CRYPTO] null: Allow setkey on digest_null 2008-01-11 08:16:54 +11:00
cryptomgr.c [CRYPTO] cryptomgr: Fix parsing of recursive algorithms 2007-10-10 16:55:45 -07:00
ctr.c [CRYPTO] seqiv: Add Sequence Number IV Generator 2008-01-11 08:16:48 +11:00
deflate.c
des_generic.c [CRYPTO] hifn_795x: Detect weak keys 2008-01-11 08:16:03 +11:00
digest.c [CRYPTO] scatterwalk: Restore custom sg chaining for now 2008-01-11 08:16:33 +11:00
ecb.c
eseqiv.c [CRYPTO] eseqiv: Add Encrypted Sequence Number IV Generator 2008-01-11 08:16:45 +11:00
fcrypt.c fcrypt endianness misannotations 2007-12-05 09:25:20 -08:00
gcm.c [CRYPTO] gcm: Introduce rfc4106 2008-01-11 08:16:56 +11:00
gf128mul.c [CRYPTO] xts: XTS blockcipher mode implementation without partial blocks 2007-10-10 16:55:45 -07:00
hash.c [CRYPTO] api: Add missing headers for setkey_unaligned 2007-10-10 16:55:40 -07:00
hmac.c [CRYPTO] scatterwalk: Restore custom sg chaining for now 2008-01-11 08:16:33 +11:00
internal.h [CRYPTO] skcipher: Create default givcipher instances 2008-01-11 08:16:46 +11:00
Kconfig [CRYPTO] salsa20-asm: Remove unnecessary dependency on CRYPTO_SALSA20 2008-01-11 08:16:58 +11:00
khazad.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
lrw.c
lzo.c [CRYPTO] lzo: Add LZO compression algorithm support 2008-01-11 08:16:35 +11:00
Makefile [CRYPTO] ccm: Added CCM mode 2008-01-11 08:16:53 +11:00
md4.c
md5.c
michael_mic.c
pcbc.c [CRYPTO] pcbc: Use crypto_xor 2008-01-11 08:16:19 +11:00
proc.c
salsa20_generic.c [CRYPTO] salsa20_generic: Fix multi-page processing 2008-01-11 08:16:34 +11:00
scatterwalk.c [CRYPTO] scatterwalk: Handle zero nbytes in scatterwalk_map_and_copy 2008-01-11 08:16:54 +11:00
seed.c
seqiv.c [CRYPTO] seqiv: Add AEAD support 2008-01-11 08:16:52 +11:00
serpent.c
sha1_generic.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
sha256_generic.c [CRYPTO] sha256-generic: Extend sha256_generic.c to support SHA-224 2008-01-11 08:16:12 +11:00
sha512.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
tcrypt.c [CRYPTO] tcrypt: Make xcbc available as a standalone test 2008-01-11 08:17:01 +11:00
tcrypt.h [CRYPTO] tcrypt: Add CCM vectors 2008-01-11 08:16:53 +11:00
tea.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
tgr192.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
twofish_common.c [CRYPTO] twofish: Do not unroll big stuff in twofish key setup 2008-01-11 08:16:06 +11:00
twofish.c
wp512.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
xcbc.c [CRYPTO] xcbc: Remove bogus hash/cipher test 2008-01-11 08:17:00 +11:00
xor.c
xts.c [CRYPTO] xts: XTS blockcipher mode implementation without partial blocks 2007-10-10 16:55:45 -07:00