aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorMartin Kaiser <martin@kaiser.cx>2023-07-10 22:27:32 +0200
committerHerbert Xu <herbert@gondor.apana.org.au>2023-07-22 13:59:37 +1200
commit71839a641066881e032b6353516b16bdafbf606a (patch)
tree1ec14cad01378ddabfc2dced077d0d7ad268932b /drivers/char
parent6257490b95252b0c22e4b518570d438cedc78a0d (diff)
downloadlinux-71839a641066881e032b6353516b16bdafbf606a.tar.gz
hwrng: ingenic - don't disable the rng in ingenic_trng_remove
There's no need to disable the rng in ingenic_trng_remove. The driver's init function sets the CFG_GEN_EN bit to enable the rng. The cleanup function clears CFG_GEN_EN to revert this. The remove function calls hwrng_unregister. If the ingenic-trng is not the current rng at this point, CFG_GEN_EN has already been cleared. If the ingenic-trng is the current rng, drop_current_rng will call the cleanup function. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/hw_random/ingenic-trng.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/char/hw_random/ingenic-trng.c b/drivers/char/hw_random/ingenic-trng.c
index cc88a941c9296..9c54721f8399c 100644
--- a/drivers/char/hw_random/ingenic-trng.c
+++ b/drivers/char/hw_random/ingenic-trng.c
@@ -111,14 +111,9 @@ static int ingenic_trng_probe(struct platform_device *pdev)
static int ingenic_trng_remove(struct platform_device *pdev)
{
struct ingenic_trng *trng = platform_get_drvdata(pdev);
- unsigned int ctrl;
hwrng_unregister(&trng->rng);
- ctrl = readl(trng->base + TRNG_REG_CFG_OFFSET);
- ctrl &= ~CFG_GEN_EN;
- writel(ctrl, trng->base + TRNG_REG_CFG_OFFSET);
-
return 0;
}