[PATCH] crypto: hifn_795x - replace simple_strtoul with kstrtouint

Thorsten Blum posted 1 patch 4 months, 2 weeks ago
drivers/crypto/hifn_795x.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
[PATCH] crypto: hifn_795x - replace simple_strtoul with kstrtouint
Posted by Thorsten Blum 4 months, 2 weeks ago
Replace simple_strtoul() with the recommended kstrtouint() for parsing
the 'hifn_pll_ref=' module parameter. Unlike simple_strtoul(), which
returns an unsigned long, kstrtouint() converts the string directly to
an unsigned integer and avoids implicit casting.

Check the return value of kstrtouint() and fall back to 66 MHz if
parsing fails. This adds error handling while preserving existing
behavior for valid values, and removes use of the deprecated
simple_strtoul() helper.

Add a space in the log message to correctly format "66 MHz" while we're
at it.

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
---
 drivers/crypto/hifn_795x.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/crypto/hifn_795x.c b/drivers/crypto/hifn_795x.c
index 925991526745..edf36f6add52 100644
--- a/drivers/crypto/hifn_795x.c
+++ b/drivers/crypto/hifn_795x.c
@@ -913,11 +913,10 @@ static void hifn_init_pll(struct hifn_device *dev)
 	else
 		pllcfg |= HIFN_PLL_REF_CLK_HBI;
 
-	if (hifn_pll_ref[3] != '\0')
-		freq = simple_strtoul(hifn_pll_ref + 3, NULL, 10);
-	else {
+	if (hifn_pll_ref[3] == '\0' ||
+	    kstrtouint(hifn_pll_ref + 3, 10, &freq)) {
 		freq = 66;
-		dev_info(&dev->pdev->dev, "assuming %uMHz clock speed, override with hifn_pll_ref=%.3s<frequency>\n",
+		dev_info(&dev->pdev->dev, "assuming %u MHz clock speed, override with hifn_pll_ref=%.3s<frequency>\n",
 			 freq, hifn_pll_ref);
 	}
 
-- 
2.51.0
Re: [PATCH] crypto: hifn_795x - replace simple_strtoul with kstrtouint
Posted by Herbert Xu 3 months, 3 weeks ago
On Tue, Sep 23, 2025 at 03:03:04AM +0200, Thorsten Blum wrote:
> Replace simple_strtoul() with the recommended kstrtouint() for parsing
> the 'hifn_pll_ref=' module parameter. Unlike simple_strtoul(), which
> returns an unsigned long, kstrtouint() converts the string directly to
> an unsigned integer and avoids implicit casting.
> 
> Check the return value of kstrtouint() and fall back to 66 MHz if
> parsing fails. This adds error handling while preserving existing
> behavior for valid values, and removes use of the deprecated
> simple_strtoul() helper.
> 
> Add a space in the log message to correctly format "66 MHz" while we're
> at it.
> 
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> ---
>  drivers/crypto/hifn_795x.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)

Patch applied.  Thanks.
-- 
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt