arm64/crypto: use crypto instructions to generate AES key schedule
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Mon, 3 Nov 2014 16:50:01 +0000 (16:50 +0000)
committerHuang, Tao <huangtao@rock-chips.com>
Tue, 27 Oct 2015 08:48:16 +0000 (16:48 +0800)
commit53a95fc77432af51edd0f3dff72588e2ecdeff92
treed0dfca3bb53a5e1f92f071ef297d0c3273f337a2
parentd2d46598ca08d684a09f58b61ce3ad10f6e52055
arm64/crypto: use crypto instructions to generate AES key schedule

(cherry pick from commit 12ac3efe74f888a13cb4df88b38bb01e8034dea8)

This patch implements the AES key schedule generation using ARMv8
Crypto Instructions. It replaces the table based C implementation
in aes_generic.ko, which means we can drop the dependency on that
module.

Tested-by: Steve Capper <steve.capper@linaro.org>
Acked-by: Steve Capper <steve.capper@linaro.org>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 23181629
(cherry picked from commit 60b9dd6043fdc26860d850c364fd92b1f4e170fc)
arch/arm64/crypto/Kconfig
arch/arm64/crypto/aes-ce-ccm-glue.c
arch/arm64/crypto/aes-ce-cipher.c
arch/arm64/crypto/aes-ce-setkey.h [new file with mode: 0644]
arch/arm64/crypto/aes-glue.c