summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/crypto/omap-aes.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/drivers/crypto/omap-aes.c b/drivers/crypto/omap-aes.c
index ce174d3b842c..4a0e6a545ba2 100644
--- a/drivers/crypto/omap-aes.c
+++ b/drivers/crypto/omap-aes.c
@@ -1185,17 +1185,19 @@ static int omap_aes_probe(struct platform_device *pdev)
1185 spin_unlock(&list_lock); 1185 spin_unlock(&list_lock);
1186 1186
1187 for (i = 0; i < dd->pdata->algs_info_size; i++) { 1187 for (i = 0; i < dd->pdata->algs_info_size; i++) {
1188 for (j = 0; j < dd->pdata->algs_info[i].size; j++) { 1188 if (!dd->pdata->algs_info[i].registered) {
1189 algp = &dd->pdata->algs_info[i].algs_list[j]; 1189 for (j = 0; j < dd->pdata->algs_info[i].size; j++) {
1190 algp = &dd->pdata->algs_info[i].algs_list[j];
1190 1191
1191 pr_debug("reg alg: %s\n", algp->cra_name); 1192 pr_debug("reg alg: %s\n", algp->cra_name);
1192 INIT_LIST_HEAD(&algp->cra_list); 1193 INIT_LIST_HEAD(&algp->cra_list);
1193 1194
1194 err = crypto_register_alg(algp); 1195 err = crypto_register_alg(algp);
1195 if (err) 1196 if (err)
1196 goto err_algs; 1197 goto err_algs;
1197 1198
1198 dd->pdata->algs_info[i].registered++; 1199 dd->pdata->algs_info[i].registered++;
1200 }
1199 } 1201 }
1200 } 1202 }
1201 1203