summaryrefslogtreecommitdiffstats
path: root/drivers/crypto/omap-sham.c
diff options
context:
space:
mode:
authorTero Kristo <t-kristo@ti.com>2016-09-19 18:22:12 +0300
committerHerbert Xu <herbert@gondor.apana.org.au>2016-09-22 18:32:49 +0800
commit99a7ffffd5e85bb1e079752be51b67d5257b6a87 (patch)
tree9fdf226cda5154862432aee184e3042de3cf6d4b /drivers/crypto/omap-sham.c
parent8d46a5c872946ab5e1cc8ff54cac5b83d05b848d (diff)
downloadop-kernel-dev-99a7ffffd5e85bb1e079752be51b67d5257b6a87.zip
op-kernel-dev-99a7ffffd5e85bb1e079752be51b67d5257b6a87.tar.gz
crypto: omap-sham - add context export/import stubs
Initially these just return -ENOTSUPP to indicate that they don't really do anything yet. Some sort of implementation is required for the driver to at least probe. Signed-off-by: Tero Kristo <t-kristo@ti.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/omap-sham.c')
-rw-r--r--drivers/crypto/omap-sham.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/drivers/crypto/omap-sham.c b/drivers/crypto/omap-sham.c
index cf9f617c..74653c9 100644
--- a/drivers/crypto/omap-sham.c
+++ b/drivers/crypto/omap-sham.c
@@ -1340,6 +1340,16 @@ static void omap_sham_cra_exit(struct crypto_tfm *tfm)
}
}
+static int omap_sham_export(struct ahash_request *req, void *out)
+{
+ return -ENOTSUPP;
+}
+
+static int omap_sham_import(struct ahash_request *req, const void *in)
+{
+ return -ENOTSUPP;
+}
+
static struct ahash_alg algs_sha1_md5[] = {
{
.init = omap_sham_init,
@@ -1998,8 +2008,13 @@ static int omap_sham_probe(struct platform_device *pdev)
for (i = 0; i < dd->pdata->algs_info_size; i++) {
for (j = 0; j < dd->pdata->algs_info[i].size; j++) {
- err = crypto_register_ahash(
- &dd->pdata->algs_info[i].algs_list[j]);
+ struct ahash_alg *alg;
+
+ alg = &dd->pdata->algs_info[i].algs_list[j];
+ alg->export = omap_sham_export;
+ alg->import = omap_sham_import;
+ alg->halg.statesize = sizeof(struct omap_sham_reqctx);
+ err = crypto_register_ahash(alg);
if (err)
goto err_algs;
OpenPOWER on IntegriCloud