hwrng: omap3-rom - Call clk_disable_unprepare() on exit only if not idled
[ Upstream commit eaecce12f5f0d2c35d278e41e1bc4522393861ab ]
When unloading omap3-rom-rng, we'll get the following:
WARNING: CPU: 0 PID: 100 at drivers/clk/clk.c:948 clk_core_disable
This is because the clock may be already disabled by omap3_rom_rng_idle().
Let's fix the issue by checking for rng_idle on exit.
Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: Adam Ford <aford173@gmail.com>
Cc: Pali Rohár <pali.rohar@gmail.com>
Cc: Sebastian Reichel <sre@kernel.org>
Cc: Tero Kristo <t-kristo@ti.com>
Fixes: 1c6b7c2108
("hwrng: OMAP3 ROM Random Number Generator support")
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
847d5f145a
commit
c6b766dde9
1 changed files with 2 additions and 1 deletions
|
@ -119,7 +119,8 @@ static int omap3_rom_rng_probe(struct platform_device *pdev)
|
||||||
static int omap3_rom_rng_remove(struct platform_device *pdev)
|
static int omap3_rom_rng_remove(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
hwrng_unregister(&omap3_rom_rng_ops);
|
hwrng_unregister(&omap3_rom_rng_ops);
|
||||||
clk_disable_unprepare(rng_clk);
|
if (!rng_idle)
|
||||||
|
clk_disable_unprepare(rng_clk);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue