crypto: inside-secure - fix clock management
authorGregory CLEMENT <gregory.clement@bootlin.com>
Tue, 13 Mar 2018 16:48:40 +0000 (17:48 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 8 Apr 2018 12:26:31 +0000 (14:26 +0200)
commit f962eb46e7a9b98a58d2483f5eb216e738fec732 upstream.

In this driver the clock is got but never put when the driver is removed
or if there is an error in the probe.

Using the managed version of clk_get() allows to let the kernel take care
of it.

Fixes: 1b44c5a60c13 ("crypto: inside-secure - add SafeXcel EIP197 crypto
engine driver")
cc: stable@vger.kernel.org
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/crypto/inside-secure/safexcel.c

index 4bcef78a08aad241675e50d959aff2a6c58e126b..d4c81cb73bee6ccfdbea9a67af7237cea86649d2 100644 (file)
@@ -789,7 +789,7 @@ static int safexcel_probe(struct platform_device *pdev)
                return PTR_ERR(priv->base);
        }
 
-       priv->clk = of_clk_get(dev->of_node, 0);
+       priv->clk = devm_clk_get(&pdev->dev, NULL);
        if (!IS_ERR(priv->clk)) {
                ret = clk_prepare_enable(priv->clk);
                if (ret) {