crypto: picoxcell - Update to the current clk API

The picoXcell hardware crypto accelerator driver was using an
older version of the clk framework, and not (un)preparing the
clock before enabling/disabling it.  This change uses the handy
clk_prepare_enable function to interact with the current clk
framework correctly.

Signed-off-by: Michael van der Westhuizen <michael@smart-africa.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Michael van der Westhuizen 2015-06-19 15:55:51 +02:00 committed by Herbert Xu
parent 8000112ced
commit 1bd2cd6bc6
1 changed files with 4 additions and 4 deletions

View File

@ -1755,15 +1755,15 @@ static int spacc_probe(struct platform_device *pdev)
return PTR_ERR(engine->clk);
}
if (clk_enable(engine->clk)) {
dev_info(&pdev->dev, "unable to enable clk\n");
if (clk_prepare_enable(engine->clk)) {
dev_info(&pdev->dev, "unable to prepare/enable clk\n");
clk_put(engine->clk);
return -EIO;
}
err = device_create_file(&pdev->dev, &dev_attr_stat_irq_thresh);
if (err) {
clk_disable(engine->clk);
clk_disable_unprepare(engine->clk);
clk_put(engine->clk);
return err;
}
@ -1831,7 +1831,7 @@ static int spacc_remove(struct platform_device *pdev)
crypto_unregister_alg(&alg->alg);
}
clk_disable(engine->clk);
clk_disable_unprepare(engine->clk);
clk_put(engine->clk);
return 0;