Hi Linus:
Here is the crypto update for 3.10:
* XTS mode optimisation for twofish/cast6/camellia/aes on x86.
* AVX2/x86_64 implementation for blowfish/twofish/serpent/camellia.
* SSSE3/AVX/AVX2 optimisations for sha256/sha512.
* Added driver for SAHARA2 crypto accelerator.
* Fix for GMAC when used in non-IPsec secnarios.
* Added generic CMAC implementation (including IPsec glue).
* IP update for crypto/atmel.
* Support for more than one device in hwrng/timeriomem.
* Added Broadcom BCM2835 RNG driver.
* Misc fixes.
Please pull from
git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git
Alexander Clouter (2):
hwrng: timeriomem - update to support more than one device
hwrng: timeriomem - added devicetree hooks
Fabio Estevam (1):
hwrng: mxc-rnga - Use devm_ioremap_resource()
Herbert Xu (1):
crypto: crc32c - Kill pointless CRYPTO_CRC32C_X86_64 option
Javier Martin (1):
crypto: sahara - Add driver for SAHARA2 accelerator.
Jingoo Han (1):
hwrng: exynos - add CONFIG_PM_SLEEP/CONFIG_PM_RUNTIME to suspend/resume
Joel A Fernandes (2):
crypto: omap-sham - Use pm_runtime_put instead of pm_runtime_put_sync in tasklet
crypto: omap-aes - Use pm_runtime_put instead of pm_runtime_put_sync in tasklet
Jussi Kivilinna (20):
crypto: x86/crc32-pclmul - assembly clean-ups: use ENTRY/ENDPROC
crypto: x86 - build AVX block cipher implementations only if assembler supports AVX instructions
crypto: gcm - make GMAC work when dst and src are different
crypto: gcm - fix rfc4543 to handle async crypto correctly
crypto: testmgr - add AES GMAC test vectors
crypto: testmgr - add empty test vectors for null ciphers
crypto: add CMAC support to CryptoAPI
xfrm: add rfc4494 AES-CMAC-96 support
crypto: x86 - add more optimized XTS-mode for serpent-avx
crypto: x86/twofish-avx - use optimized XTS code
crypto: cast6-avx: use new optimized XTS code
crypto: x86/camellia-aesni-avx - add more optimized XTS code
crypto: aesni_intel - add more optimized XTS mode for x86-64
crypto: aesni_intel - fix Kconfig problem with CRYPTO_GLUE_HELPER_X86
crypto: testmgr - extend camellia test-vectors for camellia-aesni/avx2
crypto: tcrypt - add async cipher speed tests for blowfish
crypto: blowfish - add AVX2/x86_64 implementation of blowfish cipher
crypto: twofish - add AVX2/x86_64 assembler implementation of twofish cipher
crypto: serpent - add AVX2/x86_64 assembler implementation of serpent cipher
crypto: camellia - add AVX2/AES-NI/x86_64 assembler implementation of camellia cipher
Kim Phillips (2):
crypto: caam - change key gen functions to return signed int
crypto: caam - static constify error data
Lubomir Rintel (1):
hwrng: bcm2835 - Add Broadcom BCM2835 RNG driver
Mathias Krause (1):
crypto: user - constify netlink dispatch table
Mihnea Dobrescu-Balaur (1):
crypto: ux500 - replace kmalloc and then memcpy with kmemdup
Nicolas Royer (4):
ARM: AT91SAM9G45: same platform data structure for all crypto peripherals
crypto: atmel-aes - add support for latest release of the IP (0x130)
crypto: atmel-tdes - add support for latest release of the IP (0x700)
crypto: atmel-sha - add support for latest release of the IP (0x410)
Paul Bolle (1):
crypto: caam - fix typo "CRYPTO_AHASH"
Sachin Kamat (3):
crypto: omap-aes - Use module_platform_driver macro
crypto: omap-sham - Use module_platform_driver macro
crypto: picoxcell - Use of_match_ptr() macro
Sandy Wu (1):
crypto: crc32-pclmul - Use gas macro for pclmulqdq
Syam Sidhardhan (1):
crypto: bfin_crc - Fix possible NULL pointer dereference
Tang Chen (1):
hwrng: Fix a wrong comment in Documentation/hw_random.txt
Tim Chen (11):
crypto: crc32c - Update the links to the white papers on CRC32C calculations with PCLMULQDQ instructions.
crypto: sha256 - Expose SHA256 generic routine to be callable externally.
crypto: sha256 - Optimized sha256 x86_64 assembly routine using Supplemental SSE3 instructions.
crypto: sha256 - Optimized sha256 x86_64 assembly routine with AVX instructions.
crypto: sha256 - Optimized sha256 x86_64 routine using AVX2's RORX instructions
crypto: sha256 - Create module providing optimized SHA256 routines using SSSE3, AVX or AVX2 instructions.
crypto: sha512 - Expose generic sha512 routine to be callable from other modules
crypto: sha512 - Optimized SHA512 x86_64 assembly routine using Supplemental SSE3 instructions.
crypto: sha512 - Optimized SHA512 x86_64 assembly routine using AVX instructions.
crypto: sha512 - Optimized SHA512 x86_64 assembly routine using AVX2 RORX instruction.
crypto: sha512 - Create module providing optimized SHA512 routines using SSSE3, AVX or AVX2 instructions.
Vakul Garg (3):
crypto: caam - set RDB bit in security configuration register
crypto: caam - Fix missing init of '.type' in AEAD algos.
crypto: caam - fix job ring cleanup code
Wei Yongjun (1):
crypto: ux500 - fix error return code in hash_dma_final()
.../devicetree/bindings/crypto/fsl-imx-sahara.txt | 15 +
.../devicetree/bindings/hwrng/timeriomem_rng.txt | 18 +
.../devicetree/bindings/rng/brcm,bcm2835.txt | 13 +
Documentation/hw_random.txt | 2 +-
arch/arm/mach-at91/at91sam9g45_devices.c | 14 +-
arch/x86/crypto/Makefile | 57 +-
arch/x86/crypto/aesni-intel_asm.S | 117 ++
arch/x86/crypto/aesni-intel_glue.c | 80 ++
arch/x86/crypto/blowfish-avx2-asm_64.S | 449 +++++++
.../{blowfish_glue.c => blowfish_avx2_glue.c} | 402 ++++---
arch/x86/crypto/blowfish_glue.c | 32 +-
arch/x86/crypto/camellia-aesni-avx-asm_64.S | 180 +++-
arch/x86/crypto/camellia-aesni-avx2-asm_64.S | 1368 ++++++++++++++++++++
...aesni_avx_glue.c => camellia_aesni_avx2_glue.c} | 182 ++--
arch/x86/crypto/camellia_aesni_avx_glue.c | 104 +-
arch/x86/crypto/cast6-avx-x86_64-asm_64.S | 48 +-
arch/x86/crypto/cast6_avx_glue.c | 91 +-
arch/x86/crypto/crc32-pclmul_asm.S | 6 +-
arch/x86/crypto/crc32c-pcl-intel-asm_64.S | 10 +-
arch/x86/crypto/glue_helper-asm-avx.S | 61 +-
arch/x86/crypto/glue_helper-asm-avx2.S | 180 +++
arch/x86/crypto/glue_helper.c | 97 ++-
arch/x86/crypto/serpent-avx-x86_64-asm_64.S | 45 +-
...t-avx-x86_64-asm_64.S => serpent-avx2-asm_64.S} | 207 ++--
.../{serpent_avx_glue.c => serpent_avx2_glue.c} | 323 +++---
arch/x86/crypto/serpent_avx_glue.c | 145 ++-
arch/x86/crypto/sha256-avx-asm.S | 496 +++++++
arch/x86/crypto/sha256-avx2-asm.S | 772 +++++++++++
arch/x86/crypto/sha256-ssse3-asm.S | 506 ++++++++
arch/x86/crypto/sha256_ssse3_glue.c | 275 ++++
arch/x86/crypto/sha512-avx-asm.S | 423 ++++++
arch/x86/crypto/sha512-avx2-asm.S | 743 +++++++++++
arch/x86/crypto/sha512-ssse3-asm.S | 421 ++++++
arch/x86/crypto/sha512_ssse3_glue.c | 282 ++++
arch/x86/crypto/twofish-avx-x86_64-asm_64.S | 48 +-
arch/x86/crypto/twofish-avx2-asm_64.S | 600 +++++++++
.../{twofish_avx_glue.c => twofish_avx2_glue.c} | 269 ++--
arch/x86/crypto/twofish_avx_glue.c | 101 +-
arch/x86/include/asm/cpufeature.h | 1 +
arch/x86/include/asm/crypto/blowfish.h | 43 +
arch/x86/include/asm/crypto/camellia.h | 19 +
arch/x86/include/asm/crypto/glue_helper.h | 24 +
arch/x86/include/asm/crypto/serpent-avx.h | 29 +
arch/x86/include/asm/crypto/twofish.h | 18 +
crypto/Kconfig | 133 ++-
crypto/Makefile | 1 +
crypto/cmac.c | 315 +++++
crypto/crypto_user.c | 4 +-
crypto/gcm.c | 116 ++-
crypto/sha256_generic.c | 11 +-
crypto/sha512_generic.c | 13 +-
crypto/tcrypt.c | 30 +-
crypto/testmgr.c | 95 ++-
crypto/testmgr.h | 1314 ++++++++++++++++++-
drivers/char/hw_random/Kconfig | 12 +
drivers/char/hw_random/Makefile | 1 +
drivers/char/hw_random/bcm2835-rng.c | 113 ++
drivers/char/hw_random/exynos-rng.c | 3 +-
drivers/char/hw_random/mxc-rnga.c | 21 +-
drivers/char/hw_random/timeriomem-rng.c | 190 ++-
drivers/crypto/Kconfig | 18 +-
drivers/crypto/Makefile | 1 +
drivers/crypto/atmel-aes.c | 471 +++++--
drivers/crypto/atmel-sha-regs.h | 7 +-
drivers/crypto/atmel-sha.c | 586 +++++++--
drivers/crypto/atmel-tdes-regs.h | 2 +
drivers/crypto/atmel-tdes.c | 394 +++++-
drivers/crypto/bfin_crc.c | 6 +-
drivers/crypto/caam/Kconfig | 2 +-
drivers/crypto/caam/caamalg.c | 6 +
drivers/crypto/caam/caamhash.c | 4 +-
drivers/crypto/caam/ctrl.c | 3 +
drivers/crypto/caam/error.c | 10 +-
drivers/crypto/caam/intern.h | 1 +
drivers/crypto/caam/jr.c | 4 +
drivers/crypto/caam/key_gen.c | 2 +-
drivers/crypto/caam/key_gen.h | 2 +-
drivers/crypto/caam/regs.h | 4 +-
drivers/crypto/omap-aes.c | 15 +-
drivers/crypto/omap-sham.c | 15 +-
drivers/crypto/picoxcell_crypto.c | 4 +-
drivers/crypto/sahara.c | 1070 +++++++++++++++
drivers/crypto/ux500/hash/hash_core.c | 6 +-
include/crypto/sha.h | 5 +
include/linux/platform_data/atmel-aes.h | 22 -
include/linux/platform_data/crypto-atmel.h | 22 +
include/linux/timeriomem-rng.h | 5 -
net/xfrm/xfrm_algo.c | 13 +
88 files changed, 13036 insertions(+), 1352 deletions(-)
Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Hi Linus:
Here is the crypto update for 3.11:
* Do not idle omap device between crypto operations in one session.
* Added sha224/sha384 shims for SSSE3.
* More optimisations for camellia-aesni-avx2.
* Removed defunct blowfish/twofish AVX2 implementations.
* Added unaligned buffer self-tests.
* Added PCLMULQDQ optimisation for CRCT10DIF.
* Added support for Freescale's DCP co-processor
* Misc fixes.
Please pull from
git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git
Andrei Varvara (8):
crypto: caam - fix SEQ IN PTR command when RTO or PRE bit is set
crypto: caam - Fix STORE command to support overwriting Shared Descriptor's memory
crypto: caam - Add MATH command to support shld function
crypto: caam - Add new macros for building extended SEC descriptors (> 64 words)
crypto: caam - Add defines for overwriting Descriptor's memory
crypto: caam - Add defines for CAAM commands
crypto: caam - Add define for Adjust Output Frame Length in PDB
crypto: caam - add missing flag for the LOAD/STORE commands
Arnd Bergmann (1):
hwrng: bcm2835 - fix MODULE_LICENSE tag
Herbert Xu (2):
crypto: crct10dif - Use PTR_RET
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto
Jingoo Han (6):
hwrng: atmel - remove unnecessary platform_set_drvdata()
hwrng: bcm63xx - remove unnecessary platform_set_drvdata()
hwrng: timeriomem - remove unnecessary platform_set_drvdata()
hwrng: tx4939 - remove unnecessary platform_set_drvdata()
hwrng: use platform_{get,set}_drvdata()
crypto: picoxcell - replace strict_strtoul() with kstrtoul()
Joel A Fernandes (1):
crypto: omap-aes - Don't idle/start AES device between Encrypt operations
Jussi Kivilinna (10):
crypto: sha512_generic - set cra_driver_name
crypto: sha512_ssse3 - add sha384 support
crypto: sha256_ssse3 - add sha224 support
crypto: camellia-aesni-avx2 - tune assembly code for more performance
Revert "crypto: blowfish - add AVX2/x86_64 implementation of blowfish cipher"
Revert "crypto: twofish - add AVX2/x86_64 assembler implementation of twofish cipher"
crypto: testmgr - check that entries in alg_test_descs are in correct order
crypto: testmgr - test skciphers with unaligned buffers
crypto: testmgr - test AEADs with unaligned buffers
crypto: testmgr - test hash implementations with unaligned buffers
Lars-Peter Clausen (1):
crypto: hifn_795x - Pass correct pointer to free_irq()
Laurent Navet (1):
drivers: crypto: use devm_ioremap_resource()
Linus Walleij (1):
hwrng: nomadik - use clk_prepare_enable()
Paul Bolle (1):
crypto: sahara - remove dependency on EXPERIMENTAL
Ruchika Gupta (1):
crypto: caam - FIX RNG init for RNG greater than equal to 4
Sachin Kamat (6):
crypto: mv_cesa: Remove redundant platform_set_drvdata()
crypto: s5p-sss: Remove redundant platform_set_drvdata()
crypto: dcp - Remove redundant platform_set_drvdata()
crypto: dcp - Use devm_* APIs
crypto: dcp - Use NULL instead of 0
crypto: dcp - Staticize local symbols
Thomas Meyer (1):
crypto: ux500 - Cocci spatch "resource_size.spatch"
Tim Chen (4):
crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework
crypto: crct10dif - Accelerated CRC T10 DIF computation with PCLMULQDQ instruction
crypto: crct10dif - Glue code to cast accelerated CRCT10DIF assembly as a crypto transform
crypto: crct10dif - Simple correctness and speed test for CRCT10DIF hash
Tobias Rauter (1):
crypto: dcp - Added support for Freescale's DCP co-processor
arch/arm/boot/dts/imx28.dtsi | 2 +-
arch/x86/crypto/Makefile | 8 +-
arch/x86/crypto/blowfish-avx2-asm_64.S | 449 -------------
arch/x86/crypto/blowfish_avx2_glue.c | 585 -----------------
arch/x86/crypto/blowfish_glue.c | 32 +-
arch/x86/crypto/camellia-aesni-avx2-asm_64.S | 160 +++--
arch/x86/crypto/crct10dif-pcl-asm_64.S | 643 ++++++++++++++++++
arch/x86/crypto/crct10dif-pclmul_glue.c | 151 +++++
arch/x86/crypto/sha256_ssse3_glue.c | 57 ++-
arch/x86/crypto/sha512_ssse3_glue.c | 58 ++-
arch/x86/crypto/twofish-avx2-asm_64.S | 600 -----------------
arch/x86/crypto/twofish_avx2_glue.c | 584 ----------------
arch/x86/crypto/twofish_avx_glue.c | 14 +-
arch/x86/include/asm/crypto/blowfish.h | 43 --
arch/x86/include/asm/crypto/twofish.h | 18 -
crypto/Kconfig | 63 +--
crypto/Makefile | 1 +
crypto/crct10dif.c | 178 +++++
crypto/sha512_generic.c | 2 +
crypto/tcrypt.c | 8 +
crypto/testmgr.c | 176 ++++-
crypto/testmgr.h | 33 +
drivers/char/hw_random/atmel-rng.c | 2 -
drivers/char/hw_random/bcm2835-rng.c | 2 +-
drivers/char/hw_random/bcm63xx-rng.c | 2 -
drivers/char/hw_random/n2-drv.c | 6 +-
drivers/char/hw_random/nomadik-rng.c | 2 +-
drivers/char/hw_random/octeon-rng.c | 4 +-
drivers/char/hw_random/omap-rng.c | 6 +-
drivers/char/hw_random/timeriomem-rng.c | 2 -
drivers/char/hw_random/tx4939-rng.c | 1 -
drivers/crypto/Kconfig | 12 +-
drivers/crypto/Makefile | 1 +
drivers/crypto/caam/ctrl.c | 10 +-
drivers/crypto/caam/desc.h | 22 +-
drivers/crypto/caam/desc_constr.h | 81 +++-
drivers/crypto/caam/pdb.h | 1 +
drivers/crypto/caam/regs.h | 42 ++-
drivers/crypto/dcp.c | 912 ++++++++++++++++++++++++++
drivers/crypto/hifn_795x.c | 4 +-
drivers/crypto/mv_cesa.c | 1 -
drivers/crypto/omap-aes.c | 36 +-
drivers/crypto/omap-sham.c | 7 +-
drivers/crypto/picoxcell_crypto.c | 2 +-
drivers/crypto/s5p-sss.c | 2 -
drivers/crypto/ux500/cryp/cryp_core.c | 2 +-
include/linux/crc-t10dif.h | 4 +
lib/Kconfig | 2 +
lib/crc-t10dif.c | 73 +--
49 files changed, 2542 insertions(+), 2564 deletions(-)
Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt