Commit e82e4564f4183faac1324b85b9e0331fc801c45b

Authored by Eric Lee
1 parent f75341a03c

Add 0002-am335x-Add-suspend-resume-routines-to-crypto-driver.patch that wasn't p…

…art of the official PSP 04.06.00.11 release

Showing 2 changed files with 55 additions and 8 deletions Side-by-side Diff

drivers/crypto/omap4-aes.c
... ... @@ -878,9 +878,9 @@
878 878 udelay(1);
879 879  
880 880  
881   -err_res:
882   - kfree(dd);
883   - dd = NULL;
  881 +//err_res:
  882 + //kfree(dd);
  883 + //dd = NULL;
884 884 err_data:
885 885 dev_err(dev, "initialization failed.\n");
886 886 return err;
887 887  
... ... @@ -916,12 +916,35 @@
916 916 return 0;
917 917 }
918 918  
  919 +static int omap4_aes_suspend(struct device *dev)
  920 +{
  921 + pr_debug("#### Crypto: Suspend call ####\n");
  922 +
  923 + return 0;
  924 +}
  925 +
  926 +
  927 +static int omap4_aes_resume(struct device *dev)
  928 +{
  929 + pr_debug("#### Crypto: resume call ####\n");
  930 +
  931 + return 0;
  932 +}
  933 +
  934 +static struct dev_pm_ops omap4_aes_dev_pm_ops = {
  935 + .suspend = omap4_aes_suspend,
  936 + .resume = omap4_aes_resume,
  937 + .runtime_suspend = omap4_aes_suspend,
  938 + .runtime_resume = omap4_aes_resume,
  939 +};
  940 +
919 941 static struct platform_driver omap4_aes_driver = {
920 942 .probe = omap4_aes_probe,
921 943 .remove = omap4_aes_remove,
922 944 .driver = {
923 945 .name = "omap4-aes",
924 946 .owner = THIS_MODULE,
  947 + .pm = &omap4_aes_dev_pm_ops
925 948 },
926 949 };
927 950  
... ... @@ -943,6 +966,8 @@
943 966  
944 967 platform_driver_unregister(&omap4_aes_driver);
945 968 }
  969 +
  970 +
946 971  
947 972 module_init(omap4_aes_mod_init);
948 973 module_exit(omap4_aes_mod_exit);
drivers/crypto/omap4-sham.c
... ... @@ -239,7 +239,7 @@
239 239 struct omap4_sham_reqctx *ctx = ahash_request_ctx(req);
240 240 u32 *in = (u32 *)ctx->digest;
241 241 u32 *hash = (u32 *)req->result;
242   - int i, d;
  242 + int i, d = 0;
243 243  
244 244 if (!hash)
245 245 return;
... ... @@ -1224,8 +1224,6 @@
1224 1224  
1225 1225 static int omap4_sham_dma_init(struct omap4_sham_dev *dd)
1226 1226 {
1227   - int err;
1228   -
1229 1227 dd->dma_lch = -1;
1230 1228  
1231 1229 dd->dma_lch = edma_alloc_channel(dd->dma, omap4_sham_dma_callback, dd, EVENTQ_2);
... ... @@ -1349,8 +1347,9 @@
1349 1347 pm_runtime_disable(dev);
1350 1348 udelay(1);
1351 1349  
1352   -clk_err:
1353   - omap4_sham_dma_cleanup(dd);
  1350 +//clk_err:
  1351 +// omap4_sham_dma_cleanup(dd);
  1352 +
1354 1353 dma_err:
1355 1354 if (dd->irq >= 0)
1356 1355 free_irq(dd->irq, dd);
1357 1356  
... ... @@ -1392,12 +1391,35 @@
1392 1391 return 0;
1393 1392 }
1394 1393  
  1394 +static int omap4_sham_suspend(struct device *dev)
  1395 +{
  1396 + pr_debug("#### Crypto: Suspend call ####\n");
  1397 +
  1398 + return 0;
  1399 +}
  1400 +
  1401 +
  1402 +static int omap4_sham_resume(struct device *dev)
  1403 +{
  1404 + pr_debug("#### Crypto: resume call ####\n");
  1405 +
  1406 + return 0;
  1407 +}
  1408 +
  1409 +static struct dev_pm_ops omap4_sham_dev_pm_ops = {
  1410 + .suspend = omap4_sham_suspend,
  1411 + .resume = omap4_sham_resume,
  1412 + .runtime_suspend = omap4_sham_suspend,
  1413 + .runtime_resume = omap4_sham_resume,
  1414 +};
  1415 +
1395 1416 static struct platform_driver omap4_sham_driver = {
1396 1417 .probe = omap4_sham_probe,
1397 1418 .remove = omap4_sham_remove,
1398 1419 .driver = {
1399 1420 .name = "omap4-sham",
1400 1421 .owner = THIS_MODULE,
  1422 + .pm = &omap4_sham_dev_pm_ops
1401 1423 },
1402 1424 };
1403 1425