summaryrefslogtreecommitdiffstats
path: root/drivers/crypto/imx-scc/scc.h
diff options
context:
space:
mode:
authorSteffen Trumtrar <s.trumtrar@pengutronix.de>2016-02-15 11:27:11 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2019-04-12 11:58:39 +0200
commitb62a31a9069b7aa3b01ee08361b683eff4351415 (patch)
tree9e199055d4f12b6e8825254a819216b6dd119808 /drivers/crypto/imx-scc/scc.h
parent6f91b9b1994fff3a627633b8883b9ea3fc3acef1 (diff)
downloadbarebox-b62a31a9069b7aa3b01ee08361b683eff4351415.tar.gz
barebox-b62a31a9069b7aa3b01ee08361b683eff4351415.tar.xz
crypto: add new imx-scc driver
The Security Controller (SCC) is found on (at least) i.MX25 SoCs. It is not a crypto engine in the usual sense. The only supported algorithm in hardware is 3DES and the key is not configurable, but is fused in the hardware. The SCC can be handed some block of data in the red memory space and it will return the encrypted data in the black memory space and vice versa. The API for this driver are the functions - mxc_scc_cbc_des_encrypt - mxc_scc_cbc_des_decrypt Along with this driver a blobgen implementation is provided. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/crypto/imx-scc/scc.h')
-rw-r--r--drivers/crypto/imx-scc/scc.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/crypto/imx-scc/scc.h b/drivers/crypto/imx-scc/scc.h
new file mode 100644
index 0000000000..5c5c25c4a0
--- /dev/null
+++ b/drivers/crypto/imx-scc/scc.h
@@ -0,0 +1,13 @@
+/*
+ * Copyright (C) 2016 Pengutronix, Steffen Trumtrar <kernel@pengutronix.de>
+ *
+ * This program is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License version 2 as published by the
+ * Free Software Foundation.
+ */
+
+struct ablkcipher_request;
+
+int imx_scc_cbc_des_encrypt(struct ablkcipher_request *req);
+int imx_scc_cbc_des_decrypt(struct ablkcipher_request *req);
+int imx_scc_blob_gen_probe(struct device_d *dev);