hwrng: atmel - use clk_prepapre_enable/_disable_unprepare
Use clk_prepare_enable/_disable_unprepare instead of clk_enable/disable to work properly with the CCF. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Acked-by: Peter Korsgaard <peter@korsgaard.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
1e0bdad025
commit
21961efa13
@ -67,7 +67,7 @@ static int atmel_trng_probe(struct platform_device *pdev)
|
|||||||
if (IS_ERR(trng->clk))
|
if (IS_ERR(trng->clk))
|
||||||
return PTR_ERR(trng->clk);
|
return PTR_ERR(trng->clk);
|
||||||
|
|
||||||
ret = clk_enable(trng->clk);
|
ret = clk_prepare_enable(trng->clk);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
@ -95,7 +95,7 @@ static int atmel_trng_remove(struct platform_device *pdev)
|
|||||||
hwrng_unregister(&trng->rng);
|
hwrng_unregister(&trng->rng);
|
||||||
|
|
||||||
writel(TRNG_KEY, trng->base + TRNG_CR);
|
writel(TRNG_KEY, trng->base + TRNG_CR);
|
||||||
clk_disable(trng->clk);
|
clk_disable_unprepare(trng->clk);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -105,7 +105,7 @@ static int atmel_trng_suspend(struct device *dev)
|
|||||||
{
|
{
|
||||||
struct atmel_trng *trng = dev_get_drvdata(dev);
|
struct atmel_trng *trng = dev_get_drvdata(dev);
|
||||||
|
|
||||||
clk_disable(trng->clk);
|
clk_disable_unprepare(trng->clk);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -114,7 +114,7 @@ static int atmel_trng_resume(struct device *dev)
|
|||||||
{
|
{
|
||||||
struct atmel_trng *trng = dev_get_drvdata(dev);
|
struct atmel_trng *trng = dev_get_drvdata(dev);
|
||||||
|
|
||||||
return clk_enable(trng->clk);
|
return clk_prepare_enable(trng->clk);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct dev_pm_ops atmel_trng_pm_ops = {
|
static const struct dev_pm_ops atmel_trng_pm_ops = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user