- Jul 24, 2011
-
-
Al Viro authored
it will be replaced with S_IFREG anyway Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk>
-
- Jul 14, 2011
-
-
Yuan Kang authored
caam now supports encrypt and decrypt for aes, des and 3des Signed-off-by:
Yuan Kang <Yuan.Kang@freescale.com> Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Yuan Kang authored
Job descriptors only contain header and seq pointers. Other commands are stored in separate shared descriptors for encrypt, decrypt and givencrypt, stored as arrays in caam_ctx. This requires additional macros to create math commands to calculate assoclen and cryptlen. Signed-off-by:
Yuan Kang <Yuan.Kang@freescale.com> Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Yuan Kang authored
caam_ctx.key_phys to key_dma caam_alg_template supports multiple algorithm types listed in union, which requires cases for different types in function caam_alg_alloc Signed-off-by:
Yuan Kang <Yuan.Kang@freescale.com> Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Yuan Kang authored
"aead_authenc" and "ipsec_esp" changed to "aead," except for function "ipsec_esp," which is changed to "init_aead_job." Variable name of aead_request structures changed to "req" and name of aead_givcrypt_request structure changed to "areq" Signed-off-by:
Yuan Kang <Yuan.Kang@freescale.com> Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
crypto/ablkcipher.c's setkey() has already checked against the min, max key sizes before it calls here, and all max_keysize assignments in the algorithm template array do not exceed TALITOS_MAX_KEY_SIZE. Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
IRQ done notification is always set. Remove its explicit assignment from the hot path by including it in the descriptor header template assignment in talitos_cra_init. Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
Assign single target channel per tfm in talitos_cra_init instead of performing channel scheduling dynamically during the encryption request. This changes the talitos_submit interface to accept a new channel number argument. Without this, rapid bursts of misc. sized requests could make it possible for IPsec packets to be encrypted out-of-order, which would result in packet drops due to sequence numbers falling outside the anti-reply window on a peer gateway. Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
- Jun 29, 2011
-
-
Josh Boyer authored
The Security function on the AMCC SoCs has multiple engines within a single MMIO range. The crypto driver currently enables the 3DES functionality by doing a blind write to the device control register. This can unintentionally disable other functions like the PKA or TRNG when the driver is loaded. Perform a read/modify/write to enable the 3DES function instead. Signed-off-by:
Josh Boyer <jwboyer@linux.vnet.ibm.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
drivers/crypto/caam/ctrl.c: In function 'caam_probe': drivers/crypto/caam/ctrl.c:55:23: warning: unused variable 'perfmon' Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
It could be a situation, that tasklet is executed twice because of certain delay between dma callback and irq handler execution. In that case, second tasklet execution could actually corrupt the data of the new started dma transactions. This patch improves tasklet logic and prevents above described cases. Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Calling omap_sham_handle_queue from "done" tasklet should be done after irq scheduled tasklet completes. Having additional tasklet does not solve that issue because it might be execute before. So queue handling tasklet has been removed and functionality integrated into single tasklet. Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Couple of context flags have been moved to device flags. IRQ and tasklet handlers does not need to access request context anymore. Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Some flags are changed in interrupt handlers and verified in the tasklet. There might be a race condition when tasklet is interrupted or another cpu/core will run IRQ handler and tasklet in parallel. Atomic bitops functions are now used instead of bitmask operations. Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Flags mask cannot be used with atomic bit operations. This patch changes masks to bit numbers. Atomic bit operations will be used by following patches. Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Dmitry Kasatkin authored
Request pointer is already available in the function. Signed-off-by:
Dmitry Kasatkin <dmitry.kasatkin@nokia.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
setkey allocates 16 bytes (CAAM_CMD_SZ * DESC_AEAD_SHARED_TEXT_LEN) shy of what is needed to store the shared descriptor, resulting in memory corruption. Fix this. Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
- May 23, 2011
-
-
Holger Dengler authored
The registration of an ap device will be skipped, if the device type probing fails. Add names of current crypto adapters to the Kconfig help. Signed-off-by:
Holger Dengler <hd@linux.vnet.ibm.com> Signed-off-by:
Martin Schwidefsky <schwidefsky@de.ibm.com>
-
- May 18, 2011
-
-
Kim Phillips authored
In doing so, sha512 sized keys would not fit with the current descriptor inlining mechanism, so we now calculate whether keys should be referenced instead by pointers in the shared descriptor. also, use symbols for descriptor text lengths, and, ahem, unmap and free key i/o memory in cra_exit. Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
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>
-
Kim Phillips authored
this fixes a build error since cryptodev-2.6 got rebased to include commit d714d197 "dt: eliminate of_platform_driver shim code". Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
- May 10, 2011
-
-
Phil Sutter authored
This also makes the dummy scatterlist in mv_hash_final() needless, so drop it. XXX: should this routine be made pulicly available? There are probably other users with their own implementations. Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
On one hand, the digest state registers need to be set only when actually using the crypto engine. On the other hand, there is a check for ctx->first_hash in mv_process_hash_current() already, so use that. Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
The main goal was to have it not do anything when a zero len parameter was being passed (which could lead to a null pointer dereference, as in this case p->src_sg is null, either). Using the min() macro, the lower part of the loop gets simpler, too. Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
The code in mv_hash_final is actually a superset of mv_hash_finup's body. Since the driver works fine without, drop it. Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Phil Sutter authored
Signed-off-by:
Phil Sutter <phil.sutter@viprinet.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
- May 03, 2011
-
-
Kim Phillips authored
during recent descriptor development, an Invalid Sequence Command error triggered a: BUG: recent printk recursion! due to insufficient memory allocated for the error text. The Invalid Sequence Command error text is the longest. The length of the maximum error string is computed as the sum of: "DECO: ": 6 "jump tgt desc idx 255: ": 23 Invalid Sequence Command text: 272 zero termination character: 1 i.e, 302 characters. Define this maximum error string length in error.h and fix caam_jr_strstatus callsites. Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-
Kim Phillips authored
Signed-off-by:
Kim Phillips <kim.phillips@freescale.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au>
-