summaryrefslogtreecommitdiffstats
path: root/drivers/crypto/caam/jr.h
diff options
context:
space:
mode:
authorSteffen Trumtrar <s.trumtrar@pengutronix.de>2016-02-12 14:12:38 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2016-02-12 15:55:55 +0100
commit94844727a86e6445c878ebfa0ade907610248ced (patch)
tree2928f2c4afa0d4e2ed6b5311f5eab4d182316a67 /drivers/crypto/caam/jr.h
parent1bfe0f66d705e188a102661399506b20cc7571f4 (diff)
downloadbarebox-94844727a86e6445c878ebfa0ade907610248ced.tar.gz
barebox-94844727a86e6445c878ebfa0ade907610248ced.tar.xz
crypto: add i.MX6 CAAM support
Add the i.MX6 crypto core CAAM with support for the random number generator. The core itself works with jobrings in which descriptors can be queued/dequeued for processing. Depending on descriptor type the CAAM unit then either produces random numbers or decrypts/encrypts data. The code is based on the Linux v4.1 driver of the same name without all the crypto/hashing components. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/crypto/caam/jr.h')
-rw-r--r--drivers/crypto/caam/jr.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/crypto/caam/jr.h b/drivers/crypto/caam/jr.h
new file mode 100644
index 0000000000..e0e53c0f6c
--- /dev/null
+++ b/drivers/crypto/caam/jr.h
@@ -0,0 +1,18 @@
+/*
+ * CAAM public-level include definitions for the JobR backend
+ *
+ * Copyright 2008-2011 Freescale Semiconductor, Inc.
+ */
+
+#ifndef JR_H
+#define JR_H
+
+/* Prototypes for backend-level services exposed to APIs */
+struct device *caam_jr_alloc(void);
+void caam_jr_free(struct device *rdev);
+int caam_jr_enqueue(struct device_d *dev, u32 *desc,
+ void (*cbk)(struct device_d *dev, u32 *desc, u32 status,
+ void *areq),
+ void *areq);
+
+#endif /* JR_H */