diff options
author | Martin Kaiser <martin@kaiser.cx> | 2023-07-10 23:27:32 +0300 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2023-07-22 04:59:37 +0300 |
commit | 71839a641066881e032b6353516b16bdafbf606a (patch) | |
tree | 1ec14cad01378ddabfc2dced077d0d7ad268932b /drivers/char/hw_random/ingenic-trng.c | |
parent | 6257490b95252b0c22e4b518570d438cedc78a0d (diff) | |
download | linux-71839a641066881e032b6353516b16bdafbf606a.tar.xz |
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/hw_random/ingenic-trng.c')
-rw-r--r-- | drivers/char/hw_random/ingenic-trng.c | 5 |
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 cc88a941c929..9c54721f8399 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; } |