crypto: qcom-rng: Make the core clock optional regardless of ACPI presence
authorKonrad Dybcio <konrad.dybcio@linaro.org>
Fri, 11 Aug 2023 20:50:57 +0000 (22:50 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 18 Aug 2023 09:01:09 +0000 (17:01 +0800)
Some newer SoCs (like SM8450) do not require a clock vote for the PRNG
to function. Make it entirely optional and rely on the bindings checker
to ensure platforms that need it, consume one.

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Reviewed-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/qcom-rng.c

index 72dd1a4..825a729 100644 (file)
@@ -173,13 +173,9 @@ static int qcom_rng_probe(struct platform_device *pdev)
        if (IS_ERR(rng->base))
                return PTR_ERR(rng->base);
 
-       /* ACPI systems have clk already on, so skip clk_get */
-       if (!has_acpi_companion(&pdev->dev)) {
-               rng->clk = devm_clk_get(&pdev->dev, "core");
-               if (IS_ERR(rng->clk))
-                       return PTR_ERR(rng->clk);
-       }
-
+       rng->clk = devm_clk_get_optional(&pdev->dev, "core");
+       if (IS_ERR(rng->clk))
+               return PTR_ERR(rng->clk);
 
        rng->skip_init = (unsigned long)device_get_match_data(&pdev->dev);