All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] hwrng: iproc-rng200: Fix disable of the block.
@ 2020-12-14 16:04 ` matthias.bgg
  0 siblings, 0 replies; 14+ messages in thread
From: matthias.bgg @ 2020-12-14 16:04 UTC (permalink / raw)
  To: mpm, herbert, rjui, sbranden, f.fainelli
  Cc: linux-kernel, Julia.Lawall, bcm-kernel-feedback-list,
	linux-arm-kernel, nsaenzjulienne, linux-crypto, Matthias Brugger

From: Matthias Brugger <mbrugger@suse.com>

When trying to disable the block we bitwise or the control
register with value zero. This will leave the block always turned on.
Fix this by setting the corresponding bit to zero.

Fixes: c83d45d5685f ("hwrng: iproc-rng200 - Add Broadcom IPROC RNG driver")
Signed-off-by: Matthias Brugger <mbrugger@suse.com>
---

 drivers/char/hw_random/iproc-rng200.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/char/hw_random/iproc-rng200.c b/drivers/char/hw_random/iproc-rng200.c
index 01583faf9893..e106ce3c0146 100644
--- a/drivers/char/hw_random/iproc-rng200.c
+++ b/drivers/char/hw_random/iproc-rng200.c
@@ -28,7 +28,6 @@
 #define RNG_CTRL_OFFSET					0x00
 #define RNG_CTRL_RNG_RBGEN_MASK				0x00001FFF
 #define RNG_CTRL_RNG_RBGEN_ENABLE			0x00000001
-#define RNG_CTRL_RNG_RBGEN_DISABLE			0x00000000
 
 #define RNG_SOFT_RESET_OFFSET				0x04
 #define RNG_SOFT_RESET					0x00000001
@@ -61,7 +60,7 @@ static void iproc_rng200_restart(void __iomem *rng_base)
 	/* Disable RBG */
 	val = ioread32(rng_base + RNG_CTRL_OFFSET);
 	val &= ~RNG_CTRL_RNG_RBGEN_MASK;
-	val |= RNG_CTRL_RNG_RBGEN_DISABLE;
+	val &= ~RNG_CTRL_RNG_RBGEN_ENABLE;
 	iowrite32(val, rng_base + RNG_CTRL_OFFSET);
 
 	/* Clear all interrupt status */
@@ -174,7 +173,7 @@ static void iproc_rng200_cleanup(struct hwrng *rng)
 	/* Disable RNG hardware */
 	val = ioread32(priv->base + RNG_CTRL_OFFSET);
 	val &= ~RNG_CTRL_RNG_RBGEN_MASK;
-	val |= RNG_CTRL_RNG_RBGEN_DISABLE;
+	val &= ~RNG_CTRL_RNG_RBGEN_ENABLE;
 	iowrite32(val, priv->base + RNG_CTRL_OFFSET);
 }
 
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2020-12-18 10:53 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-14 16:04 [PATCH 1/2] hwrng: iproc-rng200: Fix disable of the block matthias.bgg
2020-12-14 16:04 ` matthias.bgg
2020-12-14 16:04 ` [PATCH 2/2] hwrng: iproc-rng200: Move enable/disable in separate function matthias.bgg
2020-12-14 16:04   ` matthias.bgg
2020-12-14 17:39   ` Florian Fainelli
2020-12-14 17:39     ` Florian Fainelli
2020-12-14 17:50   ` Scott Branden
2020-12-14 17:50     ` Scott Branden
2020-12-14 17:36 ` [PATCH 1/2] hwrng: iproc-rng200: Fix disable of the block Florian Fainelli
2020-12-14 17:36   ` Florian Fainelli
2020-12-14 17:45 ` Scott Branden
2020-12-14 17:45   ` Scott Branden
2020-12-18 10:49   ` Matthias Brugger
2020-12-18 10:49     ` Matthias Brugger

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.