Thread (44 messages) 44 messages, 6 authors, 29d ago

Re: [PATCH v9 2/7] firmware: hwrng: arm_smccc_trng: Register as an SMCCC device

From: Jason Gunthorpe <jgg@nvidia.com>
Date: 2026-08-28 19:35:17
Also in: linux-arm-kernel, lkml

quoted hunk ↗ jump to hunk
[ ... 58 lines skipped ... ]
@@ -94,29 +96,37 @@ static int smccc_trng_read(struct hwrng *rng, void *data, size_t max, bool wait)
 	return copied;
 }
 
-static int smccc_trng_probe(struct platform_device *pdev)
+static int smccc_trng_probe(struct arm_smccc_device *sdev)
 {
 	struct hwrng *trng;
 
-	trng = devm_kzalloc(&pdev->dev, sizeof(*trng), GFP_KERNEL);
+	/* validate the minimum version requirement */
+	if (!smccc_probe_trng())
+		return -ENODEV;
It feels like slightly poor practice to do this.. It is doing three
things:

1) ARM32 disables this entirely for some reason, shouldn't the bus do
   it? Maybe it already does?

2) Checks the API exists and checks but the bus already did this.

3) Checks the version number

Maybe the bus should capture the version output and pass it in as an
argument to probe so the driver can do the min version check directly?

It is very minor anyhow, it looks OK

Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>

-- 
Jason
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help