]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
hwrng: bcm2835 - Add missing clk_disable_unprepare in bcm2835_rng_init
authorGaosheng Cui <cuigaosheng1@huawei.com>
Sat, 3 Aug 2024 06:49:22 +0000 (14:49 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Oct 2024 13:11:15 +0000 (15:11 +0200)
commit d57e2f7cffd57fe2800332dec768ec1b67a4159f upstream.

Add the missing clk_disable_unprepare() before return in
bcm2835_rng_init().

Fixes: e5f9f41d5e62 ("hwrng: bcm2835 - add reset support")
Cc: <stable@vger.kernel.org>
Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/char/hw_random/bcm2835-rng.c

index e7dd457e9b22bde15bb896762ac170b95aa662f1..34027f7bcd4a852099e33e671a44ca8174d0dc31 100644 (file)
@@ -95,8 +95,10 @@ static int bcm2835_rng_init(struct hwrng *rng)
                return ret;
 
        ret = reset_control_reset(priv->reset);
-       if (ret)
+       if (ret) {
+               clk_disable_unprepare(priv->clk);
                return ret;
+       }
 
        if (priv->mask_interrupts) {
                /* mask the interrupt */