arm64: zynqmp: Add support for encryption and decryption on data blob
authorSiva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Thu, 6 Sep 2018 11:04:44 +0000 (16:34 +0530)
committerMichal Simek <michal.simek@xilinx.com>
Tue, 27 Oct 2020 07:13:31 +0000 (08:13 +0100)
commit8e4e91465273acaa435b7e154c78ddff47cbd9ff
tree4e889811c43de93766de84b9c48afb1468b6e58e
parent248fabc3ceefd1875cb8608e7372220ec4ac9d10
arm64: zynqmp: Add support for encryption and decryption on data blob

This patch adds support for encryption and decryption on a given data
blob using different key sources such as userkey(KUP), device key and
PUF key. Inorder to support this a new zynqmp command(zynqmp aes) has
been introduced.

Command:
zynqmp aes srcaddr ivaddr len aesop keysrc dstaddr [keyaddr]\n"
Encrypts or decrypts blob of data at src address and puts it\n"
back to dstaddr using key and iv at keyaddr and ivaddr\n"
respectively. keysrc values specifies from which source key\n"
has to be used, it can be User/Device/PUF key. A value of 0\n"
for KUP(user key),1 for DeviceKey and 2 for PUF key. The\n"
aesop value would specify the operationwhich can be 0 for\n"
decrypt and 1 for encrypt(1) operation\n";

Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/arm/mach-zynqmp/include/mach/sys_proto.h
board/xilinx/zynqmp/cmds.c