crypto: dcp - Added support for Freescale's DCP co-processor
authorTobias Rauter <tobiasrauter@gmail.com>
Sun, 19 May 2013 19:59:38 +0000 (21:59 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Tue, 28 May 2013 07:43:03 +0000 (15:43 +0800)
commit519d8b1a9d81be7e4ffad8aa6b0e3ea03984bb86
tree6406b4e813ec4d2578afe517a9bea191647933b6
parent91dc363a86142afcbc4e9c3ab31b0f4563b0f269
crypto: dcp - Added support for Freescale's DCP co-processor

This patch enables the DCP crypto functionality on imx28.
Currently, only aes-128-cbc is supported.
Moreover, the dcpboot misc-device, which is used by Freescale's
SDK tools and uses a non-software-readable OTP-key, is added.

Changes of v2:
- ring buffer for hardware-descriptors
- use of ablkcipher walk
- OTP key encryption/decryption via misc-device
  (compatible to Freescale-SDK)
- overall cleanup

The DCP is also capable of sha1/sha256 but I won't be able to add
that anytime soon.
Tested with built-in runtime-self-test, tcrypt and openssl via
cryptodev 1.6 on imx28-evk and a custom built imx28-board.

Signed-off-by: Tobias Rauter <tobias.rauter@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/arm/boot/dts/imx28.dtsi
drivers/crypto/Kconfig
drivers/crypto/Makefile
drivers/crypto/dcp.c [new file with mode: 0644]